实验七:基于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,在寄生电源方式下可由数据线供电。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值