本设计是采集PT100传感器温度,经过LM324比较放大,然后再通过ADC0804读出数据,
经过测试,精确度高。
//实际测量当0度时,AD数据为133,所以数据处理时判断AD数据和133的大小来识别正负温度。
//由于ADC芯片精度不够,所以测量时有误差,8位AD的分辨率为19.5mV,约为20mV,
//放大电路输出的电压,温度每变化一度,电压变化只有10mV左右,所以测量有误差,
//启动AD转换子程序//
void start_ad(void)
{ cs=0; //允许AD
wr=0;
_nop_();
wr=1; //WR由低变高时启动AD转换
while(intr); //等待转换完成,低电平有效
cs=1; //停止AD转换
}
read_ad()
{ uint ad_data;
ad0_7=0xff;
cs=0; //允许读
rd=0; //读取转换数据结果
_nop_();
ad_data=ad0_7; //把数据存到AD——data中
rd=1;cs=1; //停止读取AD
return(ad_data);
}
// 数据处理函数
//实际测量当0度时,AD数据为133,所以数据处理时判断AD数据和133的大小来识别正负温度。
//由于ADC芯片精度不够,所以测量时有误差,8位AD的分辨率为19.5mV,约为20mV,
//放大电路输出的电压,温度每变化一度,电压变化只有10mV左右,所以测量有误差,