导航: 老古网老古论坛XMOS公共讨论区XMOS开源项目区单片机程序设计嵌入式系统广告区域
→发表看法:[guest]关于DS18B20的问题。



No.69535
作者:guest
邮件:guest@guest.com
ID:6
登陆:16560次
文章数:7648篇
最后登陆IP:219.68.9.43
最后登陆:2005/5/20 1:37:44
注册:2003/3/10 16:21:00
财富:35062
发帖时间:2004/12/19 11:21:19
发贴者IP:222.69.22.238
标题:guest:关于DS18B20的问题。
摘要:No.69535关于DS18B20的问题。 我用的是外部电源供电方式,但屏幕好像没有输出温度,我没有仿真器仿真,哪位高手能指点一二,谢谢!
TEMP_L    EQU    36H
TEMP_H    EQU    35H
TEMP_NUM  EQU    60H
FLAG1     BIT    01H
DQ        BIT    P3.3
        ORG    00
       AJMP   MAIN
 
      
DELAY1:                        ;-------------------等待延时80uS
       MOV   R2,#40
       DJNZ  R2,$
       RET


    
RST_P:                         ;-------------------复位和接收脉冲
       CLR   DQ 
       MOV   R2,#250        ;delay 500 uS 
       DJNZ  R2,$  
       SETB  DQ 
       MOV   R2,#10         ;delay 20 uS 
       DJNZ  R2,$  

presence_pulse: 
       JB    DQ,$         ;Rx presence pulse 
       JNB   DQ,NEXT1
       MOV   TEMP_NUM,#0
       LJMP   DISP
NEXT1:
       RET

SENT_1:                        ;发送命令8位
       MOV    R1,#8
       CLR    C
ROLL1: RRC    A
       JC     W_BIT1
       CLR    DQ
       SJMP   W_BIT0
W_BIT1:SETB   DQ 
W_BIT0:
       LCALL  DELAY1
       DJNZ   R1,ROLL1
       RET


TEMP_T:                        ;温度转换,在外接电源情况下
       JNB    DQ,$
       RET

READ_1:                        ;读8位数到R7所指的地址
       MOV    R1,#8
       MOV    A,#0
       CLR    C
ROLL2: JB     DQ,R_BIT1
       CLR    C 
       RRC    A
       SJMP   R_BIT0
R_BIT1:SETB   C
R_BIT0:
       LCALL  DELAY1
       DJNZ   R1,READ_1
       
       MOV    @R0, A 
       LCALL  DELAY1
       RET       


 ;-------------------将从DS18B20中读出的温度数据进行转换
TEMP_COV:
       MOV    A,#0F0H
       ANL    A,TEMP_L        ; 舍去温度低位中小数点后的四位温度数值
       SWAP   A
       MOV    TEMP_NUM,A
       MOV    A,TEMP_L
       JNB    ACC.3,TEMP_COV1    ; 四舍五入去温度值
       INC    TEMP_NUM

TEMP_COV1:
       MOV    A,TEMP_H
       ANL    A,#07H
       SWAP    A
       ORL    A,TEMP_NUM
       MOV    TEMP_NUM,A    ; 保存变换后的温度数据
       LCALL    BIN_BCD
       RET
       ;-------------------将16进制的温度数据转换成压缩BCD码
BIN_BCD:
       MOV    DPTR,#TEMP_TAB
     ......

>>返回讨论的主题



  发表回复
用户名   *您没有注册?
密码   *
验证码   * .
标题   *
心情
随便说说    我回答你    最新发现    得意的笑   
气死我了    真是没劲    坚决同意    表示反对   
大家过来    好奇怪哟    懒得理它    大家小心   
文件上传
内容


字体:      字体大小:    颜色:
粗体 斜体 下划线 居中 超级连接 Email连接 图片 Flash图片 Shockwave文件 realplay视频文件 Media Player视频文件 QuickTime视频文件 引用 飞行字 移动字 发光字 阴影字 查看更多的心情图标 背景音乐
点击加入表情
                         
选项
有回复时用短消息通知您?

   




老古网执行:31毫秒 最大:7276毫秒 查询6次