DS18B20多点测温程序与1602显示
需积分: 12 185 浏览量
更新于2024-09-10
收藏 66KB DOC 举报
"这篇资源是关于使用51系列单片机和DS18B20传感器进行多点温度测量的程序实现,通过1602 LCD显示器显示温度数据。"
在DS18B20多点测温系统中,DS18B20是一款常用的数字温度传感器,它能够直接输出数字信号,简化了温度测量的过程。该传感器具有独特的单线通信协议,允许在一个总线上挂载多个设备,非常适合多点温度监测。51系列单片机是一种广泛应用的微控制器,其I/O端口可以用来与DS18B20通信。
程序一的目标是读取DS18B20的序列号,序列号是传感器的唯一标识,用于区分不同的设备。在这个程序中,序列号被读取并存储在`fCode`数组中,然后通过1602 LCD显示器从左到右按位显示,从低位到高位。
程序二则更进一步,实现了匹配序列号并读取两个DS18B20的温度值。匹配序列号是为了确保单片机正确地与指定的传感器通信,读取温度值后存储在`tvalue`变量中。`tflag`变量用于标识温度是正还是负。温度数据转换成适合显示的格式后存储在`datadisdata`数组中,同样通过1602 LCD显示器进行显示。
LCD1602是常见的字符型液晶显示器,用于提供图形和文本输出。程序中包含了LCD1602的基本操作函数,如`wr_com`用于写指令,`wr_dat`用于写数据,以及`lcd_init`用于初始化显示器。这些函数实现了对LCD1602的控制,包括设置显示位置、清屏和发送数据。
`delay1ms`函数是简单的延时函数,用于满足LCD1602和DS18B20通信中的时序要求。值得注意的是,这里的延时函数并不精确,实际应用中可能需要更精确的延时方法。
这份资源提供了基于51系列单片机的DS18B20多点测温系统的核心代码,涵盖了传感器通信、序列号读取、温度值处理和LCD显示等多个关键环节,对于想要开发类似系统的学习者或工程师来说,是一个很好的参考。
2022-09-19 上传
2021-09-30 上传
2022-07-14 上传
2022-09-22 上传
2022-09-20 上传
2021-10-04 上传
2022-07-14 上传
2011-08-10 上传
2021-09-29 上传
helu199212
- 粉丝: 0
- 资源: 1
最新资源
- Fisher Iris Setosa数据的主成分分析及可视化- Matlab实现
- 深入理解JavaScript类与面向对象编程
- Argspect-0.0.1版本Python包发布与使用说明
- OpenNetAdmin v09.07.15 PHP项目源码下载
- 掌握Node.js: 构建高性能Web服务器与应用程序
- Matlab矢量绘图工具:polarG函数使用详解
- 实现Vue.js中PDF文件的签名显示功能
- 开源项目PSPSolver:资源约束调度问题求解器库
- 探索vwru系统:大众的虚拟现实招聘平台
- 深入理解cJSON:案例与源文件解析
- 多边形扩展算法在MATLAB中的应用与实现
- 用React类组件创建迷你待办事项列表指南
- Python库setuptools-58.5.3助力高效开发
- fmfiles工具:在MATLAB中查找丢失文件并列出错误
- 老枪二级域名系统PHP源码简易版发布
- 探索DOSGUI开源库:C/C++图形界面开发新篇章