STC单片机DS18B20温度读取与共阳LED显示程序
需积分: 10 74 浏览量
更新于2024-10-16
收藏 37KB DOC 举报
本资源是一份针对STC单片机的数字温度计程序,主要使用了DS18B20温度传感器。DS18B20是一种常用的1-Wire数字温度传感器,其特点是通过一根总线连接多个设备,可实现单线通信,节省了线路资源。
该程序的核心内容包括以下几个部分:
1. **硬件配置**:程序定义了数据脚P2.4用于与DS18B20的DQ引脚相连,以及DIN引脚用于控制LED小数点显示。P1口用于段码输入,而P20~P23作为位选信号,用于选择要显示的LED。
2. **数据类型和变量声明**:定义了无符号字符型(uchar)和无符号整型(uint),以及几个用于存储温度值、临时数据和显示数据的变量。
3. **温度转换和显示处理**:
- **温度读取**:通过P2.4的数据引脚读取DS18B20的温度数据,并将其暂存到`temp_data[2]`数组中。
- **温度转换**:由于DS18B20默认采用12位转换,程序可能包含将12位二进制转换为温度值的算法,但具体内容未在给出的部分中体现。
- **小数点显示**:使用查表法来确定小数点后的四位温度值对应的LED显示代码。
- **显示处理**:将温度值分解为整数和小数部分,并利用共阳LED段码表和列扫描控制字进行组合,形成四位数字和小数点的显示数据。
4. **延时函数**:为了确保数据稳定后再进行下一步操作,程序中包含了用于实现11us延时的函数`delay()`,这对于读取和处理温度数据时的稳定性和精度至关重要。
5. **显示扫描函数**:这部分负责根据预设的扫描控制字,依次点亮或熄灭LED,以显示最终的温度数值。
整个程序设计旨在将DS18B20测量的温度转换为易于理解的四位数字和小数点显示,适合于学习和实践单片机编程和温度传感器的应用。如果你需要完整的课程设计报告,可以联系作者获取更多细节和背景信息。
2022-05-24 上传
2010-07-11 上传
2022-04-14 上传
2023-06-01 上传
2023-05-29 上传
2023-06-01 上传
2023-06-01 上传
2023-03-28 上传
2023-05-21 上传
幻幻猪
- 粉丝: 0
- 资源: 1
最新资源
- WPF渲染层字符绘制原理探究及源代码解析
- 海康精简版监控软件:iVMS4200Lite版发布
- 自动化脚本在lspci-TV的应用介绍
- Chrome 81版本稳定版及匹配的chromedriver下载
- 深入解析Python推荐引擎与自然语言处理
- MATLAB数学建模算法程序包及案例数据
- Springboot人力资源管理系统:设计与功能
- STM32F4系列微控制器开发全面参考指南
- Python实现人脸识别的机器学习流程
- 基于STM32F103C8T6的HLW8032电量采集与解析方案
- Node.js高效MySQL驱动程序:mysqljs/mysql特性和配置
- 基于Python和大数据技术的电影推荐系统设计与实现
- 为ripro主题添加Live2D看板娘的后端资源教程
- 2022版PowerToys Everything插件升级,稳定运行无报错
- Map简易斗地主游戏实现方法介绍
- SJTU ICS Lab6 实验报告解析