导航: 老古网老古论坛XMOS公共讨论区XMOS开源项目区单片机程序设计嵌入式系统广告区域
→请教:关于DS18B20的读时序问题

* 98938: 请教:关于DS18B20的读时序问题

   naffan 
naffan发表的帖子 

 请教:关于DS18B20的读时序问题
这是在网络上下的DS18B20例程中的读数据子程序,定义了DQ BIT P3.3,晶振12M

        ------------------读DS18B20的程序,从DS18B20中读出一个字节的数据
READ_1820:
       MOV    R2,#8
RE1:
       CLR    C
       SETB    DQ
       NOP
       NOP
       CLR    DQ               
       NOP
       NOP
       NOP
       SETB    DQ
       MOV    R3,#7
       DJNZ    R3,$
       MOV    C,DQ

       MOV    R3,#23
       DJNZ    R3,$
       RRC    A
       DJNZ    R2,RE1
       RET

程序中红色的部分应该是按照DS18B20的时序要求来读取数据的部分,在拉低DQ后接了3个NOP,延时为3us,SETB DQ 1us,mov R3,#7 1us,djnz R3,$执行7次共14us,也就是说在MCU拉低1 WIRE总线19us后才开始对总线执行采样,而DS18B20的DATASHEET中规定此周期必须在15us内完成,以上程序有误还是我对DS18B20的读写周期规定理解有误,望各位大大帮忙解释一二,万分感谢!


发表时间:2006年10月25日21:10:55

  
回复该帖

本主题共有 1 帖,分页:>>>>>该主题的所有内容[1]条

 *树形目录 只列出部分跟帖的标题以及简单的摘要信息 该主题的部分跟帖如下:

[上一篇帖子]:求助可否给我一份,EMAIL: zhao1223@tom.com
[下一篇帖子]:关于89C52与LED连接的问题我要用设计一个电子万年历,用一片89C52连接8-10片8段LED,