標(biāo)題: 想問下大家關(guān)于鍵盤與顯示實(shí)驗(yàn)中的lcd1602無法顯示的問題 [打印本頁]

作者: 七夜努力變強(qiáng)    時(shí)間: 2021-4-23 11:17
標(biāo)題: 想問下大家關(guān)于鍵盤與顯示實(shí)驗(yàn)中的lcd1602無法顯示的問題
現(xiàn)在在學(xué)習(xí)單片機(jī),做了個(gè)鍵盤與顯示實(shí)驗(yàn),但不知代碼哪里出現(xiàn)了問題,lcd無法顯示,特來問下大家,想知道如何將問題解決,謝謝大家的解答仿真結(jié)果:lcd不顯示任何數(shù)據(jù)以下為此次代碼:
ORG 1000H;
MAIN:

;*******顯示屏顯示準(zhǔn)備************
                RS                EQU P3.7;
                RW                EQU P3.6;
                E                EQU P3.5;
                MOV                P1,#1;         清屏并光標(biāo)復(fù)位
                ACALL        ELABLE;
                MOV                P1,#00111000B;設(shè)置8位單行5*10顯示
                ACALL        ELABLE;
                MOV                P1,#00000111B; 顯示器開,光標(biāo)開,光標(biāo)允許閃爍
                ACALL        ELABLE;
                MOV                P1,#00000110B;文字不動(dòng),光標(biāo)自動(dòng)右移
                ACALL        ELABLE;
                MOV                P1,#80H;寫入顯示開始位置
                ACALL        ELABLE;



;*******鍵值查找*******************
DISP:        ACALL         KEYSCAN;  調(diào)用鍵盤掃描程序
                MOV                A,30H;            取出偏移量
                MOV                DPTR,#TABLE; 指向table表
                MOVC        A,@A+DPTR;         取出鍵盤所指數(shù)據(jù)



;*******將數(shù)據(jù)送到顯示器上顯示******
                MOV                P1,A;
                MOV                P2,A;
                SETB        RS;
                CLR                RW;
                CLR                E;
                ACALL        DELAY;
                SETB        E;
                ACALL        DELAY_XD;
                SJMP        MAIN;

;*******寫入控制命令的子程序************
ELABLE:        CLR         RS;
                CLR                RW;
                CLR                E;
                ACALL        DELAY;
                SETB        E;
                RET;
               
               
               
;*******判斷顯示器是否處于忙的狀態(tài)******
DELAY:        MOV                P1,#0FFH;
                CLR                RS;
                SETB        RW;
                CLR                E;
                NOP;
                SETB        E;
                JB                P1.7,DELAY;
                RET;


;******消抖**********************
DELAY_XD:MOV        R5,#10H;
NEXT1:        MOV                R6,#10H;
NEXT2:        MOV                R7,#10H;
                DJNZ        R7,$;
                DJNZ        R6,NEXT2;
                DJNZ        R5,NEXT1;
               
               
;*******線反轉(zhuǎn)法*****************
KEYSCAN:MOV                P3,#0FH;
                MOV                A,P3;
                ANL                A,#0FH;
                MOV                R3,A;
                MOV                P3,#0F0H;
                MOV                A,P3;
                ANL                A,#0F0H;
                ORL                A,R3;
                CJNE        A,#0FFH,KEYPRO;
                RET;

;*******鍵值處理********************
KEYPRO:        MOV                31H,A;
                MOV                DPTR,#KEYVALUE;
                MOV                R4,#0;
KEY1:        INC                R4;
                MOV                A,R4;
                MOVC        A,@A+DPTR;
                CJNE        A,31H,KEY1;
                MOV                A,R4;
                MOV                30H,A;
                RET;

;*******表格數(shù)據(jù)*******************
KEYVALUE:DB 7EH,0BEH,0DEH,0EEH,7DH,0BDH,0DDH,0EDH,7BH,0BBH,0DBH,0EBH,77H,0B7H,0D7H,0E7H;
TABLE:         DB        30H,31H,32H,33H,34H,35H,36H,37H,38H,39H,41H,42H,43H,44H,45H,46H;

END






作者: 七夜努力變強(qiáng)    時(shí)間: 2021-4-23 11:19
謝謝大家?guī)兔獯鹆?br />
作者: 七夜努力變強(qiáng)    時(shí)間: 2021-4-23 11:25
非常感謝大家的解答




歡迎光臨 (http://www.torrancerestoration.com/bbs/) Powered by Discuz! X3.1