第8章 单片机的串行接口1.ppt

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

例8-1 在内部数据存储器20H~30H单元共有32个数据,要求采用方式1串行发送出去,传送速率为1200波特,设fosc=12MHz。 解 T1工作于方式2,作为波特率发生器,取SMOD=0,T1的时间常数计算如下: 波特率=(2SMOD/32)×(TI的溢出率) =(2SMOD/32)×(fosc/12(256-x) ) 得X=230=E6H 发送: ORG 0000H MOV TMOD ,#20H MOV TH1,#0E6H MOV TL1,#0E6H SETB TR1 MOV SCON ,#40H MOV R0,#20H MOV R7,#32 LOOP:MOV SBUF,@R0 JNB TI,$ CLR TI INC R0 DJNZ R7,LOOP SJMP $ 中断发送: …. SETB EA SETB ES MOV SBUF ,@R0 LOOP:SJMP $ AGA:DJNZ R7,LOOP CLR EA SJMP $ ORG 0023H IOIP:CLR TI POP DPH POP DPL MOV DPTR,#AGA PUSH DPL PUSH DPH INC R0 MOV SBUF,@R0 RETI PCON的字节地址为87H,无位地址, 只能字节寻址.,初始化时SMOD=0. SMOD X X X X X X X PCON 87H 8.3.2 电源控制寄存器PCON PCON的格式如下图所示,串行通信只用其中的最高位SMOD SMOD : 波特率加倍位。在计算串行方式 1、 2、 3的波特率时, SMOD= 0—不加倍; SMOD= 1— 加倍 8.4 串行口的工作方式 根据串行通信数据格式和波特率的不同, 51系列单片机的串行通信有四种工作方式,通过编程进行选择,各工作方式的特点如下: 1.方式0(移位寄位器方式) RXD为串行数据的发送端或接收端, TXD输出频率为 fosc/12的时钟脉冲。 波特率固定为fosc/12 (fosc为单片机晶振频率) 方式0的数据格式为8位,低位在前,高位在后 移位寄位器方式多用于接口的扩展,当用单片机构成系统时,往往感到并行口不够用,此时可通过外接串入并出移位寄存器扩展输出接口;通过外接并入串出移位寄存器扩展输入接口,方式 0 也可应用于短距离的单片机之间的通信。 2.方式1(波特率可变10位异步通信方式) 为10位异步通信方式,每帧数据由1个起始位“0”.八个数据位 和1个停止位“1”共10位构成.其中起始位和停止位在发送时是自动插入的。 以TXD为串行数据的发送端,T1提供位时钟,RXD为数据的接收端,由T1提供移位时钟,是波特率可变方式。 波特率=(2SMOD/32)×(TI的溢出率) =(2SMOD/32)×(fosc/12(256-x) ) 根据给定的波特率,可以计算T1的计数初值X。 11位异步发送/接收方式,即每帧数据由有一个起始位“0”,9个数据位和1个停止位“1”组成.发送时九个数据位,由SCON寄存器的TB8位 提供,接收到的第九位数据存放在SCON寄存器的RB8位. 第九位数据可作为检验位,也可用于多机通信中 识别传送的是地址还是数据的特征位。 波特率固定为(2SMOD/64)×fosc. 3. 方式2(波特率固定11位异步通信方式) 4. 方式3(波特率可变11位异步通信方式) 数据格式同方式 3,所不同的是波特率可变,计算方式同方式 1。 8.5 串行口的应用编程 串行口的波特率有两种方式: 固定波特率 可变波特率 注意:使用可变波特率时,先确定TI的计数初值,并对TI进行初始化。 串行通信的编程方式: 查询方式:查C 是否为“1”。 中断方式:如果预先开了中断,当TI、RI 为“1”,会自动产生中断。 注意:两种方式中当发送或接受数据后都要注意 清TI 或RI 。 8.5.1 查询方式 查询方式发送流程图和接收流程图见下页 T1初始化、启动T1工作 设定串行通信方式 置发送

文档评论(0)

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

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

1亿VIP精品文档

相关文档