




已阅读5页,还剩45页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
2020 4 7 1 第7章89C51的串行口 基本概念 7 1 串行口的结构 7 2 串行口的工作方式 7 3 串行口的编程和应用 7 4 2020 4 7 2 7 1串行通信基础 串行通信的概念 所谓串行通讯是指外设和计算机间使用一根数据信号线一位一位地传输数据 每一位数据都占据一个固定的时间长度 串行 是指外设与接口电路之间的信息传送方式 CPU与接口之间仍按并行方式工作 2020 4 7 3 信息传输的检错和纠错 串行数据在传输过程中 由于干扰可能引起信息的出错如何发现传输中的错误 叫检错 发现错误后 如何消除错误 叫纠错最简单的检错方法是奇偶校验 即在传送字符的各位之外 再传送1位奇 偶校验位 可采用奇校验或偶校验 奇校验 所有传送的数位 包含字符的各个数位和校验位 中 1的个数为奇数偶校验 所有传送的数位 包含字符的各个数位和校验位 中 1的个数为偶数 奇偶校验能够检测出1位误码 但是不能纠错 2020 4 7 4 串行数据传输方式 通讯双方能同时进行发送和接收操作 只有1根数据线传送数据信号 通讯双方不能同时在两个方向上传送 只允许数据按照一个固定的方向传送 单工方式 半双工方式 全双工方式 2020 4 7 5 传输速率 在串行通讯中 用波特率来描述数据的传输速率波特率 即每秒钟传送的二进制位数 简写为bps 国际上规定了一个标准波特率系列 110 300 600 1200 1800 2400 4800 9600 14 4Kbps 19 2Kbps 28 8Kbps 33 6Kbps 56Kbps 2020 4 7 6 传输速率 在串行通信中 无论收发都必须有时钟脉冲信号对传送的数据进行定位和同步控制 接收时钟 发送时钟是波特率的倍数 波特率因子 例 波特率 9600bps 波特率因子 16 则接收时钟和发送时钟频率 9600 16 153600Hz波特率因子 16 表明16个时钟脉冲传送1位 2020 4 7 7 信号的调制和解调 数字信号的频带宽 而普通通信线路频带较窄 如电话线频带范围仅300 3400Hz所以采用普通通信线路进行远程数据通信时 需要在发送端用调制器 Modulator 把数字信号转换为模拟信号 模拟信号经通信线路传送到接收方 接收方再以解调器 Demodulator 把模拟信号变为数字信号 大多数情况下 调制器和解调器合在一个装置中 称为调制解调器 Modem 2020 4 7 8 在数据通讯中 Modem起着传输信号的作用 是一种数据通讯设备 简称DCE接收设备和发送设备称为数据终端设备 简称DTE 微机串行通信接口电路 如8250 8251为DTE 信号的调制和解调 2020 4 7 9 串行通信的类型 串行通讯可以分为两种类型 同步通讯 异步通讯 异步通讯 一个字符一个字符地传输 每个字符一位一位地传输 传输一个字符时 以起始位开始 然后传输字符本身的各位 接着传输校验位 最后以停止位结束该字符的传输 一次传输的起始位 字符各位 校验位 停止位构成一组完整的信息 称为帧 Frame 帧与帧之间可有任意个空闲位 2020 4 7 10 异步通讯的信息格式 起始位逻辑01位数据位逻辑0或15位 6位 7位 8位校验位逻辑0或11位或无停止位逻辑11位 1 5位或2位空闲位逻辑1任意数量 串行通信的类型 异步通讯 2020 4 7 11 例 传送8位数据45H 0100 0101B 奇校验 1个停止位 则信号线上的波形为 串行通信的类型 异步通讯 2020 4 7 12 同步通讯 靠同步字符完成收发双方同步 多个字符成组传送 在每组信息的开始 加上同步字符 字符组和同步字符以及需要的其他字符构成一个信息帧 同步字符字符1字符2 字符n校验字符 数据块 串行通信的类型 2020 4 7 13 串行通信的接口标准 在串行通信中 DTE和DCE之间的连接要符合接口标准计算机通信中使用最普遍的是RS 232C标准PC机上的COM1 COM2接口 就是RS 232C接口 使用9针和25针连接器 2020 4 7 14 串行通信的接口标准 TxD发送数据 DTE DCE RxD接收数据 DCE DTE SG信号地DSRDCE就绪 DCE DTE DTRDTE就绪 DTE DCE RTS请求发送 DTE DCE CTS清除发送 DCE DTE DCE允许DTE发送 该信号是对RTS信号的回答 DCD数据载波检出 DCE DTE 当本地DCE收到对方的DCE设备送来的载波信号时 使DCD有效 通知DTE准备接收 并且由DCE将接收到的载波信号解调为数字信号 经RxD线送给DTE RI振铃信号 DCE DTE 当DCE收到交换机送来的振铃呼叫信号时 使该信号有效 通知DTE已被呼叫 2020 4 7 15 RS 232C电器特性及接口信号1 电气特性在数据线TXD和RXD上 逻辑1 3V 15V逻辑0 3V 15V2 可以用电缆线直接连接标准RS232端口 但通信距离较近 12m 若距离较远 可附加调制解调器 MODEM 2020 4 7 16 串行通信的接口标准 RS 232 C采用负逻辑 且信号电平与TTL不兼容 串行接口芯片8250 8251均使用TTL电平 应使用电平转换电路与RS 232C连接器连接 MC1488 TTL电平 RS232电平 用于发送方 MC1489 TTL电平 RS232电平 用于接收方 2020 4 7 17 串行通信的接口标准 采用Modem DCE 和电话网通信时的信号连接 2020 4 7 18 串行通信的接口标准 采用专用线通讯时的信号连接 2020 4 7 19 串行通信的接口标准 无Modem的标准连接 2020 4 7 20 串行通信的接口标准 无Modem的最简连接 2020 4 7 21 典型的串行接口的结构 由于CPU与接口之间按并行方式传输 接口与外设之间按串行方式传输 因此 在串行接口中 必须要有 接收移位寄存器 串 并 和 发送移位寄存器 并 串 2020 4 7 22 7 2串行口的结构 1个全双工串口 通信或接口扩展 接收发送缓冲器逻辑同名 物理分开 接收双缓冲 2020 4 7 23 7 2 1串行口控制寄存器SCON SM0和SM1 工作方式选择位 2020 4 7 24 SM2 多机通信控制位 当串行口以方式2或方式3接收时 如果SM2 1 只有当接收到的第9位数据 RB8 为 1 时 才将接收到的前8位数据送入SBUF 并置 1 RI 产生中断请求 当接收到的第9位数据 RB8 为 0 时 则将接收到的前8位数据丢弃 如果SM2 0 则不论第9位数据是 1 还是 0 都将前8位数据送入SBUF中 并置 1 RI 产生中断请求 在方式1时 如果SM2 1 则只有收到停止位时才会激活RI 在方式0时 SM2必须为0 REN 串行接收使能位 软件置1时 启动接收过程 2020 4 7 25 TB8 多机方式发送的第9位 方式2和3时 TB8是要发送的第9位数据 可作为奇偶校验位使用 也可作为地址帧或数据帧的标志 1为地址帧 0为数据帧 RB8 多机方式接收的第9位 方式2和3时 RB8存放接收到的第9位数据 在方式1 如果SM2 0 RB8是接收到的停止位 在方式0 不使用RB8 TI 发送中断标志位 要由软件清0 RI 接收中断标志位 要由软件清0 2020 4 7 26 7 2 2电源控制寄存器PCON SMOD 波特率倍增位 在串行口方式1 方式2 方式3时 波特率与SMOD有关 当SMOD 1时 波特率提高一倍 复位时 SMOD 0 例如 方式1的波特率的计算公式为 方式1波特率 2SMOD 32 定时器T1的溢出率 2020 4 7 27 7 3串行口的4种工作方式 方式0 同步移位寄存器 用于扩展并行口 RXD 输入或输出引脚TXD 移位脉冲输出接收和方式都是8位波特率固定为 fosc 12 7 3 1方式0 2020 4 7 28 数据输出 CLR用于对74LS164清0 2020 4 7 29 数据输入 S L负脉冲将并行数据装入 高电平时启动单片机进行数据输入 2020 4 7 30 方式0接收在满足REN 1和RI 0的条件下 串行口处于方式0输入 此时 RXD为数据输入端 TXD为同步信号输出端 在方式0工作时 必须使SCON寄存器中的SM2位为 0 这并不影响TB8位和RB8位 2020 4 7 31 7 3 2方式1 10位帧 用于双机通信 起始位 1位数据位 8位停止位 1位 方式1波特率 2SMOD 32 定时器T1的溢出率 2020 4 7 32 串行发送 写SBUF启动发送过程 串行接收 置REN 1启动接收过程 2020 4 7 33 当一帧数据接收完 须同时满足两个条件 接收才真正有效 RI 0 即上一帧数据接收完成时 RI 1发出的中断请求已被响应 SBUF中的数据已被取走 说明 接收SBUF 已空 SM2 0或收到的停止位 1 方式1时 停止位已进入RB8 则收到的数据装入SBUF和RB8 RB8装入停止位 且置 1 中断标志RI 若这两个条件不同时满足 收到的数据将丢失 2020 4 7 34 7 3 3方式2和方式3 11位帧 用于多机通信 起始位 1位数据位 9位停止位 1位 方式2波特率 2SMOD 64 fosc 方式3波特率 2SMOD 32 定时器T1的溢出率 2020 4 7 35 串行发送 写SBUF启动发送过程 串行接收 置REN 1启动接收过程 2020 4 7 36 方式2接收SM0 SM1 10 且REN 1 在接收器完第9位数据后 需满足两个条件 才能将接收到的数据送入SBUF 1 RI 0 意味着接收缓冲器为空 2 SM2 0或接收到的第9位数据位RB8 1时 若不满足两个条件 接收的信息将被丢弃 2020 4 7 37 波特率的制定方法 波特率的确定 波特率的计算 固定波特率 方式0波特率 fosc 12 方式2波特率 2SMOD 64 fosc 可变波特率 方式1波特率 2SMOD 32 T1溢出率 方式3波特率 2SMOD 32 T1溢出率 T1溢出率 fosc 12 256 TH1 2020 4 7 38 波特率的选择 波特率要选择标称值 由于TH1的初值是整数 为了减小波特率计算误差 晶振频率要选为11 0592MHz 方式1和方式3波特率与TH1初值的对应关系 2020 4 7 39 例7 1若8031单片机的时钟振荡频率为11 0592MHz 选用T1为方式2定时作为波特率发生器 波特率为2400b s 求初值 2020 4 7 40 串行口初始化步骤 确定T1的工作方式 TMOD 计算T1的初值 装载TH1 TL1启动T1 置位TR1 确定串行口工作方式 SCON 串口中断设置 IE IP 7 3串行口的编程和应用 2020 4 7 41 例7 2利用单片机串口的并行I O扩展 串口无通信需求时 2020 4 7 42 DISPLY MOVR0 30HMOVR7 4NE MOVA R0MOVDPTR TABMOVCA A DPTRMOVSBUF AINCR0DJNZR7 NERETtab db21h 0f3h 15h 51hdb0c3h 49h 09h 0f1hdb01h 0c1h 81h 0dbhdb1fh 13h 0ch 8bhdb0ffh 2020 4 7 43 例7 3设内部RAM的50H 5FH中数据从串行接口输出 串行接口以方式2工作 TB8做奇偶校验位 要求写入TB8发送 源程序如下 2020 4 7 44 START MOVSCON 80H 串行接口工作方式2MOVPCON 80H 设波特率为1 32振荡频率MOVR0 50H 设地址指针MOVR7 10H 设数据块长度LOOP1 MOVA R0 取数据MOVC P 奇偶校验位送TB8MOVTB8 CMOVSBUF A 数据送SBUF 启动发送WAIT JBCTI LOOP2 判断发送中断标志是否为1 直到TI 1时转移 且TI清为0SJMPWAITLOOP2 INCR0 修改地址指针DJNZR7 LOOP1 判断循环是否结束RET 程序返回 2020 4 7 45 例7 6设串行接口工作在方式3 MCS 51和外设之间采用9位异步通讯方式 波特率为2400 晶振为11 0592MHz 在定时器T1工作在方式2 且当SMOD 0时 计算得到T1的时间常数为0F4H 接收子程序如下 2020 4 7 46 RVE MOVTMOD 20H 设T1为方式2MOVTH1 0F4H 送T1时间常效MOVTL1 0F4HSETBTR1 启动T1定时MOVR0 50H 设地址指针MOVR7 10H 设数据块长度MOVSCON 0D0H 设串行接口为工作方式3 接收数据MOVPCON 00H 设SMOD为0WAIT JBCRI LOOP1 判断接收中断标志 等待 2020 4 7 47 SJMPWAIT 当RI 1时 接收数据 且RI清0LOOP1 MOVA SBUF 接收数据JNBPSW 0 LOOP2 判断P RB8JNBRB8 LOOP3SJMPLOOP4LOOP2 JBRB8 LOOP3LOOP4 MOV R0 A 接收的数据送内存INCR0 修改地址指针DJNZR7 WAIT 判循环是否结束CLRPSW 5 正确接收完16个效据后 PSW 5清0RET 返回LOOP3 SETBPSW 5 奇校验出错 PSW 5置1RET 返回 2020 4 7 4
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025湖南株洲冶炼集团股份有限公司招聘技术管理考前自测高频考点模拟试题及答案详解(典优)
- 2025年阆中市公开引进高层次医疗卫生人才(10人)考前自测高频考点模拟试题及完整答案详解一套
- 2025广东广州医科大学附属医院招聘163人(第一次编制)考前自测高频考点模拟试题参考答案详解
- 2025甘肃科源电力有限公司高校毕业生招聘40人模拟试卷及答案详解参考
- 2025广东阳江市阳春市招聘乡村公益性岗位32人(第三批)模拟试卷完整参考答案详解
- 2025湖南株洲市公共交通集团有限责任公司公交驾驶员、ART站务员招聘模拟试卷及完整答案详解一套
- 2025北京大学医学部总务处房地产管理中心宿舍管理员招聘1人模拟试卷及参考答案详解一套
- 2025福建漳州农商银行春季招聘19人考前自测高频考点模拟试题及一套完整答案详解
- 2025河北承德市消防救援支队招聘政府专职消防队员考前自测高频考点模拟试题及答案详解(网校专用)
- 2025甘肃兰州市城关区司法局招聘司法协理员25人模拟试卷及答案详解参考
- 肝硬化并发症课件
- 2025广东广州市白云区民政局招聘窗口服务岗政府雇员1人笔试参考题库附答案解析
- 思政家乡课件
- (2024版)小学道德与法治 一年级上册 教学设计
- 腹股沟疝修补术护理查房
- 创伤应急预案演练脚本(2篇)
- 《质量管理理论方法与实践》课件-质量管理 ch5 质量功能展开
- 信息运维服务管理规范标准
- 新教材2025-2026学年人教版(2024)美术二年级上册全册(教学设计)教案
- 水运工程监理旁站方案(3篇)
- 2025教科版三年级科学上册教学计划、教学设计(附目录)
评论
0/150
提交评论