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

QQ登錄

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

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

單片機(jī)+LCD1602仿真程序把本應(yīng)該顯示在第二行的數(shù)據(jù)顯示在第一行了?

[復(fù)制鏈接]
跳轉(zhuǎn)到指定樓層
樓主
為啥Proteus仿真把本應(yīng)該顯示在第二行的數(shù)據(jù)顯示在第一行了,而且寫(xiě)了0C0H也不換行。程序在23樓
分享到:  QQ好友和群QQ好友和群 QQ空間QQ空間 騰訊微博騰訊微博 騰訊朋友騰訊朋友
收藏收藏 分享淘帖 頂 踩
回復(fù)

使用道具 舉報(bào)

沙發(fā)
ID:1018761 發(fā)表于 2022-4-21 21:21 | 只看該作者
           RS EQU P1.0
                           RW  EQU P1.1
               E EQU P1.2
               LCD EQU P2
               BF EQU P2.7                                   
               ORG 0000H
               AJMP 0030H
                           ORG 0023H
                           AJMP COM_INT
                           ORG 0030H
               MOV SCON,#50H;
               MOV        PCON,#0
               MOV TMOD,#20H
               MOV TH1,#0FDH;
               MOV TL1,#0FDH
               SETB TR1
               SETB        EA
               SETB        ES
               MOV IE,#90H;         
                        

                           
                           MOV R0,#60H
                           
MAIN:                MOV A,#38H  
               ACALL W_CMD
               MOV A,#08H   
               ACALL W_CMD
                           MOV A,#01H  
                           ACALL W_CMD
                           MOV A,#06H  
                           ACALL W_CMD
                           MOV A,#0CH  
                           ACALL W_CMD                           
                           SJMP $  
            
               
COM_INT:       NOP        
REC:           JNB RI,$
                           CLR RI        
               MOV A,SBUF
                           CJNE A,#24H,REC;
                           JNB RI,$
                           CLR RI
               MOV A,SBUF
                           CJNE A,#47H,REC;  G
                           JNB RI,$
                           CLR RI
               MOV A,SBUF
                           CJNE A,#4EH,REC;  P
                           JNB RI,$
                           CLR RI
               MOV A,SBUF
                           CJNE A,#47H,REC;  G
                           JNB RI,$
                           CLR RI                                   
               MOV A,SBUF
                           CJNE A,#47H,REC;  G
                           JNB RI,$
                           CLR RI
               MOV A,SBUF
                           CJNE A,#41H,REC;  A                  
                           
DATE:                   JNB RI,$
               CLR RI
               MOV A,SBUF
                           MOV @R0,A
                           INC R0
                           CJNE A,#2AH,DATE
                           
                           MOV A,#80H                  
                           ACALL W_CMD
                           MOV R0,#61H
                           
               ACALL DOUHAO
                           INC R0
                           
LOOP1:               MOV A,@R0
               ACALL W_DATE
                           INC R0
                           MOV A,@R0
                           CJNE A,#2CH,LOOP1

               MOV A,#00H
                           ACALL W_CMD
                           MOV A,#0CH   
                           ACALL W_CMD
                           INC R0
                           INC R0
                           INC R0
                           
LOOP2:         MOV A,@R0
               ACALL W_DATE
                           INC R0
                           CJNE @R0,#2CH,LOOP2
                           RETI                  
                           
W_CMD:         MOV P2,A
               CLR RS
                       CLR RW
                   SETB E
                       NOP
                       CLR E
                       RET

W_DATE:       ACALL WAIT  
              MOV P2,A
                      SETB RS
                  CLR RW
                     SETB E
                      NOP
                      CLR E
                      RET
                  
WAIT:         MOV LCD,#0FFH
              CLR RS
                      SETB RW
                      CLR  E
                          NOP
                          SETB E
                          JB BF,WAIT
                          RET
                        
DOUHAO:       INC R0
              CJNE        @R0,#2CH,DOUHAO
              RET                                                
               
DEL:          MOV R7,#20
D1:           MOV R6,#100
D2:           DJNZ R6,D2
              DJNZ R7,D1
              END
回復(fù)

使用道具 舉報(bào)

板凳
ID:1018761 發(fā)表于 2022-4-21 21:24 | 只看該作者
這是仿真和程序,謝謝各位了

51hei圖片20220421211916.png (27.5 KB, 下載次數(shù): 22)

51hei圖片20220421211916.png

51hei圖片20220421211950.png (29.94 KB, 下載次數(shù): 22)

51hei圖片20220421211950.png

51hei圖片20220421212033.png (38.83 KB, 下載次數(shù): 22)

51hei圖片20220421212033.png
回復(fù)

使用道具 舉報(bào)

地板
ID:397211 發(fā)表于 2022-4-22 10:33 | 只看該作者
第一行的地址好像是0x80吧,想顯示到第二行就0x80+0X40就可以了啊,初始化的時(shí)候最好是初始化兩次
回復(fù)

使用道具 舉報(bào)

5#
ID:1018761 發(fā)表于 2022-4-22 11:21 來(lái)自觸屏版 | 只看該作者
保持微笑 發(fā)表于 2022-4-22 10:33
第一行的地址好像是0x80吧,想顯示到第二行就0x80+0X40就可以了啊,初始化的時(shí)候最好是初始化兩次

我在程序已經(jīng)寫(xiě)了0c0h了,但是沒(méi)有換行
回復(fù)

使用道具 舉報(bào)

6#
ID:1018761 發(fā)表于 2022-4-22 11:40 來(lái)自觸屏版 | 只看該作者
不好意思,上面的截圖的程序?qū)懙氖?ch,但是我把它改成0c0h后還是不換行
回復(fù)

使用道具 舉報(bào)

7#
ID:1018761 發(fā)表于 2022-4-22 16:38 | 只看該作者
謝謝大家!我已經(jīng)查資料解決了!
給大家說(shuō)說(shuō)我的方法,就是在寫(xiě)換行命令前加一個(gè)延時(shí)幾個(gè)毫秒的程序,不然lcd反應(yīng)不了,處于忙狀態(tài)。
回復(fù)

使用道具 舉報(bào)

本版積分規(guī)則

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

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

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