别跟我说什么adc这个游戏其实地上根本没有有adc

LOL: 谁说这个ADC在这个版本很弱? 白金以仩才知道他有多强


其中SDA和SCL分别是数据线和时钟线汾别对应单片机的1.1口和1.0口

由时序图可知,一开始SDA和SCL分别高电平和低电平


下面这个代码也是根据时序图来写的
由此可见,驱动其实就是根據时序图来编写的不按照时序图编写,单片机不执行这段代码的话传感器就不能正常工作,不会听从单片机的指令




如何实现温湿度讀取呢?

可以看到读温度还是读湿度唯一区别就是s_measure里第二个参数是三还是五
里面有一个s_write_byte()函数,结合SHTXX命令集可知道单片机发送3就是发送溫度读取命令,发送5就是发送湿度读取命令


  

当传感器收到指令,开始工作收集湿度数据信息这个过程需要时间。
当它准备好了他会給单片机一个低电平,一旦单片机收到了就break了。

然后单片机开始读取数据:

如果说延时完了SDA还没有拉低错误信息加1,并返回错误信息 return er;


 

 
 
 
 
 
 
 
 
 

下面这一段是四舍五入的意思。


 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

我要回帖

更多关于 其实地上根本没有 的文章

 

随机推荐