- 1、本文档共16页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
RS232串行通讯相关
RS232串行通相关
RS232接口定义:
(1)载波检测(DCD)
(2)接受数据(RXD) √
(3)发出数据(TXD) √
(4)数据终端准备好(DTR)
(5)信号地线(SG) √
(6)数据准备好(DSR)
(7)请求发送(RTS)
(8)清除发送(CTS)
(9)振铃指示(RI)
RS232接口针脚:
图二. RS232接头针脚定义
51的串行口通信:
串行口控制寄存器SCON(98H):
SM0,SM1:用于设置串口的工作方式,进行工作方式的选择;
SM2:多机通信控制位,应用于方式2与方式3中;
在方式0中,SM2应为0;
在方式1处于接收时,若SM2=1,则只有收到有效的停止位后,RI置1;
在方式2,3处于接收方式时:
SM2=0,收到RB8(0或1)既可使收到的数据进入SBUF,也可以激活RI。
SM2=1,收到的RB8=0时,收到的信息丢弃,不激活RI ;若收到的RB8=1时,收到的数据进入SBUF,并激活RI,进而在中断服务中将数据从SBUF读走。
REN:允许串行接收位;
REN=0,禁止串行接收;
REN=1,允许串行接收。
TB8:在方式2,3中,是发送机要发送的第九位数据;
可做奇偶校验位,由软件置位或复位。
在多机通信中,可作为区别地址帧或数据帧的标识位,一般约定地址帧时,TB8为1,数据帧时,TB8为0。
RB8: 在方式2,3中,接收来自发送机的第9位数据(TB8);
TI:发送中断标志,发送一帧结束,TI=1,必须软件清零;
RI:接收中断标志,接收一帧结束,RI=1,必须软件清零。
电源功能寄存器PCON(87H):
SMOD,波特率倍增位,在方式1、2、3时,波特率与SMOD有关:
SMOD=1时,波特率提高一倍;
复位时,SMOD=0。
串行口的四种工作方式:
方式0:8位同步移位寄存器(用于I/O扩展);为同步工作方式,不能用于双机通信,只能与外界的同步移位寄存器配套进行工作;如果想进行异步串行通信,只能使用方式1,2,3进行。使用方式0实现数据的移位输入输出时,实际上是把串行口变成为并行口使用。串行口作为并行输出口使用时,要有“串入并出”的移位寄存器(例如 CD4094或74LS164、74HC164等)配合。
图三 方式0串口通信电路连接
方式1: 10位数据的异步通信
一帧10位:起位+8位数据位+停位。
波特率:用T1作波特率发生器,B=(2SMOD/32)×T1溢出率。
发送:写入SBUF(启动发送),一帧发送完,TI=1。
接收:REN=1,RI=0且停止位为1 (或SM2=0),将接收数据装入SBUF,停止位装入RB8,并使RI=1;否则丢弃接收数据,不置位RI。
图四 方式1传输数据帧格式
方式1 发送数据帧时序
方式1 接收数据帧时序
方式2 ,3 :11位数据的异步通讯
一帧11位:起位+9位数据位+停位。
第9位数据位在TB8/RB8中,常作校验位或多机通讯标识位
波特率: 方式2:B=(2SMOD/64)×fosc 。
方式3:B=(2SMOD/32)×T1溢出率
发送:先填写TB8,写入SBUF(启动发送),发送完TI=1。
接收:REN=1,RI=0且第9位为1 (或SM2=0),将接收数据装入SBUF,第9位装入RB8,使RI=1;否则丢弃接收数据,不置位RI。
图五 方式2,3传输数据帧格式
方式2,3发送数据帧时序
方式2,3接收数据帧时序
波特率的计算:
串口初始化的具体步骤:
串口初始化的一般步骤包括:
确定T1的工作方式(编程TMOD寄存器);
计算T1的初值,装载TH1、TL1;
启动T1(编程TCON中的TR1位);
确定串行口控制(编程SCON寄存器);
串行口在中断方式工作时,还要进行中断设置(编程IE、IP寄存器)。
51串口通信相关例程:
串口初始化,晶振为11.0592M,方式1,波特率300-57600。
void InitCom(unsigned char BaudRate){unsigned char THTL;switch (BaudRate){case 1: THTL = 64; break; //波特率300case 2: THTL = 160; break; //600case 3: THTL = 208; break; //1200case 4: THTL = 232; break; //2400case 5: THTL = 244; break; //4800case 6: THTL = 250; break; /
您可能关注的文档
最近下载
- “双带头人”教师党支部书记工作室申报书.docx VIP
- DB37∕T 3452-2018 电梯使用安全风险分级管控和事故隐患排查治理体系建设实施指南.docx
- 2019年度广西优秀水利水电工程勘察设计奖候选项目表【模板】.pdf
- 11-034集控值班员(中级)第二版理论题库.docx VIP
- 传染病监测预警必修和选修答案-2024年全国疾控系统“大学习”活动.docx VIP
- 房地产营销策划 - 2020海南南丽湖度假项目推广方案.docx
- 食品经营许可证食品安全规章制度.docx
- 2016年中考英语一轮复习全册导学案.Doc
- SM-YK控制系统说明书.pdf
- 钱塘江河口水资源配置规划解决方案.doc
文档评论(0)