DS18B20温度传感器与12864液晶显示智能小车C程序

需积分: 9 5 下载量 174 浏览量 更新于2024-09-22 收藏 14KB TXT 举报
该资源提供了一个使用C语言编写的智能小车程序,程序集成了DS18B20温度传感器和12864液晶显示屏的功能。DS18B20是一款数字温度传感器,能够精确测量温度并以数字信号输出。12864则是常见的128x64点阵液晶显示屏,用于显示温度读数。 在这个程序中,可以看到以下几个关键知识点: 1. **DS18B20温度传感器**:DS18B20是一种单线数字温度传感器,可以提供高精度的温度测量数据。它通过单总线(One-Wire)接口与微控制器通信,允许在一条线上连接多个传感器,简化了硬件设计。在代码中,`read_temp()`函数用于读取DS18B20的温度数据,并将其存储在`temperature[2]`数组中。 2. **12864 LCD显示屏**:12864是指128列64行的液晶显示屏,常用于嵌入式系统中显示信息。在程序中,`LCD_INIT()`函数初始化液晶屏,`display()`函数则将读取到的温度值转换为ASCII字符并显示在屏幕上。`temp_data`变量用来处理温度数据,而`temp_data_2`可能用于辅助转换过程。 3. **C语言编程**:这个程序使用C语言编写,C语言是一种底层、高效的编程语言,适合编写嵌入式系统软件。代码中使用了`#include`预处理器指令来引入必要的头文件,如`reg52.h`可能是针对52系列单片机的寄存器定义,而`temp.h`可能包含了DS18B20相关的函数声明。 4. **延时函数**:`delay100us()`函数实现了微秒级别的延时,通常在嵌入式系统中用于控制执行速度和同步硬件操作。这里的延时函数使用了一个简单的循环计数来实现。 5. **数据处理**:在`display()`函数中,温度数据被处理并转化为7位ASCII字符,以便在12864液晶屏上显示。`temp[7]`数组用于存储转换后的ASCII字符。 6. **主循环**:`main()`函数是程序的入口点,包含了一个无限循环,不断读取温度并显示,确保实时更新温度信息。 整体来看,这个程序展示了如何在智能小车上集成温度监测功能并实时显示在液晶屏上,是学习嵌入式系统开发、C语言编程以及硬件接口通信的一个典型实例。