解决马上结分100分

asom 2005-04-01 11:34:43
主程序:
MOV TMOD,#20H ;定时器1设为方式2
MOV TL1,#0F4H ;定时器初值
MOV TH1,#0F4H ;重装值
SETB TR1 ;启动定时器1
MOV SCON,#50H ;串行口设为方式1,REN=1
MOV R0,#20H ;发送数据区首址
MOV R1,#40H ;接收数据区首址
ACALL SOUT ;输出
LOOP:SJMP LOOP ;等待中断
中断服务子程序:
ORG 0023H ;串行口中断入口地址
AJMP SBR1 ;转中断服务程序

SBR1: JNB RI,SEND ;TI=1,为发送中断
ACALL SIN ;RI=1,为接收中断
SJMP NEXT ;转至返回入口
SEND: ACALL SOUT ;调用发送子程序
NEXT: RET
发送子程序:
SOUT: MOV A,@R0 ;取发送数据到A
MOV C,P ;奇偶标志给C
CPL C ;为奇校验作准备
MOV ACC.7,C ;将校验们加到高位
INC R0 ;修改发送指针
MOV SBUF,A ;发送
CLR TI ;清发送中断标志
RET
接收子程序:
SIN: MOV A,SBUF ;读出接收内容
MOV C,P ;取出校验位
CPL C ;奇校验
ANL A,#7FH ;删去校验位
MOV @R1,A ;写入接收单元
INC R1 ;修改接收指针
CLR RI ;清接收中断标志
RET
...全文
116 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
SeaDragonH 2005-04-03
  • 打赏
  • 举报
回复
最讨厌这样的程序,一点格式都没有!^-^
asom 2005-04-02
  • 打赏
  • 举报
回复
哪里出错了?哪里出错了
tgz501 2005-04-02
  • 打赏
  • 举报
回复
把问题提出来在问吧
winstarr 2005-04-01
  • 打赏
  • 举报
回复
你要问什么?
suyun9329 2005-04-01
  • 打赏
  • 举报
回复
看不懂

21,458

社区成员

发帖
与我相关
我的任务
社区描述
汇编语言(Assembly Language)是任何一种用于电子计算机、微处理器、微控制器或其他可编程器件的低级语言,亦称为符号语言。
社区管理员
  • 汇编语言
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧