AT89X51控制的液晶冰箱温控器源码设计

需积分: 31 1 下载量 34 浏览量 更新于2024-09-13 收藏 67KB DOC 举报
本文档提供了一个针对液晶显示电冰箱温控器的源程序代码,适合用作毕业设计项目的参考材料。该程序是基于AT89X51单片机平台开发,主要涉及了LCD(液晶显示器)的控制以及冰箱温度监测与调节功能。 首先,程序包含了必要的头文件,如`<AT89X51.H>`用于设备配置,`<intrins.h>`可能包含了一些内建函数的声明。接着定义了一些引脚别名,如`LCM_RS`、`LCM_RW`、`LCM_EN`分别对应LCD的数据、读写和使能信号,`OUT`控制继电器,`TSOR`为温度传感器输入。常量`Busy0x80`用于判断LCD忙状态,`uchar`、`uint`为无符号字符型和整型数据类型定义。 看门狗定时器的处理在`reset()`宏定义中实现,`WDT`寄存器被设置为看门狗模式,用于防止程序陷入无限循环。程序中还定义了一些变量,如`temp1`和`temp2`用于存储温度数据,`cnt`用于计数器,`min`、`hour`、`T`表示小时、分钟和当前显示的温度字符数组。 源代码中定义了多个子函数,例如: 1. `ucharReadStatusLCM()`:用于从LCD读取数据。 2. `voidfun0()`, `voidfun1()`, `voidfun2()`, `voidfun3()`:可能是不同功能模块的入口函数,如设置调整、按键处理、温度获取等。 3. `set_adj()`: 调整温度设定。 4. `inc_key()`, `dec_key()`: 上下键操作,可能用于改变设定值。 5. `key()`: 处理按键输入。 6. `gettempTS()`: 获取温度传感器读数。 7. `initTS()`: 初始化温度传感器。 8. `ucharreadBTS()`, `voidwriteBTS(uchar byte)`: 用于与温度传感器通信的辅助函数。 9. `resetTS()`, `readTS()`, `write1TS()`, `write0TS()`: 温度传感器相关的读写操作。 10. `voiddelay15us(void)`: 一个延时函数,用于控制程序执行速率。 通过这个源程序,你可以了解到如何利用AT89X51单片机配合液晶显示进行家电设备的温度监控和控制,包括读取LCD显示、处理用户输入、温度传感器交互等功能。这不仅有助于理解底层硬件接口,还能提升对嵌入式系统编程的理解。在实际应用中,需根据冰箱的具体硬件布局和需求进行适当修改和扩展。