ZKX's LAB

蜂鸣器温度报警程序 关于C51单片机温度报警程序的问题 谁能帮我在每段程序后加汉字解释 及怎么实现温度显示及蜂鸣器报警的?

2020-07-24知识10

温度计ds18b20蜂鸣器报警程序求助 #includedefine uchar unsigned charsbit keyup=P1^0;sbit keydn=P1^1;sbit keymd=P1^2;sbit led=P3^7;sbit DQ=P3^4;接温度传感器18B20uchar t[2],number=0,*pt;温度值uchar TempBuffer1[4]={0,0,0,0};uchar Tmax=18,Tmin=8;uchar distab[]={0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,0x80,0x90,0x88,0x83,0xc6,0xa1,0x86,0x8e,0xff,0xfe,0xf7};uchar dismod=0;bit flag;void t0isr()interrupt 1{TH0=(65536-5000)/256;TL0=(65536-5000)%256;switch(number){case 0:P2=0x08;P0=distab[TempBuffer1[0]];break;case 1:P2=0x04;P0=distab[TempBuffer1[1]];break;case 2:P2=0x02;P0=distab[TempBuffer1[2]]0x7f;break;case 3:P2=0x01;P0=distab[TempBuffer1[3]];break;default:break;}number+;if(number>;3)number=0;}void delay_18B20(unsigned int i){while(i-);}ds18b20初始化函数*/void Init_DS18B20(void){bit x=0;do{DQ=1;delay_18B20(8);DQ=0;单片机将DQ拉低delay_18B20(90);精确延时 大于 480usDQ=1;拉高总线delay_18B20(14);x=DQ;稍做延时后 如果x=0则初始化成功 x=1则初始化失败,继续初始化}while(x);delay_18B20(20);}ds18b20读一个。我有两个程序,一个数码管显示温度的,一个蜂鸣器的,求变刺耳成一个总程序 要求当温度达到预设值时候,蜂鸣器发声,有报酬,求帮助用18b20测温度,当温度过高或过低时用蜂鸣器报警的程序怎么写啊?? 设置温度上下限,这样单片机采集温度后,如果温度超出设置的数值就可以报警,还不清楚的你也可以来找找我帮忙的.

#数码管#ds18b20#unsigned#蜂鸣器

随机阅读

qrcode
访问手机版