2025-11-08 23:35:20
DHT11测温度是看数据里的前20位数字,每10位算一个数比如3030就是30度,后面10位是湿度30%这样子。DS18B20的9位数据前7位是整数比如3030就是30度,后面两位是小数点后两位30.30度。一位都是校验位不能算温度。
因为DHT11的40位数据分两段前20位温度后20位湿度,每10位一个数值比如3030代表30度30%湿度,一位是校验位不能算温度。DS18B20的9位数据前7位整数后5位小数,比如3030拆成30和30就是30.30度,一位是低字节校验位不能算温度。比如测到DS18B20数据是3030一位是0就正确,如果是1就说明数据有问题。所以大家看数据的时候要忽略一位,前面的数值才是实际温度。
本题链接: