标题: 单片机汇编语言串行口通信好像转不了ASCII码,发送的数据很乱 [打印本页]

作者: 黄冬梅    时间: 2020-12-7 00:04
标题: 单片机汇编语言串行口通信好像转不了ASCII码,发送的数据很乱
初学者,好像转不了ASCII码,发送的数据很乱,看不明白。或者有相关实验的资料推一下也行,谢谢大家。
求修改代码:
ORG  0000H
AJMP MAIN
ORG  0023H
AJMP RT
ORG 0030H

MAIN:MOV R2,#00H
     MOV R5,#00H
      MOV TMOD,#20H  
     MOV SCON,#50H
     MOV TH1,#0F3H
     MOV TL1,TH1
     MOV PCON,#00
     SETB EA;×üÖD¶Ï
     SETB ES;′®DDÖD¶Ï
     SETB TR1;′ò¿a¶¨ê±

LOOP:
     LCALL DISPLAY        ;
     MOV A,P1
     ANL A,#00001111B;
     MOV R5,A
     MOV SBUF,A
     JNB P1.5,DONE
     SJMP  LOOP

DISP:
     CLR RI
     MOV A,SBUF
     MOV R6,A
     CLR CY
     CLR F0
     SUBB A,#58
     MOV F0,C  ;
     JNB F0, _A_F
_0_9:
     MOV A,R6
     SUBB A,#48
     MOV R5,A
     LJMP LOOP
_A_F:
     MOV A,R6
     SUBB A,#55
     MOV R5,A
     LJMP LOOP

RT:                        
    JBC TI,L0;
    PUSH  ACC
    PUSH  PSW
    CLR RI;
    MOV A,SBUF
    MOV R2,A;
    POP   PSW
    POP   ACC
    ACALL  DISPLAY1
  L0:
       RETI


DISPLAY:
    MOV DPTR,#TAB
    MOV A,R5
    MOVC A,@A+DPTR
    MOV DPTR,#1110000000000100B
    MOVX @DPTR,A
    MOV DPTR,#1110000000000010B
    MOV A,#00010000B
    MOVX @DPTR,A
    ACALL DELAY5MS
    RET

DISPLAY1:
    MOV DPTR,#TAB
    MOV A,R2
    MOVC A,@A+DPTR
    MOV DPTR,#1110000000000100B
    MOVX @DPTR,A
    MOV DPTR,#1110000000000010B
    MOV A,#00001000B
    MOVX @DPTR,A
    ACALL DELAY5MS
    RET

DELAY5MS:
        MOV R4,#250
        MOV  R5,#10
       L6: DJNZ R4,$
        DJNZ R5,L6
                RET

TAB:DB 3FH,06H,5BH,4FH,66H,6DH,7DH,07H,7FH,6FH,77H,7CH,39H,5EH,79H,71H

DONE:
END

串行.PNG (140.98 KB, 下载次数: 54)

串行.PNG

作者: 1714461639    时间: 2020-12-15 11:36
看看两边的波特率是否一致
作者: MOWANG158    时间: 2021-6-17 21:34
1714461639 发表于 2020-12-15 11:36
看看两边的波特率是否一致

两边如果波特率不一致,是不是仍然能传送,只是传送的数据出现问题错乱而已?




欢迎光临 (http://www.51hei.com/bbs/) Powered by Discuz! X3.1