问题描述
- DHT22 AM2302读出的数据不正确,怎么回事?
- DHT22 AM2302 初始化响应对了,也可以读出数据了,时序也是严格按照资料来的,但读出的数据不正确,请问怎么回事呢?
解决方案
他的数据不是整数格式,应该是定点格式,但是说实话我看他的文档完全看不出来它到底是什么格式:
例子: 接收40bit数据如下:
0000 0010 1000 1100 0000 0001 0101 1111 1110 1110
湿度数据 温度数据 校验和
湿度高8位+湿度低8位+温度高8位+温度低8位=的末8位=校验和
例如:0000 0010+1000 1100+0000 0001+0101 1111=1110 1110
湿度=65.2%RH 温度=35.1℃
当温度低于0℃时温度数据的最高位置1。
例如:-10.1℃表示为1000 0000 0110 0101
解决方案二:
刚刚研究明白了,是整数,除以10得到真实数据
时间: 2024-12-01 06:16:31