欧美极品高清xxxxhd,国产日产欧美最新,无码AV国产东京热AV无码,国产精品人与动性XXX,国产传媒亚洲综合一区二区,四库影院永久国产精品,毛片免费免费高清视频,福利所导航夜趣136

 找回密碼
 立即注冊(cè)

QQ登錄

只需一步,快速開(kāi)始

搜索

單片機(jī)仿真運(yùn)行成功了但是實(shí)物連接完LCD1602初始化不成功(只顯示一行白塊)

查看數(shù): 7260 | 評(píng)論數(shù): 21 | 收藏 0
關(guān)燈 | 提示:支持鍵盤(pán)翻頁(yè)<-左 右->
    組圖打開(kāi)中,請(qǐng)稍候......
發(fā)布時(shí)間: 2022-6-28 21:42

正文摘要:

緊急求助各位大佬,仿真運(yùn)行成功了但是實(shí)物連接完LCD初始化不成功(只顯示一行白塊),電機(jī)也不轉(zhuǎn),燒錄之前的顯示程序是正常顯示的,請(qǐng)問(wèn)是什么問(wèn)題哇,下面是全部匯編代碼

回復(fù)

ID:329625 發(fā)表于 2024-7-2 09:09
如果仿真運(yùn)作沒(méi)問(wèn)題  就檢查硬件和仿真電路一樣不一樣
ID:1037273 發(fā)表于 2022-7-2 16:35
也有可能是IO口的問(wèn)題哎
ID:401564 發(fā)表于 2022-6-30 23:26
用C寫(xiě)代碼,進(jìn)行仿真,我都覺(jué)得那是在浪費(fèi)時(shí)間
用匯編,那就更浪費(fèi)時(shí)間了
你這個(gè)問(wèn)題就證明了這一點(diǎn):仿真成功了,那又如何,最后有問(wèn)題還不是得花時(shí)間去解決
直接編譯下載,慢慢找問(wèn)題還快點(diǎn)
ID:1028599 發(fā)表于 2022-6-30 11:37
謝謝大佬們!可以成功運(yùn)行了!!!我把WAIT刪了改成DELAY了!謝謝謝謝!!!
ID:844772 發(fā)表于 2022-6-30 11:22
硬件的問(wèn)題只能靠你自己,軟件上倒是有個(gè)建議,把;WAIT:  這段子程序改成僅僅延時(shí)幾個(gè)微秒。
ID:1028599 發(fā)表于 2022-6-30 10:11
glinfei 發(fā)表于 2022-6-29 17:22
應(yīng)該大概率是硬件問(wèn)題,因?yàn)槌绦蚨嗍钦迟N的不應(yīng)該有問(wèn)題。
如果確保硬件沒(méi)問(wèn)題,我認(rèn)為是判斷LCD忙有問(wèn)題 ...

好的我改一下!
ID:68189 發(fā)表于 2022-6-30 10:07
匯編代碼看不懂,,,,,,,但是調(diào)試屏幕時(shí)要注意寫(xiě)顯示命令后要有延時(shí),雖然有遇忙判斷,但在實(shí)際應(yīng)用時(shí),必須注意延時(shí).可以參看C代碼.不知道我說(shuō)的對(duì)不對(duì).試一試.
ID:844772 發(fā)表于 2022-6-30 08:25
我都不敢相信我的眼睛了,難道你EN沒(méi)有拉高嗎?那單片機(jī)怎么會(huì)運(yùn)行呢?
ID:1028599 發(fā)表于 2022-6-29 19:25
君工創(chuàng) 發(fā)表于 2022-6-29 09:29
對(duì)比度調(diào)整不合適也會(huì)顯示白屏的啊。

(┯_┯)我擰了好久,一行白塊是最好的結(jié)果啦
ID:1028599 發(fā)表于 2022-6-29 19:22
START       EQU 20H.0      
INPUT       EQU 20H.1      
KEY         EQU 21H         
PWM_ZKB     EQU 22H         
PWM_CNT     EQU 23H         

FLAG        EQU 30H         
U8comdata   EQU 31H
U8T_data_H  EQU 32H
U8T_data_L  EQU 33H
U8RH_data_H EQU 34H
U8RH_data_L EQU 35H
U8checkdata EQU 36H
U8temp      EQU 37H
temp        EQU 38H


         IN1 BIT P1.0        
         IN2 BIT P1.1
         ENA BIT P1.2        

         RS  BIT P2.0        
         RW  BIT P2.1        
         E   BIT P2.2        

         DQ  BIT P2.3        

    ORG  0000H
    AJMP  MAIN               
    ORG   001BH
    LJMP  T1_ISR            
    ORG  0100H



MAIN:
    MOV   SP,#60H            
    MOV   PWM_ZKB,#70
    LCALL SETLCD            
    LCALL LINE1
    MOV   DPTR,#TAB1         
    LCALL LCDDISP
    LCALL T1_INIT            
LOOP:                        
    LCALL KEYSCAN            
    LCALL KEYPROC
    LCALL DHT11              
    LCALL DISPLAY            
    JMP   LOOP               




T1_INIT:
    MOV   TMOD,#10H            
    MOV   TH1,#0FCH            
    MOV   TL1,#018H            
    SETB  ET1                  
    SETB  TR1                  
    SETB  EA                    
    RET




T1_ISR:                        
    PUSH  ACC                  
    MOV   TH1,#0FCH            
    MOV   TL1,#018H            
    INC   PWM_CNT
    MOV   A,PWM_CNT
    CJNE  A,#100,T1_0
    MOV   PWM_CNT,#0
T1_0:
    CLR   C                     
    MOV   B,PWM_ZKB
    MOV   A,PWM_CNT
    SUBB  A,B                  
    JNC   PWM_0                 
    SETB  ENA                  
    JMP   T1_END
PWM_0:
    CLR   ENA                  
T1_END:
    POP   ACC                  
    RETI                        




Read:
    MOV   temp,#8
        MOV   U8comdata,#0
LOOP_COM:
    MOV   FLAG,#0            
LOOP3:
    INC   FLAG
    MOV   A,FLAG
    JB    DQ,LOOP3_END      
    CJNE  A,#0,LOOP3
    LJMP  COM_END
LOOP3_END:
    LCALL Delay_10us   
    LCALL Delay_10us   
    LCALL Delay_10us            
    MOV   U8temp,#0
    JNB   DQ,HIGH_END
    MOV   U8temp,#1
HIGH_END:
    MOV   FLAG,#0
LOOP4:
    INC   FLAG
    MOV   A,FLAG
    JNB   DQ,LOOP4_END      
    CJNE  A,#0,LOOP4
    LJMP  COM_END
LOOP4_END:
    MOV  A,FLAG
    CJNE  A,#0,NO_FLAG
    LJMP  COM_END
NO_FLAG:
    MOV A,U8comdata
    RL  A
    ORL A,U8temp
    MOV U8comdata,A
    DJNZ temp,LOOP_COM      
COM_END:
    RET




DHT11:
    CLR   EA
    CLR   DQ                 
    MOV   A,#36
        LCALL Delay
        SETB  DQ
    LCALL Delay_10us         
    LCALL Delay_10us   
    LCALL Delay_10us   
    LCALL Delay_10us
    JB    DQ,RH_END         
    MOV   FLAG,#0
LOOP1:
    INC   FLAG
    MOV   A,FLAG
    JB    DQ,LOOP1_END      
    CJNE  A,#0,LOOP1
    LJMP  RH_END
LOOP1_END:
    MOV   FLAG,#0
LOOP2:
    INC   FLAG
    MOV   A,FLAG
    JNB   DQ,LOOP2_END      
    CJNE  A,#0,LOOP2
    LJMP  RH_END
LOOP2_END:
    LCALL Read               
        MOV   U8RH_data_H,U8comdata
        LCALL Read
        MOV   U8RH_data_L,U8comdata
        LCALL Read
        MOV   U8T_data_H,U8comdata
        LCALL Read
        MOV   U8T_data_L,U8comdata
        LCALL Read
        MOV   U8checkdata,U8comdata
        SETB  DQ
RH_END:
    SETB  EA
    RET




KEYSCAN:
   
    SETB  F0                          
    MOV   KEY,#16H
    MOV   R3,#0FEH            
    MOV   R1,#00H              
L2: MOV   A,R3                 
    MOV   P3,A                 
    LCALL DELAY1MS
    MOV   A,P3                 
    SWAP  A
    SETB  C   
    MOV   R5,#4               
L3: RRC   A                          
    JNC   KEY1                 
    INC   R1                  
    DJNZ  R5,L3               
    MOV   A,R3                 
    SETB  C
    RLC   A                    
    MOV   R3,A                 
    JB    ACC.4,L2            
    LJMP  KEY_OUT
KEY1:
    CLR   F0                  
    MOV   KEY,R1               
T3: MOV   A,P3                 
    XRL   A,R3
    JNZ   T3
KEY_OUT:
   
    RET




KEYPROC:
    MOV   A,KEY                 
    CJNE  A,#16H,K_0            
    RET                        
K_0:CLR   C                     
    SUBB  A,#10                 
    JNC   G10                  

L10:MOV   A,KEY
    ADD   A,#'0'
    LCALL LCDDAT
    JMP   KP_END               

G10:MOV   A,KEY                 
    CJNE  A,#0AH,T0B            
    SETB  INPUT
    MOV   A,#83H
    LCALL LCDCMD
    MOV   DPTR,#M_CL2
    LCALL LCDDISP
    MOV   A,#83H
    LCALL LCDCMD
    MOV   A,#0DH
    LCALL LCDCMD
    JMP   KP_END               
T0B:CJNE  A,#0BH,T0C            
    CLR   INPUT
    MOV   A,#0CH
    LCALL LCDCMD
    JMP   KP_END               
T0C:CJNE  A,#0CH,T0D            
    JB    START,STOP
    SETB  START
    CLR   IN1
    SETB  IN2
    JMP   KP_END
STOP:
    CLR   START
    SETB  IN1
    SETB  IN2
    JMP   KP_END
T0D:CJNE  A,#0DH,T0E            
    CPL   IN1
    CPL   IN2
    JMP   KP_END
T0E:CJNE  A,#0EH,T0F            
    MOV   A,PWM_ZKB
    CJNE  A,#50,DEC_20
    JMP   KP_END
DEC_20:
    SUBB  A,#20
    MOV   PWM_ZKB,A
    JMP   KP_END
T0F:CJNE  A,#0FH,KP_END         
    MOV   A,PWM_ZKB
    CJNE  A,#90,ADD_20
    JMP   KP_END
ADD_20:
    ADD   A,#20
    MOV   PWM_ZKB,A
KP_END:
    RET                        




DISPLAY:
    JB INPUT,DISP_END
    CLR   EA
        PUSH  ACC
    LCALL LINE2
    MOV   A,#'T'
    LCALL LCDDAT
    MOV   A,#':'
    LCALL LCDDAT
    MOV   A,U8T_data_H
    MOV   B,#10
    DIV   AB
    ADD   A,#'0'
    LCALL LCDDAT
    XCH   A,B
    ADD   A,#'0'
    LCALL LCDDAT
    MOV   A,#0DFH
    LCALL LCDDAT
    MOV   A,#'C'
    LCALL LCDDAT
      
    MOV   A,#' '
    LCALL LCDDAT
    MOV   A,#'R'
    LCALL LCDDAT
    MOV   A,#':'
    LCALL LCDDAT
    MOV   A,U8RH_data_H
    MOV   B,#10
    DIV   AB
    ADD   A,#'0'
    LCALL LCDDAT
    XCH   A,B
    ADD   A,#'0'
    LCALL LCDDAT
    MOV   A,#'%'
    LCALL LCDDAT
    POP   ACC
    SETB  EA
DISP_END:
    RET




DISP_NUM_2:
    MOV   B,#10                 
    DIV   AB                    
    ADD   A,#'0'               
    LCALL LCDDAT               
    MOV   A,B                  
    ADD   A,#'0'               
    LCALL LCDDAT               
    RET




DISP_NUM_3:
    MOV   B,#100               
    DIV   AB                    
    ADD   A,#'0'               
    LCALL LCDDAT               
    MOV   A,B                  
    MOV   B,#10                 
    DIV   AB                    
    ADD   A,#'0'               
    LCALL LCDDAT               
    MOV   A,B                  
    ADD   A,#'0'               
    LCALL LCDDAT               
    MOV   A,#' '               
    LCALL LCDDAT               
    RET




DELAY1MS:
    MOV   R7,#01H
DL1:MOV   R6,#8EH
DL0:MOV   R5,#02H
    DJNZ  R5,$
    DJNZ  R6,DL0
    DJNZ  R7,DL1
    RET




Delay:  MOV R4,A               
D1:     MOV R5,#0FFH
            DJNZ R5,$
            DJNZ R4,D1
            RET



Delay_10us:                                   
        NOP
            NOP
            NOP
            NOP
            NOP
            NOP
            RET



Delay_2S:
       MOV A,#250
           LCALL Delay
       MOV A,#250
           LCALL Delay
           MOV A,#250
           LCALL Delay
           MOV A,#250
           LCALL Delay
       MOV A,#250
           LCALL Delay
       MOV A,#250
           LCALL Delay
           MOV A,#250
           LCALL Delay
           MOV A,#250
           LCALL Delay
           RET


SETLCD:
    MOV   A,#01H               
    ACALL LCDCMD
    MOV   A,#38H               
    ACALL LCDCMD
    MOV   A,#0CH               
    ACALL LCDCMD
    MOV   A,#06H               
    ACALL LCDCMD
    ACALL LCDFONT
    RET

LCDCMD:
    CLR   RS
    CLR   RW                    
    MOV   P0,A
    CLR   E                     
    ACALL WAIT
    SETB  E
    RET

LCDDAT:
    SETB  RS
    CLR   RW
    MOV   P0,A
    CLR   E
    ACALL WAIT
    SETB  E
    RET

WAIT:                           
    MOV   P0,#0FFH
    CLR   RS
    SETB  RW                    
    CLR   E
    NOP
    SETB  E
    JB    P0.7,WAIT
    RET

LINE1:                          
    MOV   A,#80H
    ACALL LCDCMD
    RET
LINE2:                          
    MOV   A,#0C0H
    ACALL LCDCMD
    RET


LCDBSP:
    MOV   A,#10H               
    ACALL LCDCMD
    MOV   A,#' '               
    ACALL LCDDAT
    MOV   A,#10H               
    ACALL LCDCMD
    RET


LCDDISP:                        
    MOV   R2,#00H               
NEXT:
    MOV   A,R2                  
    MOVC  A,@A+DPTR            
    CJNE  A,#10H,DSP            
    RET                        
DSP:ACALL LCDDAT               
    INC   R2                    
    AJMP  NEXT                  
    RET


LCDFONT:
    MOV   A,#40H
    LCALL LCDCMD
    MOV   DPTR,#FONT
    MOV   R1, #00H
LOP2:MOV  A,R1
    MOVC  A, @A+DPTR
    ACALL LCDDAT
    INC   R1
    CJNE  R1,#10H, LOP2
    RET




M_CLS:  DB "                ",10H
M_CL2:  DB "            ",10H

FONT:                           
DB  00H,1FH,04H,1FH,04H,04H,1FH,00H
DB  00H,1FH,00H,0EH,00H,00H,1FH,00H

TAB1: DB 00H,01H," 12345678",10H

    END
ID:195496 發(fā)表于 2022-6-29 17:09
太悲摧的圖片大師
ID:155507 發(fā)表于 2022-6-29 17:05
你把你的代碼完整地貼上來(lái)看看
(不要截圖!不要截圖!不要截圖!)

原理圖得提供啊,至少框圖有吧,怎么接線的
ID:748788 發(fā)表于 2022-6-29 16:20
估計(jì)是延時(shí)問(wèn)題
ID:584814 發(fā)表于 2022-6-29 11:55
樓主真的認(rèn)為會(huì)有高手將你發(fā)的一堆圖片完整抄寫(xiě)成匯編程序,然后在沒(méi)有電路圖沒(méi)有實(shí)物圖的情況下研究出正確答案給你么 ?
ID:1023753 發(fā)表于 2022-6-29 10:16
匯編無(wú)能為力
ID:965189 發(fā)表于 2022-6-29 09:29
對(duì)比度調(diào)整不合適也會(huì)顯示白屏的啊。
ID:1028599 發(fā)表于 2022-6-28 22:50
我用萬(wàn)用表測(cè)過(guò)每根接線都是對(duì)的,用的最小系統(tǒng)板,LCD是直接用杜邦線接的沒(méi)有焊接過(guò)程T_T
ID:262 發(fā)表于 2022-6-28 22:33
來(lái)看一下51hei論壇里面解決此問(wèn)題的痛苦經(jīng)歷吧:
51hei搜索框輸入"1602 方塊"或者"1602 黑塊"或者"1602 白塊"或者"1602 格":

這個(gè)是io口設(shè)置問(wèn)題,最終搞定了:http://www.raoushi.com/bbs/dpj-199732-1.html
http://www.raoushi.com/bbs/dpj-168643-1.html
http://www.raoushi.com/bbs/dpj-208189-1.html
http://www.raoushi.com/bbs/dpj-210690-1.html

既有可能是軟件問(wèn)題也有硬件問(wèn)題
http://www.raoushi.com/bbs/dpj-187378-1.html
http://www.raoushi.com/bbs/dpj-160754-1.html
ID:844772 發(fā)表于 2022-6-28 21:42
應(yīng)該大概率是硬件問(wèn)題,因?yàn)槌绦蚨嗍钦迟N的不應(yīng)該有問(wèn)題。
如果確保硬件沒(méi)問(wèn)題,我認(rèn)為是判斷LCD忙有問(wèn)題,你沒(méi)加延時(shí),估計(jì)就卡在WAIT 那段了。建議你干脆就取消判斷忙,改成延時(shí)就行了。

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

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

快速回復(fù) 返回頂部 返回列表