一、关于数字温湿度传感器的控制(DHT11)
DATA引脚用于微处理器与DHT11之间的通讯和同步,采用单总线数据格式,一次通讯时间4ms左右,数据分小数部分和整数部分,具体格式在下面说明,当前小数部分用于以后扩展,现读出为零.操作流程如下:
一次完整的数据传输为40bit,高位先出。
数据格式:8bit湿度整数数据+8bit湿度小数数据+8bit温度整数数据+8bit温度小数数据+8bit校验和。
数据传送正确时校验和数据等于“8bit湿度整数数据+8bit湿度小数数据+8bit温度整数数据+8bit温度小数数据”所得结果的末8位。
①整个的通信过程
②通信开始部分
③通信数据的接收
二、关于独立看门狗的使用
对于独立看门狗,它拥有独立的时钟源,假如PLL崩溃了,它还能继续工作,这是其优势所在!
①独立看门狗的初始化
② 如果不在主函数或者中断服务函数再次添加IWDG_ReloadCounter()函数,则看门狗将会在(计数值/分频值)秒内不断复位!
③在添加IWDG_ReloadCounter()函数时,如果还有延时,那么延时时间不可超过(计数值/分频值)秒,否则仍然会不断复位!
此时设置为一秒钟喂一次狗!延时超过一秒,则看门狗将不断复位!
故由于上述原因,一般在定时器的中断函数中进行喂狗!因为如果在主函数中喂狗将会出现问题,因为不确定前面的任务要执行多久。
④添加复位检测代码
添加复位检测代码,有助于观察当前产品工作的可靠性,如果看门狗复位次数过多,请检查硬件与软件是否有问题的。
在该函数下,如果是独立看门狗导致的复位则打印输出:iwdg reset cpu,否则视为:normal reset cpu !
注:看门狗一旦打开则很难关闭,除非再次复位。