单片机串口通信(RS232)精选.ppt

  1. 1、本文档共9页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
11、串口实验 有两个物理上独立的接收、发送缓冲器SBUF,它们占用同一地址99H ;接收器是双缓冲结构 ;发送缓冲器,因为发送时CPU是主动的,不会产生重叠错误。 串行通信的数据结构 异步通信的特点:不要求收发双方时钟的严格一致,实现容易,设备开销较小,但每个字符要附加2~3位用于起止位,各帧之间还有间隔,因此传输效率不高。 工作方式寄存器SCON 工作方式寄存器PCON 波特率的概念 串口的操作步骤: 先设置波特率: 设置定时器T1为工作方式2(设置TMOD寄存器) 给计数器赋初值(工作方式2会自动重装) 设置串口工作方式: 设置SCON(如果允许) 如果使用中断方式,那么打开相应的中断和总中断。 打开定时器T1,开始产生波特率。 设置TRx /************************************************************** * 函数名 :UsartConfiguration() * 函数功能 :设置串口 * 输入 : 无 * 输出 : 无 **************************************************************/ void UsartConfiguration() { SCON=0X50; //设置为工作方式1 TMOD=0X20; //设置计数器工作方式2 PCON=0X80; //SMOD=1,波特率加倍 TH1=0XF3; //计数器初始值设置,注意波特率是4800的 TL1=0XF3; ES=1; //打开接收中断 EA=1; //打开总中断 TR1=1; //打开计数器 } * * 普中科技 单片机开发仪视频教程 普中科技 单片机开发仪视频教程 普中科技 单片机开发仪视频教程 RI TI RB8 TB8 REN SM2 SM1 SM0 功能 D0 D1 D2 D3 D4 D5 D6 D7 位 RI:接收中断标志位 接收结束时,会由硬件置1,向CPU发出中断请求。(要由软件复位) TI:发送中断标志位 发送结束时,会由硬件置1,向CPU发出中断请求。要由软件复位) TB8:用来存放发送的第9位。 RB8:用来存放接收的第9位。 REN:是串行接收允许位 0时:允许串行接收 1时:禁止串行接收 普中科技 单片机开发仪视频教程 SM2:多机通信控制位。、 因为多级通信是在工作方式2和工作方式3下进行的,因此 SM2主要用在工作方式2和工作方式3。 当SM2=0时:不论接收的第9位是0还是1,都接收数据,产 生中断。当SM2=1时:只有在接收到的第9位为1时,才接收 数据,并产生中断;而如果接收到的第9位为0时,则将接收 到的数据丢弃,不产生中断。 普中科技 单片机开发仪视频教程 - - - - - - - SMOD 功能 D0 D1 D2 D3 D4 D5 D6 D7 位 PCON是没有位寻址的,也就是说不能直接操作SMOD要直接操作PCON寄存器。 SMOD:是波特率是否加倍的选择位。 0时:波特率不加倍。 1时:波特率加倍。 普中科技 单片机开发仪视频教程 波特率的定义是:串行口每秒钟发送的位数称为波特率。 比如说2400的波特率就是没秒钟发送2400个位数。 串行口的波特率是用定时器T1作为波特率发生器的,这是定时器自动设置在工作方式2(可自动重装初值)。 波特率=(2*SMOD)/32*定时器T1的溢出率 定时器T1的溢出率=单片机内部时钟频率/(256-X) X是定时器的初值 波特率=(2*SMOD)/32*(单片机内部时钟频率/(256-X)) 普中科技 单片机开发仪视频教程 普中科技 单片机开发仪视频教程 普中科技 单片机开发仪视频教程

文档评论(0)

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

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

1亿VIP精品文档

相关文档