通过检测元器件可以检测到温度和湿度
购买链接:
https://item.taobao.com/item.htm?spm=a1z10.5-c-s.w4002-18748153240.77.65572366Y5SuXX&id=576040241718
温湿度传感器
一、功能介绍
温湿度传感器
使用GPIO接口,与IMX6魔法师Cortex-A系列底板的P8接口对应。
1、简介
由于温度与湿度不管是从物理量本身还是在实际人们的生活中都有着密切的关系,所以温湿度一体的传感器就会相应产生。 温湿度传感器是指能将温度量和湿度量转换成容易被测量处理的电信号的设备或装置。市场上的温湿度传感器一般是测量温度量和相对湿度量。
DHT11 数字温湿度传感器是一款含有已校准数字信号输出的温湿度复合传感器。它应用专用的数字模块采集技术和温湿度传感技术,确保产品具有极高的可靠性与卓越的长期稳定性。传感器包括一个电容式感湿元件和一个 NTC 测温元件。
2、串行通信说明(一线式总线通信:单线双向)
1、单总线说明
DHT11 器件采用简化的单总线通信。单总线即只有一根数据线,系统中的数据交换、控制均由单总线完成。设备(主机或从机)通过一个漏极开路或三态端口连至该数据线,以允许设备在不发送数据时能够释放总线,而让其它设备使用总线;单总线通常要求外接一个约 4.7kΩ的上拉电阻,这样,当总线闲置时,其状态为高电平。由于它们是主从结构,只有主机呼叫从机时,从机才能应答,因此主机访问器件都必须严格遵循单总线序列,如果出现序列混乱,器件将不响应主机。
2、单总线传送数据位定义
DATA 用于微处理器与 DHT11 之间的通讯和同步,采用单总线数据格式,一次传送 40 位数据,高位先出。
数据格式:
8bit 湿度整数数据 + 8bit 湿度小数数据 + 8bit 温度整数数据 + 8bit 温度小数数据 + 8bit 校验位。
注:其中湿度小数部分为 0。
3、校验位数据定义
“8bit 湿度整数数据 + 8bit 湿度小数数据 + 8bit 温度整数数据 + 8bit 温度小数数据”8bit 校验位等于所得结果的末 8 位。
名 称 | 单总线格式定义 |
起始信号 | 起始信号 微处理器把数据总线(SDA)拉低一段时间至少 18ms(最大不得超过 30ms),通知传感器准备数据。 |
响应信号 | 响应信号 传感器把数据总线(SDA)拉低 83µs,再接高 87µs 以响应主机的起始信号。 |
数据格式 | 数据格式 收到主机起始信号后,传感器一次性从数据总线(SDA)串出 40 位数据,高位先出 |
湿度 | 湿度 湿度高位为湿度整数部分数据,湿度低位为湿度小数部分数据 |
温度 | 温度高位为温度整数部分数据,温度低位为温度小数部分数据,且温度低位 Bit8 为 1 则表示负温度,否则为正温度 |
校验位 | 校验位=湿度高位+湿度低位+温度高位+温度低位 |
二、使用演示
三、原理分析
本模块通过DATA数据线读取温度和湿度值。
四、代码分析
P8端口设备树配置
GPIO操作库函数
驱动程序
应用程序
五、实践操作
1、编译驱动程序
2、编译应用程序
3、下载测试