找回密码
 立即注册

QQ登录

只需一步,快速开始

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

编写一段程序,接收主机串行口发送来的字符,在单片机接收到‘X’的时候返回一个‘...

[复制链接]
跳转到指定楼层
楼主
ID:632599 发表于 2019-10-30 12:05 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
1
ORG    0000H
           LJMP    MAIN
           ORG     0100H
MAIN:      MOV    SP,#60H     
           MOV     TMOD,#20H   ;设置T1 为方式2
           MOV     TH1,#0FDH   ;设置波特率为9600
           MOV     TL1,#0FDH
           MOV     SCON,#50H   ;设置串口为方式1
           MOV     PCON,#00H
           SETB    TR1         ;启动定时器1
LOOP:      JNB     RI,$
           CLR     RI
           MOV     A,SBUF
           CJNE    A,#'X',FSEND
           MOV     A,#'T'
           AJMP    SEND
FSEND:     MOV     A,#'F'
SEND:      MOV     SBUF,A      ;回发数据
JNB     TI,$
           CLR     TI  
           SJMP    LOOP
           END
2、采用串行口中断方式,实现与实验2相同的功能。
                ORG     0000H
                LJMP    MAIN
                ORG     0023H
                LJMP    ZRS232
                ORG     0100H
MAIN:       CLR     EA
                MOV     SP,#60H         ;给堆栈指针赋初值
                MOV     TMOD,#20H       ;设置T1 为方式2
                MOV     TH1,#0FDH       ;设置波特率为9600
                MOV     TL1,#0FDH
                MOV     SCON,#50H       ;设置串口位方式1,允许接收
                MOV     PCON,#00H
                SETB    ES
                SETB    TR1             ;定时器1 开始计数
                SETB    EA
                SJMP    $
ZRS232:     JB      RI,ZR
ZT:         CLR     TI
                AJMP    ZEND
ZR:         CLR    RI
                MOV     A,SBUF
                CJNE    A,#'X',FSEND
                MOV     A,#'T'
                AJMP    SEND
FSEND:      MOV     A,#'F'
SEND:       MOV     SBUF,A          ;回发数据
ZEND:       RETI
                END

评分

参与人数 1黑币 +50 收起 理由
admin + 50 共享资料的黑币奖励!

查看全部评分

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

使用道具 举报

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

本版积分规则

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

Powered by 单片机教程网

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