| 
 
| 最近看了看DS18B20的手册,也有对应的程序。可是有些不理解它的时序,从而程序也有些不太懂。 这是我在手册里的截图,写的时序我看明白了,可读的不是很懂。在看程序的时候会现有一个低脉冲。拉低后又拉高之后再读取数据,这是为什么?时序图上也没有那个地脉冲啊?
 
 附上 读的程序
 
 unsigned char Read18B20()
 {
 unsigned char dat;
 unsigned char mask;
 
 EA = 0;
 for(mask=0x01; mask!=0; mask<<=1)
 {
 IO_18B20 = 0;
 _nop_();
 _nop_();
 IO_18B20 = 1;
 _nop_();
 _nop_();
 if(!IO_18B20)
 dat &= ~mask;
 else
 dat |= mask;
 DelayX10us(6);
 }
 EA = 1;
 
 return dat;
 }
 
 
 | 
 
×本帖子中包含更多资源您需要 登录 才可以下载或查看,没有账号?注册 
  |