- 1、本文档共49页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
7章 51单片机串行口
通信的两种基本方式 串行通信的分类 波特率的概念 串行通信的制式 通信:是计算机与外界的信息交换。 两种基本方式 并行通信:所传送数据的各位同时发送或接收,信息传输线的位数与数据的位数相等。 串行通信:所传送数据的各位按顺序一位一位地发送或接收,先传送低位后送高位。 按照串行数据的时钟控制方式,串行通信可分为: 异步通信 同步通信 ②同步通信: 接收器和发射器由同一时钟源控制; 同步传输方式去掉了异步传输的起始位和停止位,只在传输数据块时先送出一个同步标志即可。 比较: 同步传输方式比异步传输方式速度快; 同步传输方式必须用一个时钟来协调收发器的工作,所以它的硬件设备复杂。 波特率:每秒钟所传送的二进制数码的位数。 单位:位/秒(bps) 波特率反映了串行通信的速率。 在异步串行通信中,波特率为每秒传送的字符数和每个字符的位数的乘积。 [例7-1]:数据传送的速率为120字符/秒,而每个字符又 包含10位二进制数,计算波特率大小和每位传送时间。 解: 波特率=120字符/秒×10位/字符 =1200位/秒=1200bps。 每一位的传送时间为波特率的倒数: T=1/1200=0.833ms。 在串行通信中,根据数据在两个站点之间的传送 方向可以分三种制式: 单工 半双工 全双工 ①单工制式 当串行口以方式2或方式3接收时, 如果SM2=1,只有当接收到的第9位数据(RB8)为“1”时,才将接收到的前8位数据送入SBUF,并置“1” RI,产生中断请求;当接收到的第9位数据(RB8)为“0”时,则将接收到的前8位数据丢弃。 如果SM2=0,则不论第9位数据是“1”还是“0”,都将前8位数据送入SBUF中,并置“1” RI,产生中断请求。 方式1时,如果SM2=1,则只有收到停止位时才会激活RI。 方式0时,SM2必须为0。 MCS-51单片机的串行通信有四种工作方式: 1、工作方式0:移位寄存器方式 SM0、SM1=00,同步通信; 数据格式为8位,低位在前,高位在后; RXD为串行数据的发送端或接收端; TXD输出同步脉冲; 每一个机器周期从RXD上发送或接收一位数据,波特率固定。 应用:移位寄位器方式多用于接口的扩展。 波特率发生器可以有两种选择: 定时器T1作波特率发生器,改变计数初值就可以改变串行通信的速率,称为可变波特率; 以内部时钟的分频器作波特率发生器,因内部时钟频率一定,称为固定波特率。 1、方式0和方式2:波特率固定 方式0中,波特率为:fosc/12; 方式2中,波特率为: 注意: 当SMOD=0时,波特率是fosc/64; 当SMOD=1时,波特率是fosc/32。 2、方式1和方式3:波特率可变 注意: T1的溢出率为每秒溢出的次数,取决于T1的计数速率和设置的初值。 实际应用中,T1作为波特率发生器时,常用方式2,即自动重载的8位定时器。TL1做计数用,TH1做初值寄存器。 设初值为x则每过(28-x)个机器周期,定时器溢出一次。 溢出周期为:(28-x)Tcy=(256-x) ×12/fosc 溢出率是溢出周期的倒数: T1溢出率=fosc/(12 × (256-x) ) 根据给定的波特率,可以计算T1的计数初值x。 [例7-2]:设51单片机串行口工作于方式1,晶振频率为 12MHz,定时器T1工作于模式2作为波特率发生器, 要求波特率为1200bit/s,SMOD=0,试计算T1的初 值和波特率误差。 答案: T1初值: x=256-2SMOD×fosc/(32×12×波特率)=256-26.04 =230=E6H 实际波特率= 2SMOD×fosc/(32×12×(256-230)) =1201.9b/s=1202bps 误差:2bps 习 题 一、填空题 1、波特率是指: 。 2、串行通信要求互相通信的两机必须保持 波特率。 3、串行通信按照数据传送方向可分为: 、 、 3种制式。 4、多机通信时,主机向从机发送的信息分为地址信息和数据 信息,靠第9位可编程TB8标志来区分,当设置TB8=1时,表 示将要发出的信息是 ;当设置TB8=0时,表示将要发 出的信息是 。 5、多机通信开始时,一般都先由主机发送地址
文档评论(0)