第7章串行口祥解.ppt

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

* * 7.3.2 方式1:10位帧,用于双机通信 起始位:1位 数据位:8位 停止位:1位 方式1波特率=(2SMOD/32)×定时器T1的溢出率 * * 串行发送:(写SBUF启动发送过程) 串行接收:(置REN=1启动接收过程) * * 当一帧数据接收完,须同时满足两个条件,接收才真正有效。 ⑴ RI=0,即上一帧数据接收完成时,RI=1发出的中断请求已被响应,SBUF中的数据已被取走,说明“接收SBUF”已空。 ⑵ SM2=0或收到的停止位=1(方式1时,停止位已进入RB8),则收到的数据装入SBUF和RB8(RB8装入停止位),且置“1”中断标志RI。 若这两个条件不同时满足,收到的数据将丢失。 * * 7.3.3 方式2和方式3:11位帧,用于多机通信 起始位:1位 数据位:9位 停止位:1位 方式2波特率= (2SMOD/64)×fosc 方式3波特率=(2SMOD/32)×定时器T1的溢出率 * * 串行发送:(写SBUF启动发送过程) 串行接收:(置REN=1启动接收过程) * * 方式2接收 SM0、SM1=10,且REN=1。 在接收器完第9位数据后,需满足两个条件,才能将接收到的数据送入SBUF。 (1)RI=0,意味着接收缓冲器为空。 (2)SM2=0或接收到的第9位数据位RB8=1时。 若不满足两个条件,接收的信息将被丢弃。 * * 7.4 串行通信波特率设置 波特率的确定 波特率的计算 固定波特率: 方式0波特率= fosc/12 方式2波特率=(2SMOD/64)* fosc 可变波特率: 方式1波特率=(2SMOD/32)*(T1溢出率) 方式3波特率=(2SMOD/32)*(T1溢出率) T1 溢出率 = fosc /{12×[256 -(TH1)]} * * 波特率的选择 波特率要选择标称值,由于TH1的初值是整数,为了减小波特率计算误差,晶振频率要选为11.0592MHz。 方式1和方式3波特率与TH1初值的对应关系: 波特率/(b/s) 19.2 k 9600 4800 2400 1200 TH1初值 FDH FDH FAH F4H E8H SMOD 1 0 0 0 0 * * 例7-1 若8031单片机的时钟振荡频率为11.0592MHz,选用T1为方式2定时作为波特率发生器,波特率为2400b/s,求初值。 * * 串行口初始化步骤 确定T1的工作方式(TMOD) 计算T1的初值,装载TH1、TL1 启动T1(置位TR1) 确定串行口工作方式(SCON) 串口中断设置(IE、IP) 7.5 串行通信应用举例 7.5.1 串行口方式0的应用 * * 【例7-2】用51单片机串行口外接164串入一并出移位寄存器扩展8位并行口,如图7.11所示。8位并行口的每位都接一个发光二极管,要求发光二极管从左到右以一定延迟轮流显示,并不断循环。设发光二极管为共阴极接法。 * * 利用单片机串口的并行I/O扩展 串口无通信需求时! * * DISPLY: MOV R0,#30H MOV R7,#4 NE: MOV A,@R0 MOV DPTR,#TAB MOVC A,@A+DPTR MOV SBUF,A INC R0 DJNZ R7,NE RET tab: db 21h,0f3h,15h,51h db 0c3h,49h,09h,0f1h db 01h,0c1h,81h,0dbh db 1fh,13h,0ch,8bh db 0ffh 7.5.2 串行口方式1的发送和接收 【例7-3】单片机串行口按双工方式收发ASCII字符,最高位用来作奇偶校验位,采用奇偶校验方式,要求传送的波特率为1200b/s。编写有关通信程序。 * * * * 例7-4 设内部RAM的50H~5FH中数据从串行接口输出,串行接口以方式2工作,TB8做奇偶校验位,要求写入TB8发送。源程序如下: * * START:MOV SCON,#80H ;串行接口工作方式2 MOV PCON,#80H ;设波特率为1/32振荡频率 MOV R0,#50H ;设地址指针 MOV R7,#10H ;设数据块长度 LOOP1: MOV A,@R0 ;取数据 MOV C,P ;奇偶校验位送TB8 MOV TB8,C MOV SBUF,A ;数据送SBUF,启动发送 WAIT: JBC TI,LOOP2 ;判断发送中断标志是否为1,直到TI=1时转移。且TI清为0 SJMP WAIT L

文档评论(0)

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

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

1亿VIP精品文档

相关文档