找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
查看: 1124|回复: 2
打印 上一主题 下一主题
收起左侧

单片机汇编语言串行口通信好像转不了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, 下载次数: 40)

串行.PNG
分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏 分享淘帖 顶 踩
回复

使用道具 举报

沙发
ID:860332 发表于 2020-12-15 11:36 | 只看该作者
看看两边的波特率是否一致
回复

使用道具 举报

板凳
ID:938838 发表于 2021-6-17 21:34 | 只看该作者
1714461639 发表于 2020-12-15 11:36
看看两边的波特率是否一致

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

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

手机版|小黑屋|51黑电子论坛 |51黑电子论坛6群 QQ 管理员QQ:125739409;技术交流QQ群281945664

Powered by 单片机教程网

快速回复 返回顶部 返回列表