图5 DS18B20的工作流程图
DS18B20在独立供电的方式下,由单独的电源进行供电,此时1-wire总线上使用普通的电阻做上拉电阻即可,需要注意的是此时DS18B20的GND引脚必须接电源地。本系统中DS18B20的供电方式采用独立供电方式,而系统的温度检测电路由温度传感器和单片机组成。温度传感器DS18B20对水温信号进行采集后,将采集的数字信号输入到AT89S51单片机中。温度检测电路如图6所示:
图6 温度检测电路
3.3 液晶显示电路
LCD1602是用来显示数字、字母、符号等的点阵型液晶显示模块。它由若干个5×7或者5×11的点阵字符位组成,每个点阵字符位可以显示一个字符,每位之间有一个点距的间隔,每行之间也有间隔,起到了字符间距和行间距的作用,因此它不能很好地显示图形。LCD1602是指显示的内容为16×2,可以同时显示两行字符,每行16个字符液晶模块,其工作电压为3.3V或5V,对比度可调。LCD1602的内部含有复位电路并提供各种控制命令,如:字符闪烁、光标闪烁、显示移位等功能[11]。它有80个字节显示数据存储器DDRAM,内建有192个5×7点阵字型的字符发生器CGROM以及8个可由用户自定义的5×7字符发生器CGRAM。
在本设计中,AT89S51单片机真正用作数字I/O口使用的就剩P1口和P3口了。AT89S51单片机受引脚数目的限制,P0口既用作低8位地址总线,又用做数据总线,因此需要增加一个8位的地址寄存器。单片机对外部I/O接口寄存器进行访问时,先将8位地址锁存,作为系统的低8位地址,再将数据送往P0口。P2口的8位口线作为系统的高8位地址线,再加上锁存器的低8为地址线构成16位地址线,是系统的寻址范围达到64KB。P3口的第二功能信号RD和WR信号作为外扩数据存储器和I/O口的读/写选通控制信号。EA信号作为片内、片外程序存储器的选择控制信号。采用LCD1602作为显示电路模块,它能够方便地与单片机接口进行连接,其主要功能就是显示当前检测的温度值以及所要预先设定的温度值。电路中LCD的2引脚要接5V的电源,对LCD的工作提供电源。由于使用AT89S51单片机的P0口与液晶显示1602的D0~D7进行连接,因此在使用时要接上拉电阻后才能工作[12]。LCD液晶显示电路如图7所示:
图7 液晶显示电路
3.4 报警电路
本设计中报警电路比较简单,只是一个有源蜂鸣器。有源蜂鸣器内部有震荡电源,通电即鸣叫,不采用方波驱动,而且程序控制方便。当前温度高于或低于设定温度时,单片机在I/O口上输出一个低电平,蜂鸣器工作,发生报警。本系统中采用一个三极管驱动一个蜂鸣器构成报警电路,报警电路如图8所示
上一页 [1] [2] [3] [4] [5] [6] 下一页