×
单片机 > 单片机程序设计 > 详情

单片机串口通信之(多处理通信的接收程序)

发布时间:2020-05-26 发布时间:
|
;多处理器通信的写法分析

;学习多处理通信的接收程序

ADDR EQU  27H
STOP EQU  00H
;
  ORG  0000H
RESTE: MOV  R0,#00H
L0:  DJNZ R0,L0
;
START: LCALL INIT_SIO ;跳转到中断初始化程序中去
  CLR  RI   ;中断请求位清零
  SETB SM2   ;多机通信位置1 ,开始接收地址值

WAIT: JNB  RI,WAIT
  MOV  A,SBUF
  CLR  RI
  CJNE A,#ADDR,WAIT   ;查看接收到的地址是否于自己相同,不行同则据需等待
  CLR  SM2      ;多机通信位置0,开始接收数据值

DWAIT: JNB  RI,DWAIT
  MOV  A,SBUF
  CLR  RI
  SETB SM2    ;重新置SM2为1,重新开始接收地址值
  CJNE A,#STOP,WAIT ;当接收到的地址值为STOP时,结束
  SJMP START    ;程序结束后从新从开始进行运行
    


INIT_SIO:
  MOV  TMOD,#00100000B ;设置定时器1工作在工作方式2(串行口工作方式)
  MOV  TH1,#0FDH   ;波特率设置为9600b/s
  MOV  TL1,#0FDH
  SETB TR1     ;打开串行口中断
  MOV  SCON,#11010000B  ;设置串行模式设置寄存器工作在模式3,并且打开允许接收位

  RET
  
  END

关键字:单片机  串口通信  接收程序 

『本文转载自网络,版权归原作者所有,如有侵权请联系删除』

热门文章 更多
51单片机中断源的扩展方法