单片机04,05,06.ppt

  1. 1、本文档共98页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
单片机04,05,06

* 01#从机相应主机呼叫的联络程序: MVSTR: MOV SCON,#0B0H ; 方式2,SM2=1,REN=1,允许接收 SR1: JBC RI,SR2 ; 等待主机呼叫(监听状态) SJMP SR1 SR2: MOV A,SBUF ;取出呼叫地址 XRL A,#01H ;是呼叫本从机吗? JNZ SR1 ;不是,继续监听 CLR SM2 ;是,取消监听状态 MOV A, #01H MOV SBUF, A ;发出地址应答信号 WBT1: JBC TI,SR3 ;等待发送应答信号完成 SJMP WBT1 SR3: JBC RI,SR4 ;等待主机发送 SJMP SR3 SR4: JNB RB8,BTT ;是复位信号吗?不是则跳至发送数据程序处 SETB SM2 ;是复位信号,恢复监听状态 SJMP SR1 ;返回继续监听 BTT: MOV A,SBUF ;联络成功,取主机发送的数据 小 结 1、主机的SM2=0,从机的SM2=1; 2、主机向从机发送的地址码第9位为“1”; 3、所有的从机SM2=1、RB8=1、RI=0,接收主机的地址进入中断服务程序。在程序中比较、确认是否为被寻从机。 4、被寻从机将SM2清零,以保证能以查询的方式接收主机的数据、命令。同时向主机返回地址供主机核实。没有被选中的从机保持SM2=1并退出服务程序。 5、被寻中的从机以查询RI的方式与主机之间进行数据交换(注意:因为SM2=0时,RI虽然能被激活,但不能引发中断),完成后,重新将SM2置1。 模式2、3使用时要注意的问题 在模式2、3中,可以实现较为特殊的通讯方式,如带校验位的9位传送、多机通讯。注意:当SM2=0时,只能采用查询方式。 功能 SM2 第9位 工作方式 带校验位的9位数传送 SM2=0 校验位 以查询(RI)的方式接收数据 多机 通讯 主机 SM2=0 地址码:TB8=1 数据、命令时=0 以查询的方式工作 从机 SM2=1 未选中时SM2不变 以中断的方式接收地址 选中后SM2=0 以查询的方式与主机通讯 OVER ! * SM0 SM1 SM2 REN TB8 RB8 TI RI SCON ? SM0,SM1:串行口4种工作方式的选择位。 0 0 方式0:8位移位寄存器I/O,波特率固定为 fosc/12 0 1 方式1:8位UART(1+8+1位), 波特率可变,按公式计算 1 0 方式2:9位UART(1+8+1+1位), 波特率固定=fosc × 1/32或1/64 1 1 方式3:9位UART (1+8+1+1位), 波特率可变,按公式计算 ? SM2:串行口多机通信控制位 (作为方式2、方式3的附加控制位) 串行口控制寄存器SCON(98H) P.96 ? RI,TI:串行口收/发数据申请中断标志位 =1 申请中断; =0 不申请中断 ? TB8:方式2、3中,是要发送的第9位数据。 多机通信中,TB8=0 表示发送的是数据; TB8=1 表示发送的是地址。(奇偶校验) ? RB8:在方式2、3中,是收到的第9位数据。 在多机通信中,用作区别地址帧/数据帧的 标志。(奇偶校验) ? REN:串行口接收允许控制位 = 1 表示允许接收; = 0 禁止接收。 SM0 SM1 SM2 REN TB8 RB8 TI R1 SCON SMOD — — — GF1 GF0 PD 1DL 电源控制寄存器 PCON(97H) P.96

文档评论(0)

2266670 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档