版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
6.2.2设置工作方式《单片机应用技术(C语言版)》深圳职业技术学院设置串行通信的工作方式设置波特率启动波特率发生器123单片机串行口的初始化:SM0SM1SM2RENTB8RB8TIRI0x9F0x9E0x9D0x9C0x9B0x9A0x990x981.设置串行通信的工作方式
01000000SCON=0x40;SCONSM0SM1工作方式功能说明波特率00方式08位同步移位寄存器常用于扩展I/O口fosc/1201方式110位UART8位数据、起始位、结束位可变(取决于定时器1溢出率和SMOD)0方式211位UART8位数据、起始位、奇偶校验位、结束位fosc/64或fosc/32(取决于SMOD)11方式311位UART8位数据、起始位、奇偶校验位和结束位可变(取决于定时器1溢出率和SMOD)SM0SM1SM2RENTB8RB8TIRISCONSM0SM1SM2RENTB8RB8TIRISCONREN:允许串行接收位。REN=1时,允许接收,REN=0时,禁止接收。REN=1;SM0SM1SM2RENTB8RB8TIRISCONTI:发送中断标志位方式0:发送完第8位数据时,TI由硬件置位。方式1、2、3:TI=1是发送完一帧数据的标志SBUF=send[i];//发送第i个数据while(TI==0);//查询等待发送是否完成TI=0;
//发送完成,TI由软件清0SM0SM1SM2RENTB8RB8TIRISCONRI:接收中断标志位REN=1; //接收允许while(RI==0);//查询等待接收标志为1,表示接收到数据buffer[i]=SBUF;//接收数据RI=0;
//RI由软件清0SM0SM1SM2RENTB8RB8TIRISCON控制寄存器SCONSM0SM1SM2RENTB8RB8TIRI工作方式选择位多机通信控制位允许串行接收位接收数据的第9位发送数据的第9位接收中断标志位发送中断标志位0x9F0x9E0x9D0x9C0x9B0x9A0x990x98电源及波特率选择寄存器PCONSMODGF1GF0PDIDLPCONSMOD为波特率选择位。SMOD=1:波特率×2SMOD=0:波特率不变
串行口工作方式1
方式1是单机通信方式,数据帧包括一位起始位,8位数据位和一位停止位,其10位帧格式如图所示。波特率由定时器T1和SMOD位确定。
发送过程:(1)串口初始化。设置工作方式(帧格式)、设置波特率(传输速率)、启动波特率发生器(T1)。
SCON=0x40;//定义串行口工作于方式1
TMOD=0x20;//定时器T1工作于方式2 TL1=0xf4;//波特率为2400bps TH1=0xf4; TR1=1; (2)发送数据。将要发送的数据送入SBUF,即可启动发送。此时串口自动按帧格式将SBUF中的数据组装为数据帧,并在波特率发生器的控制下将数据帧逐位发送到TXD端(最低位先发)。当发送完一帧数据后,单片机内部自动置中断标志TI为1。
SBUF=send[i];//发送第i个数据(3)判断一帧是否发送完毕。判断TI是否为1,是则表示发送完毕,可以继续发送下一帧;否则继续判断直至发送结束。while(TI==0);//查询等待发送是否完成(4)清零发送标志位TI。
TI=0;接收过程:(1)串口初始化。设置工作方式(帧格式)、设置波特率(传输速率)、启动波特率发生器(T1)、允许接收。SCON=0x40;//定义串行口工作于方式1TMOD=0x20;//定时器T1工作于方式2 TL1=0xf4;//波特率为2400bps TH1=0xf4; TR1=1; REN=1;//串行口允许接收数据
(2)判断一帧是否接收完毕。数据从接收端RXD(最低位先收)一位一位接收,判断RI是否为1,是则表示接收完毕,把数据存放在SBUF中,可以继续接收下一帧;否则继续判断直至接收结束。while(RI==0);//查询等待接收是否完成(2)数据存放。将接收到SBUF中的数据保存在数组中。
buffer[i]=SBUF;//接收第i个数据(4)清零接收标志位RI。
RI=0;
串行口工作方式2
方式2的数据帧是11位——用于多机通信格式为:一个起始位,8个数据位,一个可编程位和一个停止位,其11位帧格式如图所示。波特率由SMOD位确定。
可编程位在SCON的TB8和RB8位中,用于奇偶校验或多机通讯标识。可编程位可以由软件置1或清0;发送时在TB8中,连同八位数据通过串口发出。收到数据后,数据存入接收SBUF内,可编程位存入RB8中。SM0SM1SM2RENTB8RB8TIRISCON可编程位还可用作为对接收到的数据进行校验使用,常用校验方法:在可编程位装入发送数据的奇偶校验位。
举例:发送数据0x85(10000101B),发送数据包含二进制数1的个数为奇数,因此奇偶校验位P=1,在发送数据0x85时,将P=1赋值到可编程位TB8,连同数据共同发出。
对方接收后,只要将实际数据的奇偶关系与RB8进行对比,即可知道收发过程是否有误。SM0SM1SM2RENTB8RB8TIRISCON方式2波特率取决于PCON中SMOD位的值:SMOD=0时,波特率为fosc的1/64,即波特率=fosc/64;SMOD=1时,波特率为fosc的1/32,即波特率=fosc/32。波特率=(2SMOD/64)×fosc
串行口工作方式3
方式3的数据帧是11位——用于多机通信格式为:一个起始位,8个数据位,一个可编程位和一个停止位,其11位帧格式如图所示。波特率由定时器T1和SMOD位确定。
可编程位在SCON的TB8和RB8位中,用于奇偶校验或多机通讯标识。可编程位可以由软件置1或清0;发送时在TB8中,连同八位数据通过串口发出。收到数据后,数据存入接收SBUF内,可编程位存入RB8中。SM0SM1SM2RENTB8RB8TIRISCON可编程位还可用作为对接收到的数据进行校验使用,常用校验方法:在可编程位装入发送数据的奇偶校验位。
举例:发送数据0x85(10000101B),发送数据包含二进制数1的个数为奇数,因此奇偶校验位P=1,在发送数据0x85时,将P=1赋值到可编程位TB8,连同数据共同发出。
对方接收后,只要将实际数据的奇偶关系与RB8进行对比,即可知道收发过程是否有误。
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2026年会计财务岗位面试题及答案
- 2026年公务员面试试题及答案
- 2026年福建摩托车考试历年真题及答案(典优)
- 临时占道施工交通影响评价
- 2025华夏银行校园招聘笔试历年典型考题及考点剖析附带答案详解
- 2025北京世纪安泰建筑工程设计有限公司西安分公司招聘21人笔试历年典型考点题库附带答案详解
- 建筑工程地基基础施工方案
- 2025内蒙古能源集团招聘(114人)笔试历年备考题库附带答案详解
- 2025内蒙古呼和浩特永诚财产保险股份有限公司招聘3人笔试历年常考点试题专练附带答案详解
- 应急物资储备仓库建设项目水资源论证报告书
- 江苏省无锡市2025-2026学年五年级下学期6月数学期末调研试题(试卷+答案)
- 湖南省2026年全省政工专业知识考试(政治+中国近现代史)试题解析及核心考点
- 2026年国开电大法学本科《国际经济法》期末考试试题及答案
- 分班考小升初 2026年辽宁省大连市金普新区语文仿真模拟试卷 有答案
- 2026年高考语文全国一卷作文讲评:“词语是表达思想情感的载体”
- 2025年安徽合肥市初二学业水平地理生物会考题库及答案
- 2026青岛城运控股集团有限公司招聘31人考试备考题库及答案解析
- Unit 6 课时8 Project(大单元课时课件)英语新教材人教版八年级下册
- 2026中国抗菌药物合理使用现状及监管政策影响分析报告
- 体育概论全部课件
- 《国际货币制度》课件
评论
0/150
提交评论