学习情景五at89s52串行通信-powerpoint.ppt

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

学习目标: 了解串行通信的基本知识 掌握串行口的工作方式 掌握波特率的设计 掌握串行口工作方式的应用 掌握程序调试的基本方法和技巧。 技能目标: 会对串行口进行初始化。 会计算串行口通信波特率。 能够实现单片机与单片机之间、单片机和PC机之间的通信。 项目一 单片机点对点通信 第一部分 项目要求 利用AT89S52实现单片机点对点通信。要求将存放在甲机的数据存储器20H—27H单元中数据,首先在甲机上显示,然后发送到PC机,进而再发送到乙机,以实现单片机与PC机和单片机与单片机之间的通信。 第二部分 相关知识 一、串行通信基本知识 (一)串行通信的基本概念 单工形式:数据只能单方向从一端向另一端传送;如:有线电视节目。 全双工形式:同时双向传送数据,因此,全双工配置是一对单向配置,它要求两端的通信设备都具有完整和独立的发送和接收能力。 通信效率最高,适合于计算机之间的通信。 帧格式:一个字符由四部分组成:起始位、数据位、奇偶校验位和停止位。 起始位(0):位于字符帧的开头,占用一位,用来通知接收设备一个待接收的字符开始到达。 数据位:紧跟起始位后, 5~8位数据(规定低位在前,高位在后) 奇偶校验位(可省略),占一位,用于对字符传送作正确性检查,因此奇偶校验位是可选择的,共有三种可能,即奇偶校验、偶校验和无校验,由用户根据需要选定。 停止位(1)停止位用来表征字符的结束。停止位可以是1位、1.5位或2位。接收端收到停止位后,知道上一字符已传送完毕 SM0、SM1:串行口工作方式控制位,两位对应 四种工作方式,如下表所示(fosc是晶振频率)。 三、AT89S52串行口工作方式 (一)串行口波特率设计 1. 波特率 波特率的定义是每秒钟传送二进制数码的位数(亦称比特数),单位是b/s。 假设数据传送速率是120字符/s,而每个字符格式包含10个代码(1个起始位、1个终止位、8个数据位)。这时,传送的波特率为 (10b/字符)×120字符/s = 1200 b/s 每一位代码的传送时间Td为波特率的倒数。 2. 波特率设计 方式0波特率 方式0波特率 = fosc /12 方式2波特率 方式2波特率 = (2SMOD/64) × fosc SMOD为0时,波特率等于振荡器频率的1/64 SMOD为1时,波特率等于振荡器频率的1/32。 方式1和方式3的波特率 串行口方式1和方式3的波特率由定时器T1或T2的溢出率和SMOD所确定。 波特率= 2smod/32×(定时器1溢出率) 例如振荡频率fosc=11.0596MHZ,若SMOD=0,通信波特率为9600波特,则 X=256-[11.0596×106×(1+0)]/ (9600×384) =253=FDH 初始化程序如下: MOV TMOD,#20H ;设T1为定时方式2 MOV THl,#0FDH ;设定波特率为9600bit/s MOV TLl, #0FDH SETB TRl ;启动定时器 MOV PCON,#00H ;SMOD=0 MOV SCON,#50H ;串行口工作在方式1 根据硬件连接,方式0发送数据程序如下: SETB P1.0 ;选通74LS164 MOV SCON,#00H ;串口工作在方式0 MOV A,#DATA MOV SBUF,A ;发送数据 JNB TI,$ ;等待发送完? CLR TI ;清除TI中断标志 CLR P1.0 ;关闭74LS164 2. 工作方式1 工作方式1,SM0 SMl= 01,为可变波特率的8位异步通信方式。 发送数据由TXD端输出,接收数据由RXD端输入。 方式1以10位为一帧传输,设有1个起始位(0),8个数据位和1个停止位(1)。其帧格式起始位(0),8个数据位和1个停止位(1)。 【例5.1】89S52串行口按双工方式收发ASCII字符,甲机发送的字符从外部RAM的1000H开始,检测到结束字符0AH就结束发送,乙机将接收的字符放在内部RAM的30H开始的空间。要求通信的波特率为9600波特,用中断方式编写通信程序。 SETB TRl ;启动定时器1 MOV SCON,#50H ;将串行口设置为方式1, REN=l MOV DPTR,#100

文档评论(0)

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

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

1亿VIP精品文档

相关文档