AT89X51控制的液晶冰箱温控器源代码详解
需积分: 31 134 浏览量
更新于2025-01-07
1
收藏 67KB DOC 举报
本文档详细介绍了液晶显示电冰箱温控器的源程序,适用于基于AT89X51单片机的电冰箱控制系统。程序包含了硬件引脚定义,如液晶显示屏的RS、RW、EN接口以及控制继电器和温度传感器的接线,以及相关的数据类型和宏定义。
1. **硬件配置与引脚定义**:
- LCM_RS、LCM_RW和LCM_EN分别定义了液晶显示器的行选、列选和使能控制引脚。
- OUT引脚用于控制继电器,实现电冰箱内部的温度调节。
- TSOR引脚连接到温度传感器,用于实时检测冰箱内的温度变化。
2. **数据类型和常量定义**:
- 定义了uchar(无符号字符型)、uint(无符号整型)以及DATAPORT P1(数据端口P1的别名)。
- 使用Busy0x80定义了一个忙标志位,可能在数据通信或处理过程中使用。
- reset()宏定义了一个看门狗定时器的复位和启动操作,确保系统的稳定性。
3. **变量声明**:
- temp1和temp2为温度计数值变量,cnt表示计数器,用于计时。
- min、hour用于保存时间信息,T为字符数组,用于存储温度值。
- uchardatabuff数组用于临时存储从液晶屏读取的数据。
- 函数参数如ucharcodestr0、ucharcodestr1和ucharcodestr2是字符串常量,用于显示不同的提示信息。
4. **功能函数声明**:
- 函数如fun0、fun1、fun2和fun3可能涉及到按键处理、温度设置调整、按键增减操作以及温度传感器读取等核心功能。
- set_adj()和key()函数可能分别处理温度设置调整和按键输入。
- gettempTS()和initTS()负责获取和初始化温度传感器数据。
- readBTS()和writeBTS()用于液晶显示屏的读写操作,涉及字符数据的传输。
- resetTS(), readTS(), write1TS(), write0TS()与温度传感器相关的操作,可能是读取或设置温度值。
5. **时间处理**:
- charmin和hour变量用于存储分钟和小时信息,可能与定时器配合实现自动调节或计时功能。
6. **延迟函数**:
- delay15us()是一个延迟15微秒的函数,用于在程序中插入适当的时间间隔,以保证操作的稳定性和准确性。
整个源程序的核心内容围绕着电冰箱温控器的硬件接口操作、数据处理和用户交互,通过这些函数实现了温度监测、设置和显示,旨在提供一个清晰、易于理解和实现的代码基础。
118 浏览量
2021-08-03 上传
2024-05-07 上传
2022-07-08 上传
122 浏览量
点击了解资源详情
点击了解资源详情
cuipinpin
- 粉丝: 0
- 资源: 7
最新资源
- 白皮书PB11.NET_WP_060407C.pdf
- SCSJ001-JBS.pdf
- Agile.Web.Development.with.Rails.3nd.Edition.Beta.pdf
- c#完全手册之控件讲解
- Vc6.0++MFC编程实例1讲解详细(宝贵资源)
- C++网络编程--基于ACE 和框架的系统化复用
- Dynamic C 中文手册
- c#程序设计模式知道
- Erlang-C程序接口.pdf
- Erlang Programming 导读
- 通信相关_3g核心网规划原则
- 侯捷.C++.Templates.The.Complete.Guide
- 计算机操作系统(汤子赢版)答案
- spring security 2 配置说明
- 基于MyEclipse6.0的SSH整合.pdf
- J2ME JSR179_LocationAPI GPS定位系统开发文档中文版