DTH11的读写

DTH11的读取一次需要20MS以上,在韦老师的视频【14-2】中,使用了暂停调度器 vTaskSuspendAll(); 然后读取err = DHT11_Read(&hum, &temp); 然后恢复调度器xTaskResumeAll(); 请问下,这样关闭调度器的代码,在实际项目中,假如有串口通讯等其他任务,是否可行?

那就需要取舍了,看什么比较重要。如果别的任务比较重要就不太行了。如果dht11的任务最重要,还是可以的。因为只暂停了调度器,如果有使用中断,并且中断中比较耗时,还是对dht11又影响的。