第12章 8051机间通信的C编程.ppt
文本预览下载声明
* 12.1 串行通信的基本概念 1.串行异步通信方式 以一个字符(字节)为单位,未传送时线路处于空闲状态,空闲线路约定为高电平“1”。传送一个字符又称为一帧信息,传送时每一个字符前加一个低电平的起始位,然后是数据位,数据位可以是5~8位,低位在前,高位在后,数据位后可以带一个奇偶校验位,最后是停止位,停止位用高电平表示,它可以是1位、1位半或2位。格式如图: 第n+1个字符 起始位 奇偶校验位 停止位 下一个起始位 D2 D1 D0 D3 D4 D5 D6 D7 数据位 D0 D1 0 0 1 0/1 0/1 0/1 0/1 0/1 0/1 0/1 0/1 0/1 0/1 0/1 D2 …… 第n个字符 特征:1)一次只传送一个字符;2)线路简单;3)传送速度较慢。 第12章 8051机间通信的C编程 2.串行同步通信方式 串行同步通信方式的特点是数据在线路上传送时以字符块为单位,一次传送多个字符,传送时须在前面加上一个或两个同步字符,后面加上校验字符,格式如图: 校验字符2 校验字符1 数据块 同步字符2 同步字符1 特征:1)一次连续传送多个字符; 2)对发送时钟和接收时钟要求较高,用同一个时钟源控制; 3)控制线路复杂; 4)传送速度快。 3. 波特率 波特率是指串行通信中,单位时间传送的二进制位数,单位为bps。在异步通信中,传输速度往往又可用每秒传送多少个字节来表示(Bps)。它与波特率的关系为: 波特率(bps)= 一个字符的二进制位数×字符/秒(Bps) 例如:每秒传送200个字符,每个字符1位起始位、8个数据位、1个校验位和1个停止位。则波特率为2200bps。 12.2 MCS-51单片机串行口功能与结构 1)全双工串行异步通信接口; 2)可以同时发送、接收数据; 3)发送和接收数据可通过查询或中断方式处理; 1.串行口结构 发送SBUF 接收SBUF 发送控制器 接收控制器 输入移位寄存器 串行口控制寄存器 波特率发生器 串行口中断 内部总线 门 + RXD(P3.0) TXD(P3.1) RI TI 结构:串行口主要由发送数据寄存器、发送控制器、输出控制门、接收数据寄存器、接收控制器、输入移位寄存器等组成。 2. 特殊功能寄存器 1)SBUF:串行口数据寄存器,发送数据寄存器和接收数据寄存器合用; 2)SCON:串行口控制寄存器; RI TI RB8 TB8 REN SM2 SM1 SM0 98H D0 D1 D2 D3 D4 D5 D6 D7 SCON 其中: SM0、SM1:串行口工作方式选择位,用于选择四种工作方式: 可变 9位异步通信方式 方式3 1 1 fosc/32或fosc/64 9位异步通信方式 方式2 0 1 可变 8位异步通信方式 方式1 1 0 fosc/12 移位寄存器方式 方式0 0 0 波特率 功能 方式 SM1 SM0 (1)方式0:称为同步移位寄存器方式,一般用于外接移位寄存器芯片扩展 I/O接口; (2) 方式1:8位的异步通信方式,通常用于双机通信; (3) 方式2和方式3:9位的异步通信方式,通常用于多机通信。 3)PCON:电源控制寄存器 SMOD 87H D0 D1 D2 D3 D4 D5 D6 D7 PCON 当SMOD位为1,则串行口方式1、方式2、方式3的波特率加倍。 SM2: 多机通信控制位; REN: 允许接收控制位。当REN=1,则允许接收,当REN=0,则禁止接收; TB8: 发送数据的第9位; RB8: 接收数据的第9位; TI: 发送中断标志位; RI: 接收中断标志位; 12.3 串行口的工作方式 一.方式0 方式0通常用来外接移位寄存器,用作扩展I/O口。方式0工作时波特率固定为:fosc /12。低位在前,高位在后,长度为8位。 (1) 发送过程 在TI=0时,当CPU执行一条向SBUF写数据的指令时,8位数据(一帧)发送完毕后,发送中断标志TI置位。 (2) 接收过程 在RI=0的条件下,将REN(SCON.4)置“1”就启动一次接收过程。接收中断标志RI置位。 二.方式1 方式1为8位异步通信方式,在方式1下,一帧信息为10位:1位起始位(0),8位数据位(低位在前)和1位停止位(1)。波特率可变,由定时/计数器T1的溢出率和电源控制寄存器PCON中的SMOD位决定。 即:波特率=2SMOD×(T
显示全部