久久久久久久999_99精品久久精品一区二区爱城_成人欧美一区二区三区在线播放_国产精品日本一区二区不卡视频_国产午夜视频_欧美精品在线观看免费

 找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

搜索
查看: 2283|回復(fù): 1
打印 上一主題 下一主題
收起左側(cè)

1602顯示溫度程序時(shí)為什么數(shù)值一直不變 求教

[復(fù)制鏈接]
跳轉(zhuǎn)到指定樓層
樓主
ID:103999 發(fā)表于 2016-1-25 22:19 | 只看該作者 回帖獎(jiǎng)勵(lì) |倒序?yàn)g覽 |閱讀模式
                DQ bit p3.3
                  
                  tmph data 28h
                  tmpl data 29h
                  temp_now data 30h
                 now data 40h;存放當(dāng)前時(shí)間,日期首地址
                 
                  RS  BIT  P2.0 ;
                  RW  BIT  P2.1
                  E   BIT  P2.2
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
      org 0000h
      jmp reset
      org 0030h
      reset:mov sp,#60h            
            main:
                  call DS18B20_Reset
                  mov a,#0cch
                  call DS18B20_Write
                  mov a,#44h
               call DS18B20_Write
           led_1:
               call DS18B20_Reset
                  mov a,#0cch
                  call DS18B20_Write
               mov a,#0beh
               call DS18B20_Write
               call DS18B20_Read
               mov tmpl,a
                  call DS18B20_Read
                  mov tmph,a
                  lcall Cvttmp
                  lcall disp
                  lcall delay_1
                  lcall delay_1
                 ajmp main
      
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
      disp:   LCALL  INITIAL         
           DISP1: MOV  A,#30H
                    ORL  temp_now+3, A
                    ORL  temp_now+2, A
                    ORL  temp_now+1, A
                    ORL     temp_now,   A
      DISP2:  MOV  A,temp_now+3
                 LCALL WRITE_LCDDATA
                    MOV  A,temp_now+2
                    LCALL  WRITE_LCDDATA
                    MOV  A,temp_now+1
                    LCALL  WRITE_LCDDATA
                    MOV  A,#2EH                ;'.'字符
              LCALL  WRITE_LCDDATA
                    MOV  A,temp_now
                    LCALL  WRITE_LCDDATA
                    MOV  A,#0DFH               ;下面兩個(gè)是攝氏度的數(shù)字符號
                    LCALL  WRITE_LCDDATA
                    MOV  A,#43H
                    LCALL  WRITE_LCDDATA
                 RET
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;  
   Cvttmp:mov a,tmph
                   anl a,#08h
             jz Tmpc1
                   clr c
                   mov a,tmpl
                   cpl a
                   add a,#1
                   mov tmpl,a
                   mov a,tmph
                   cpl a
                addc a,#0
                   mov tmph,a
                   mov temp_now+3,#2DH;在百位數(shù)位置放負(fù)號
                   sjmp Tmpc11
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
          Tmpc1:mov temp_now+3,#20H    ;溫度為正值
          Tmpc11:mov a,tmpl
                 anl a,#0fH
                 mov dptr,#Tmptab
                 movc a,@a+dptr
                 mov temp_now,a
                 mov a,tmpl
                 anl a,#0f0h
                 swap a
                 mov tmpl,a
                 mov a,tmph
                 anl a,#0fh
                 swap a
                 orl a,tmpl
;;;;;;;;;;;;;;;;;;;;;;;;;;;
;;;;;;;;;;;;;;;;;;;;;;;;;;;
         H2bcd:mov b,#100
               div ab
               jz B2bcd1
               mov temp_now+3,a
;;;;;;;;;;;;;;;;;;;;;;;;;
;;;;;;;;;;;;;;;;;;;;;;;;;
         B2bcd1:mov a,#10
                xch a,b
                div ab
                mov temp_now+2,a
                mov temp_now+1,b
         Tmpc12:nop
         Disbcd:mov a,temp_now+3
          anl a,#0fh
                cjne a,#01,Disbcd0
          ret
         Disbcd0:mov a,temp_now+2
            anl a,#0fh
                 jnz Disbcd1
                 mov a,temp_now+3
                 mov temp_now+2,a
                 mov temp_now+3,#20H
         Disbcd1:ret
         tmptab:db 0,1,2,3,3,4,4,5,6,6,7,8,8,9,9
     
  
   ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
   ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
   DS18B20_Reset:
                 clr DQ
              mov r7,#48
                 call delay_0
                 setb DQ
              mov r7,#6
                 call delay_0
                 mov c,DQ
                 mov r7,#42
              call delay_0
                 jc DS18B20_Reset
               ret
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
        delay_0:
               nop
               nop
               nop
               nop
               nop
               nop
               nop
               nop
               djnz r7,delay_0
               ret
        delay_1:mov r6,#50
        dl1:    mov r7,#50
                djnz r7,$
                djnz r6,dl1
                ret
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
       DS18B20_Write:
            push b
               mov b,#08
       write_0:   
               clr DQ
               nop
               nop
               rrc a
               mov DQ,c
               mov r7,#6
               call delay_0
            setb DQ
               djnz b,write_0
               pop b
               ret
;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;;;;;;;;;;;;;;;;;;;;;;;;;;;;
      DS18B20_Read:
              clr a
              push b
              mov b,#08
      read_0:
             clr DQ
             nop
             nop
             setb DQ
             nop
             nop
             mov c,DQ
             rrc a
             mov r7,#6
             call delay_0;延遲時(shí)間
             djnz b,read_0
             pop b
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;---液晶屏初始化,具體請參考資料-------------------------------------------------
INITIAL:MOV   A, #01H
        LCALL  WRITE_INSTRUCTION
        MOV   A, #38H
        LCALL  WRITE_INSTRUCTION
        MOV   A, #0FH
        LCALL  WRITE_INSTRUCTION
        MOV   A, #06H
        LCALL  WRITE_INSTRUCTION
        RET
;----寫液晶指令的子程序------------------------------------------
WRITE_INSTRUCTION:
  MOV  P0, A
        CLR  RS ;寫入控制命令
        CLR  RW
  lcall DELAY1MS
        clr  E
  lcall DELAY1MS
        LCALL  DELAY
        setb  E
        RET
;----寫液晶數(shù)據(jù)的子程序---------------------------------------------
WRITE_LCDDATA:
  MOV  P0,A
        SETB  RS ;寫入數(shù)據(jù)
        CLR  RW
  lcall DELAY1MS
        clr  E
  lcall DELAY1MS
        LCALL  DELAY ;判斷液晶模塊是否忙?
     setb  E
        RET
;----查看液晶忙碌信號的子程序---------------------------------------------------------
DELAY:  MOV  P0,#0FFH ;判斷液晶顯示器是否忙的子程序
        CLR  RS
        SETB  RW
        CLR  E
        NOP
        SETB  E
        JB   P0.7,DELAY ;如果P0.7為高電平表示忙就循環(huán)等待
        RET
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
DELAY1MS:
  MOV R6,#66H
DL10:
    MOV R5,#03H
    DJNZ R5,$    ;延時(shí)1ms
    DJNZ R6,DL10
    RET
end     




仿真的時(shí)候一直顯示096.4℃
分享到:  QQ好友和群QQ好友和群 QQ空間QQ空間 騰訊微博騰訊微博 騰訊朋友騰訊朋友
收藏收藏 分享淘帖 頂 踩
回復(fù)

使用道具 舉報(bào)

沙發(fā)
ID:103999 發(fā)表于 2016-1-25 22:33 | 只看該作者
來個(gè)高手看瞎 幫幫忙謝謝啦
回復(fù)

使用道具 舉報(bào)

您需要登錄后才可以回帖 登錄 | 立即注冊

本版積分規(guī)則

手機(jī)版|小黑屋|51黑電子論壇 |51黑電子論壇6群 QQ 管理員QQ:125739409;技術(shù)交流QQ群281945664

Powered by 單片機(jī)教程網(wǎng)

快速回復(fù) 返回頂部 返回列表
主站蜘蛛池模板: 久久久久香蕉视频 | 午夜爽爽爽男女免费观看影院 | 99热精品在线 | 成人亚洲精品久久久久软件 | 久热国产精品视频 | 成人在线视频网站 | 操久久 | 精品美女视频在线观看免费软件 | 黄视频免费在线 | 国产黄色大片 | 久久国产精品一区二区三区 | 成人二区 | 亚洲欧美激情精品一区二区 | 黑人巨大精品欧美一区二区免费 | 国产日韩欧美激情 | 另类视频区| 99久久婷婷国产综合精品电影 | 国产成人精品一区二区三区 | 欧美日韩在线不卡 | h视频在线免费看 | 久久精品一区二区视频 | 一区二区三区四区在线视频 | 在线观看中文视频 | 天天天操操操 | 国产在线一区观看 | 草草视频在线免费观看 | 国产欧美日韩精品一区 | 国产一二区免费视频 | 成年人在线观看 | 成人国产午夜在线观看 | 永久免费视频 | 亚洲三级在线观看 | 久久首页 | 97超碰在线播放 | 一区二区三区四区在线 | 一级毛片视频免费观看 | 一区二区三区在线播放 | 久久国产一区 | 精品视频在线观看 | 午夜不卡福利视频 | 欧美精品中文字幕久久二区 |