51单片机DB18b20温度传感器数据采集与液晶屏显示

需积分: 10 5 下载量 71 浏览量 更新于2024-09-13 收藏 8KB TXT 举报
本资源是一份基于单片机8051(如AT89C51)的程序设计,主要目的是利用温度传感器DB18b20采集环境温度,并通过液晶屏显示。DB18b20是一种模拟数字转换器(ADC),它能将连续的温度信号转换成数字信号,便于单片机处理。 程序开始时引入了必要的头文件,包括<reg52.h>和<intrins.h>,它们包含了51系列单片机的寄存器定义以及一些内建函数。变量定义部分,如uchar、uint用于数据类型声明,数组codetable1存储了要显示在液晶屏上的字符串,如“2011.11.2.20:16Happybirthday!!”。 接下来的函数定义了液晶控制相关的操作,如write_com()用于设置命令,通过控制RS、P0引脚与E引脚的电平来发送命令给液晶模块;write_data()负责发送数据,将温度转换后的数值写入液晶单元;init()函数则是初始化过程,设置液晶模块的起始地址、显示模式和清空屏幕等。 write_sfm()函数用于向特定位置写入字符串和数字的组合,这对于动态显示温度值非常有用。delay1()函数则是一个简单的延时函数,用于在液晶通信过程中适当延长时间以确保稳定传输。 在程序主体部分,首先设置液晶的初始状态,然后读取温度传感器的数据并将其转化为相应的字符代码,通过调用write_data()和write_sfm()逐个写入液晶的指定位置。这部分体现了单片机与外部设备(如温度传感器和液晶屏)的交互过程。 最后,这段代码展示了如何使用单片机的I/O口控制外设,以及如何将温度数据转换为用户可读的形式。对于学习单片机基础应用和嵌入式系统开发的学生或工程师来说,这是一个实用且具有教育价值的示例。
2011-04-18 上传
18b20程序18b20程序18b20程序18b20程序18b20程序18b20程序18b20程序18b20程序18b20程序18b20程序18b20程序18b20程序18b20程序18b20程序18b20程序18b20程序18b20程序18b20程序18b20程序18b20程序18b20程序18b20程序18b20程序18b20程序18b20程序18b20程序18b20程序18b20程序18b20程序18b20程序18b20程序18b20程序18b20程序18b20程序18b20程序18b20程序18b20程序18b20程序18b20程序18b20程序18b20程序18b20程序18b20程序18b20程序18b20程序18b20程序18b20程序18b20程序18b20程序18b20程序18b20程序18b20程序18b20程序18b20程序18b20程序18b20程序18b20程序18b20程序18b20程序18b20程序18b20程序18b20程序18b20程序18b20程序18b20程序18b20程序18b20程序18b20程序18b20程序18b20程序18b20程序18b20程序18b20程序18b20程序18b20程序18b20程序18b20程序18b20程序18b20程序18b20程序18b20程序18b20程序18b20程序18b20程序18b20程序18b20程序18b20程序18b20程序18b20程序18b20程序18b20程序18b20程序18b20程序18b20程序18b20程序18b20程序18b20程序18b20程序18b20程序18b20程序18b20程序18b20程序18b20程序18b20程序18b20程序18b20程序18b20程序18b20程序18b20程序18b20程序18b20程序18b20程序18b20程序18b20程序18b20程序18b20程序18b20程序18b20程序18b20程序18b20程序18b20程序18b20程序18b20程序18b20程序18b20程序18b20程序18b20程序18b20程序18b20程序18b20程序18b20程序18b20程序18b20程序18b20程序18b20程序18b20程序18b20程序18b20程序18b20程序18b20程序18b20程序18b20程序18b20程序18b20程序18b20程序18b20程序18b20程序18b20程序18b20程序18b20程序18b20程序18b20程序18b20程序18b20程序18b20程序18b20程序18b20程序18b20程序18b20程序18b20程序18b20程序18b20程序18b20程序18b20程序18b20程序18b20程序18b20程序18b20程序18b20程序18b20程序18b20程序18b20程序18b20程序18b20程序18b20程序18b20程序18b20程序18b20程序18b20程序18b20程序18b20程序18b20程序