它的功能是: 1
读出当前温度值
可通过按键调整报警温度上下限
按第一个键,进入温度上线调节模式,第二个键温度加,第三个键温度减,再按一下第一个键,进入温度下线调节模式,第二个键温度加,第三个键温度键,再按一下第一个键,正常显示当前温度
当进入报警温度上下限调节时,红灯亮,当显示当前温度是,绿灯亮
当当前温度超过上限温度时,或者低于下限温度时,蜂鸣器报警且黄灯闪烁
需要说明的是, 一般情况下,DQ 引脚应该有一个上拉电阻来拉高电平,但是我通过观察发现,初始状态下,89C52 单片机的引脚都为高电平,故我将上拉电阻去除,1820 与单片机正常通信,加上上拉电阻,反而不能正常通信
#inclu de #inclu de #define u char u nsigned char #define u int u nsigned int sbit DQ=P3^0; sbit Speak=P1^7; sbit Ou t=P3^2; sbit Bu tton1=P1^4; sbit Button2=P1^5; sbit Button3=P1^6; sbit Ledblue=P1^0; sbit Ledred=P1^1; bit Point; uint T; int Up=980,Down=300,Tplace=0; code uchar Ledcode[]={0x3f,0x06,0x5b,0x4f, 0x66,0x6d,0x7d,0x07, 0x7f,0x6f,0x8f}; /*数码管显示的数字0123456789℃*/ code uchar Ledcode_s[]={0xbf,0x86,0xdb,0xcf, /*带小数点数码管显示0123456789-*/ 0xe6,0xed,0xfd,0x87, 0xff,0xef,0x40}; code uchar Ledp