dht11发出数据,主机接收数据时,芯片手册说低电平持续40-50us,但是我用ktime_get_boot_ns()函数计算时间的时候是70us或者20us而高电平持续时间是40-50us,导致读出数据每一位都是1. 但是如果我反过来读,低电平持续的久就读为1,持续的快就读为0,校验位又不对。 而且第一位数据的高电平持续时间也不对,只有2000ns
但是我如果用中断我源码读出来就是正常的