查看: 3146|回复: 1

STM32F107VC金龙开发板 第十五章 DS18B20(温度传感器)实验

[复制链接]

该用户从未签到

发表于 2015-4-20 15:29:54 | 显示全部楼层 |阅读模式
分享到:
第十五章 DS18B20(温度传感器)实验
15.1 DS18B20S数字温度传感器:
DS18B20 是由 DALLAS 半导体公司推出的一种的“单总线”接口的温度传感器。与传统的热敏电阻等测温元件相比,它是一种新型的体积小、适用电压宽、与微处理器接口简单的数字化温度传感器。测量温度范围为-55~+125℃  ,精度为±05℃。它能直接读出被测温度,并且可根据实际要求通过简单的编程实现 9~12 位的数字值读数方式。它工作在 35.5 V 的电压范围,采用多种封装形式,从而使系统设计灵活、方便,设定分辨率及用户设定的报警温度存储在 EEPROM 中,掉电后依然保存。
15.2实验说明:
由于开发板上标准配置是没有 DS18B20 这个传感器的,只有接口,所以要做本章的实验,大家必须找一个 DS18B20 焊接到预留的 18B20 接口上。本节实验是读取DS18B20的温度并显示在 LCD 上。
15.3硬件说明:
                图片7.png
   从上图可以看出,我们使用的是 STM32 PB10 来连接 U6 DQ 引脚,将 DS18B20 传感器焊接到这个上面就可以通过 STM32 来读取 DS18B20 的温度了。
15.4程序说明:
打开我们的DS18B20实验的工程,可以看到工程里添加了 DS18B20.c 文件以及其
头文件 DS18B20.h 文件,所有 DS18B20 驱动代码和相关定义都分布在这两个文件中。
图片6.png
图片5.png
图片4.png
图片3.png
这部分代码就是根据单总线操作时序来读取 DS18B20 的温度值的, DS18B20
的温度通过 DS18B20_Get_Temp 函数读取,该函数的返回值为带符号的短整形数据,返回值的范围为-550~1250,其实就是温度值扩大了 10 倍。然后我们打开 ds18b20.h,该文件下面主要是一些 IO 口位带操作定义以及函数申明,没有什么需要特别讲解的地方。最后打开 main.c
图片2.png
主函数代码比较简单,一系列初始化之后,判断18b20初始化是否成功,成功则把读取的温度显示在 LCD 上。到这里,我们本章的软件设计就讲到这儿了。
15.5实验现象:
图片1.png


【15】金龙107_DS18B20(3.2寸).rar (2.24 MB, 下载次数: 26)
回复

使用道具 举报

  • TA的每日心情
    开心
    2019-11-30 19:48
  • 签到天数: 981 天

    连续签到: 1 天

    [LV.10]以坛为家III

    发表于 2015-4-21 12:04:29 | 显示全部楼层
    支持分享!!!!!!!!!!!!!!!!!!!!
    回复 支持 反对

    使用道具 举报

    您需要登录后才可以回帖 注册/登录

    本版积分规则

    关闭

    站长推荐上一条 /2 下一条



    手机版|小黑屋|与非网

    GMT+8, 2024-4-16 22:31 , Processed in 0.134034 second(s), 18 queries , MemCache On.

    ICP经营许可证 苏B2-20140176  苏ICP备14012660号-2   苏州灵动帧格网络科技有限公司 版权所有.

    苏公网安备 32059002001037号

    Powered by Discuz! X3.4

    Copyright © 2001-2020, Tencent Cloud.