温度监测:使用pt100测温度,经过放大器放大后的电压值乘以236就是实际的温度值0.42V对应100度,
0V对应0度,经过ad运算显示出来,其他滤掉,就只显示0-100度,0-100对应输出0-5v的电
压使用DA,功能,ad和da使用同个芯片,就是实现0-100显示,温度变化的同时da输出0-5v。
#include <reg52.h>
#include <intrins.h>
#define uint unsigned int
#define uchar unsigned char
#define NOP() _nop_()
#define Delay5us() { _nop_(); _nop_(); _nop_(); _nop_(); _nop_(); }
#define LCD_LINE_ONE 1
#define LCD_LINE_TWO 2
sbit LCD_RS = P2 ^ 0;
sbit LCD_RW = P2 ^ 1;
sbit LCD_EN = P2 ^ 2;
sbit SCL = P1 ^ 1;
sbit SDA = P1 ^ 2;
sbit BEEP = P1 ^ 0;
uchar temp = 40;
uchar pres = 40;
uint Voltage[] = { '0', '0', '0' }; /* AD的LCD显示值 */
unsigned char LCD_Line_1[] = { "TEMP: " }; /* TEMP-是温度值 */
unsigned char LCD_Line_2[] = { "PRES: " }; /* PRES-是压力值 */
extern void Convert_To_Voltage( uint val ); /* 函数声明 */
uchar IIC_ERROR; /* IIC错误标志 */
void Delay( uint ms ) /* 延时函数 */
{
uchar i;
while ( ms-- )
{
for ( i = 0; i < 120; i++ )
;
}
}