微机原理 第七章讲解.ppt

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

b.设有一个多机系统如图所示,其从机地址定义为 00H,01H,02H ① 从机系统由从机初始化为:串行口为方式2/3 接收,且SM2=1,允许串行口中断。 ② 在主机和某一个从机通信之前,先将从机地址 发送给各从机,接着才传送数据。且主机发送 地址时的第9位为1,发送数据时的第9位为0。 ③ 当主机向从机发送地址时,由于各从机接收到 的第9位信息为1,且从机的SM2=1,所以将置 “1”RI,其地址信息将送入各从机,此时,各 从机将可判断主机送来的地址是否和本系统地 址相符,若为本机地址,则置“0”SM2,将准 备接收主机的的数据(或命令),若地址不一 致,则保持SM2=1不变。 ④ 接着主机发送数据,且第9位为0,此时各从机接 收到的RB8为“0”,只有前面地址相符的从机(因 它的SM2=0),才会激活RI中断标志,接收主机的 数据,其余从机由于SM2=1,RB8为0将不会激活 RI,所接收的数据将丢失。从而实现了主机和从 机的一对一的通信。(从机和从机的通信可通过主 机来实现) 三、MCS-51多机通信程序 以典型的PC机和MCS-51构成的主从式多机系统(PC机为主机MCS-51单片机为从机或前沿机)为例,如图: 常用调试程序:串口调试精灵 设MCS-51晶振为6MHz设置波特率为2400,以方式3进行多机串行通信为例,编程方法如下: MOV TMOD,#20H MOV TH1, #0F9H ;设置波特率为2400 MOV TL1, #0F9H MOV SCON,#0F0H;设置串行口为方式3, ; SM2=1,允许接收 ANL PCON,#7FH SETB TR1 SETB ES ;允许串行口中断 SETB EA WAIT:SJMP WAIT ;听号 当接收到地址帧“呼号”且地址帧与本机地址相符时,要置SM2为0以便准备接收数据帧,同时需要将本机地址发回作为应答,建立与主机的联络。编程如下: SIO:CLR RI PUSH PSW PUSH ACC MOV A,SBUF ;接收串行数据 XRL A,#ADDR ;判断是否与本机地址 相符 JNZ BACK ;不相符则返回 CLR SM2 ;相符则SM2为0且发回本机地址 MOV SBUF,A WAIT:JNBTI,WAIT CLR TI BACK:POP ACC POP PSW RETI 三、波特率设计 串行口被定义为方式0发送接收时,其波特率为 f/12,定义为方式2时,其波特率为f*2SMOD/64(32)。 方式1/3的波特率和T1的溢出率有关,下面我们来 讨论方式1/3的波特率设计。 1.T1的溢出率计算 A.T1定时器工作于方式0: 溢出率n=f/12*(213-Z + NR)-1 其中Z为初值,NR为溢出后恢复初值的周期数。 B.T1定时器工作方式1: 溢出率n=f/12*(216-Z + NR)-1 C.T1定时器工作方式2: 溢出率n=f/12*(28-Z )-1 (自动恢复初值) D.波特率 波特率=溢出率/N PCON的SMOD=0时N=32 PCON的SMOD=1时N=16 2.方式1/3波特率设计 波特率设计时,先设定串行口波特率和T1的工作方 式,然后计算出T1的初值。 例如:设波特率为2400,晶振频率为11.0592MHz, T1选方式2 SMOD=0 则:∵ n/32 = 2400 ∴ n = 76800 ∵ n = f/12*(256-Z)-1 ∴ Z = 256-11.0592*106/12*76800 = 244 = F4H 通常T1选用方式2所得的波特率比较精确,初值计 算也方便。 《微机原理及应用》教学课件 OVER ! 根据上图编写的通过串行口和 74LS16

文档评论(0)

挑战不可能 + 关注
实名认证
内容提供者

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

1亿VIP精品文档

相关文档