功能說明:
運用所學單片機知識,完成溫度信號的測量。要求如下:單片機系統(tǒng)選擇使用AT89C51,通過熱敏電阻PT100檢測溫度并使用AD轉(zhuǎn)換獲取溫度值(不允許使用DS18B20等傳感器),在數(shù)碼管上顯示溫度值。
仿真電路
程序
PT100驅(qū)動
void PT100()
{
double deal,U;//
U=5.0/255.0*getdata;
deal=U*20*10;
temp=(long int)deal;
if(U<5.2&&U>0)
{
dispbuf[0]=temp%10;
dispbuf[1]=temp/10%10;
dispbuf[2]=temp/100%10;
dispbuf[3]=temp/1000;
}
else
{
dispbuf[0]=0;
dispbuf[1]=0;
dispbuf[2]=0;
dispbuf[3]=0;
}
display();
}
main函數(shù)
/****************************************************************************************/
main()
{
TMOD = 0x10; //定時器0,工作在定時器方式
TH1 = (65536-200)/256; //0x3c
TL1 = (65536-200)%256; //0xb0
EA = 1; //開總中斷
ET1 = 1; //打開(允許)定時器1中斷
TR1 =1; //開始(啟動)定時
while(1)
{
STAR=0;
OE=0;
STAR=1;
STAR=0;
while(EOC==0)
{
OE=1;
delay_ms(10);
getdata=P1;
OE=0;
PT100();
}
}
}
本設(shè)計下載鏈接
閱讀全文