单片机汇编吧 关注:121贴子:364
  • 2回复贴,共1

求大神指导!写了一个程序,望帮助一下!!急求!!!!!

只看楼主收藏回复

功能主要是滚动显示字符串,有个开关控制启动与停止!
不知道对不对 !大神帮看看 ,修改一下!!!
程序如下:
ORG 0000H
SJMP MAIN
ORG 0050H
MAIN:MOV R0, #78H ;将数据送入显示缓冲区
MOV A,#01
MOV R2, #08
SD: MOV @R0,A
INC A
INC R0
DJNZ R2,SD
MOV SP,#5FH
MOV DPTR,#TAB ;
L1: ACALLDISP
SJMP L1
DISP: MOV R0,#78H ;置显示缓冲区指针初值
MOV R5,#0FEH ;置字位码初值
LD0: MOV P2,R5 ;字位码送P2口
MOV A,@R0 ;待显示字符地址偏移量送A
MOVC A,@A+DPTR ;查字形码表
MOV P0,A ;字形码送P0口
ACALL DLAY ;延时 2MS
INC R0
MOV A,R5
JNB ACC.7,LD1
RL A ;字位码左移一位
MOV R5,A
AJMP LD0
LD1: RET
TAB: DB 0C0H,0F9H,0A4H,0B0H,99H,92H
DB 82H,0F8H,80H,90H,88H,83H,0C6H
DB 0A1H,86H,8EH,0FFH,0CH,89H
DB 0C8H,0C1H,7FH,0BFH
DLAY: MOV R7,#04H ;延时2ms子程序
DL1: MOV R6,#248
DL2: DJNZ R6,DL2
DJNZ R7,DL1
RET
MAIN2:CLRC
MOV C,P
JNC FF
MOV A,#03H
MOV DPTR,#TAB1
MOVX @DPTR,A
TT3:MOV R2,#02H
TT31:MOV R4,#05H
TT32:DJNZ R4,MAIN3
DJNZ R2,TT31
AJMP MAIN2
MAIN3: MOV R0,#78H ;置显示缓冲区指针初值
MOV R5,#0FEH ;置字位码初值
LD03: MOV P2,R5 ;字位码送P2口
MOV A,@R0 ;待显示字符地址偏移量送A
MOVC A,@A+DPTR ;查字形码表
MOV P0,A ;字形码送P0口
ACALL DLAY ;延时 2MS
INC R0
MOV A,R5
JNB ACC.7,LD13
RL A ;字位码左移一位
MOV R5,A
AJMP LD03
LD13: RET
TAB1: DB 0C0H,0F9H,0A4H,0B0H,99H,92H
DB 82H,0F8H,80H,90H,88H,83H,0C6H
DB 0A1H,86H,8EH,0FFH,0CH,89H
DB 0C8H,0C1H,7FH,0BFH
DLAY3: MOV R7,#04H ;延时2ms子程序
DL13: MOV R6,#248
DL23: DJNZ R6,DL23
DJNZ R7,DL13
RET
FF:AJMP MAIN
END


1楼2016-12-06 22:47回复
    大神求帮忙!!!!!


    2楼2016-12-06 22:55
    回复
      说一下电路先。


      IP属地:云南3楼2017-01-27 15:40
      回复