当前位置: 首页 > news >正文

实验七:基于89C51和DS18B20的温度采集与显示

      一、实验目的

  1. 学习使用DS18B20数字温度传感器采集温度数据。
  2. 使用4位共阳极数码管显示温度数据,显示精度到小数点后两位。
  3. 熟悉89C51单片机的I/O口操作和位选控制。
  • 二、实验器材

  1. 89C51单片机开发板
  2. DS18B20数字温度传感器
  3. 4位共阳极数码管
  4. 三极管8550(用于位选驱动)
  5. 电阻、电容等辅助元件
  6. 杜邦线若干
  • 三、硬件连接

  • (1)数码管连接:

  1. P1.0 - P1.7:分别连接数码管的A - G段和DP(小数点)。

  2. P2.4P2.5P2.6P2.7:分别控制数码管的不同位显示。

  3. 使用8550(PNP型)作为位选驱动,控制数码管位选通。

(2)DS18B20连接

  1. DQ端连接89c51的P2.3

四、软件设计

DS18B20的工作步骤可以分为三步:

  1. 初始化DS18B20
  2. 执行ROM指令
  3. 执行DS18B20功能指令

      其中第二步执行ROM指令,也就是访问每个DS18B20,搜索64位序列号,读取匹配的序列号值,然后匹配对应的DS18B20,如果我们仅仅使用单个DS18B20,可以直接跳过ROM指令。而跳过ROM指令的字节是0xCC。

五、实验结果

  1. 通过上述代码,数码管应能正确显示温度数值,包括小数点后位,满足实验要求。

 

 

六、注意事项

  1. 确保硬件连接正确,尤其是位选控制(P2.4 - P2.7)和电流放大(8550驱动)。
  2. 定期检查硬件连接,确保功能正常。

提交:(1)C51代码实现  (2)仿真或实验图 (3)实验总结

七、补充材料

 (1)DS18B20温度传感器特点

  1. 使用电压范围更宽,电压范围:3.0V ~ 5.5V,在寄生电源方式下可由数据线供电。
http://www.xdnf.cn/news/211591.html

相关文章:

  • 【从滚动条缺失到布局体系:前端布局问题的系统性思考】
  • pytorch 一些常用语法
  • 图漾官网Sample_V1版本C++语言完整参考例子---单相机版本
  • 企业办公协同平台安全一体化生态入住技术架构与接口标准分析报告
  • ubnuntu使用conda进行虚拟环境迁移,复制,克隆
  • Dify 使用模版转换实现更丰富的输入格式支持
  • linux FTP服务器搭建
  • 通信协议——SPI通信协议
  • Go语言中的错误处理
  • CSS:编写位置分类
  • PDF编辑器:Foxit PDF Editor Pro 版功能解析
  • JVM对象存储格式
  • 解决调用Claude 3.7接口 403 Request not allowed问题
  • 贝叶斯优化RF预测模型
  • 轻松实现CI/CD: 用Go编写的命令行工具简化Jenkins构建
  • 处理pdf文件的常用库unstructured和PyPDF2
  • 【PyTorch动态计算图原理精讲】从入门到灵活应用
  • vscode 配置qt
  • WEB漏洞--CSRF及SSRF案例
  • 可靠性工程:加速因子与筛选度计算模型解析
  • 修改输入框选择框颜色
  • jspm老年体检信息管理系统(源码+lw+部署文档+讲解),源码可白嫖!
  • 【论文阅读/复现】RT-DETR的网络结构/训练/推理/验证/导出模型
  • 如何让自己保持一定的神秘感--deepseek
  • k8s部署
  • Vim 中替换字符或文本
  • 水利三维可视化平台怎么做?快速上手的3步指南
  • CMA软件实验室评审政策解读
  • Fortran如何写注释?
  • MySQL下载与安装