当前位置:
文档之家› 单片机应用技术串行口控制寄存器SCON
单片机应用技术串行口控制寄存器SCON
单片机应用技术
2. 信息传送方向
根据信息的传送方向,串行通信 可以进一步分为单工、半双工和全双 工 3 种。信息只能单方向传送称为单 工;信息能双向传送,但不能同时双 向传送称为半双工;能够同时双向传 送则称为全双工。 MCS-5l单片机有一个全双工串行口 。全双工的串行通信只需要一根输出 线(TXD )和一根输入线(RXD),如 右图所示。
0
0
方式0
移位寄存器方式,用于并行I/O扩 展
fosc/12
0
1
方式1
8位通用异步接收器/发送器
可变
1
0
方式2
9位通用异步接收器/发送器
fosc/12 fosc/24
或
1
1
方式3
9位通用异步接收器/发送器
可变
单片机应用技术
2.结构
由发送数据缓冲器、发送控制器、输出控制门、 接收数据缓冲器、接收控制器、输入移位寄存器 等组成。发送数据缓冲器只能写入,不能读出, 接收数据缓冲器只能读出,不能写入,二者共用 一个符号 — 特殊功能寄存器 SBUF ,共用一个地 址—99H。串行口中还有两个特殊功能寄存器SCON、 PCON ,分别用来控制串行口的工作方式和波特率。 波特率发生器由定时器/计数器1构成。
单片机应用技术
二、串行口功能与结构
1、功能
MCS-5l 单片机中的异步通信串行口能方便地与其他 计算机或串行传送信息的外围设备(如串行打印 机、CRT终端等)实现双机、多机通信。 如表4-2所示。
串行口有四种工作方式
单片机应用技术
串行口有四种工作方式
SM 0 S M 1 工作方 式 功能 波特率
单片机应用技术
SCON—— 串行口控制寄存器
SM0 SM1 SM2 REN TB8 RB8 TI RI
SM0、SM1:工作方式选择位(四种工作方式) SM2:多机通信控制位(常与RB8配合,决定是否激活RI)
REN:允许接收控制位
TB8:发送的第九位数 RB8:接收的第九位数 TI / RI :中断请求标志位(前面已讲过)
单片机应用技术
4. 波特率
在一帧信息中,每一位的传送时间(位宽)是固定的, 位传送时间的倒数称为波特率(Baud rate),波特率表 示每秒传送的位数。例如每秒960个字符,若每个字符为10 位,则波特率为9600。位传送时间是104μ S。 MCS-51串行I/O接口的基本工作是:发送时,将CPU送来 的并行数据转换成一定格式的串行数据,从引脚TXD上按规 定的波特率逐位输出;接收时,要监视引脚RXD,一旦出现 起始位“0”,就将外围设备送来的一定格式的串行数据转 换成并行数据,等待CPU读入。
TXD RXD
RXD TXD
GND
GND
MCS-51双工通信
单片机应用技术
3、同步方式和异步方式
(1) 同步方式是将一大批数据分成几个数据块, 数据块之
间用同步字符予以隔开 , 而传输的各位二进制码之间都没有 间隔。 其基本特征是发送与接收时钟始终保持严格同步。 (2)异步通信是按帧传送数据, 它利用每一帧的起、止信 号来建立发送与接收之间的同步,每帧内部各位均采用固定的 时间间隔, 但帧与帧之间的时间间隔是随机的。其基本特征 是每个字符必须用起始位和停止位作为字符开始和结束的标 志, 它是以字符为单位一个个地发送和接收的。
单片机应用技术
( 3 )允许接收控制位 REN : REN =“1” 时允许并启动 接收, REN =“0” 时禁止接收。 REN 由软件置“ 1” 或 清“0”。 (4)发送数据D8位TB8:TB8是方式2、方式3中要发 送的第九位数据,事先用软件写入1或0。方式0、 方式1不用。 ( 5 )接收数据 D8位 RB8 :方式 2 、方式 3 中,由硬件 将接收到的第九位数据存入 RB8 。方式 1 中,停止 位存入RB8。 (6)发送中断标志位TI:发送完一帧信息,由硬件 使TI置“1”,TI必须由软件清“0”。 (7)接收中断标志位RI:接收完一帧有效信息,由 硬件使RI置“1”,RI必须由软件清“0”。
单片机应用技术
4.串行口数据寄存器 SBUF
串行口数据寄存器SBUF由串行输出移位寄存器 和两级缓冲的串行输入寄存器组成。当数据写入 SBUF时启动串行数据发送,连同此前置入的TB8, 按设定波特率串行输出。串行数据移入串行输入 寄存器完成后,自动将数据并行送入接收 SBUF , 并置“ 1” 通知 CPU 读取数据, CPU 应该在下一个串 行数据接收完成之前读出。
单片机应用技术
3.串行口控制寄存器SCON
串行口控制寄存器SCON的Fra bibliotek式如下:D7 D6 D5 D4 D3 D2 D1 D0 SCON SM0 SM1 SM2 REN TB8 RB8 TI RI 98H
(l)工作方式选择位SMO、SM1: SMO、SM1由软件置“1”或清“0”,用 于选择串行口的4种工作方式。 (2)多机通信控制位SM2: SM2 =“1”时,接收到一帧信息,如果接收 到的第9位数据为1,硬件将RI置“1”,申请中断;如果第九位数据为“0”, 则RI不置“1”,且所接收的数据无效。 SM2 =“0”时,只要接收到一帧信息,不管第九位数据是 0还是 1,硬件都 置RI =“1”,并申请中断。RI由软件清“0”,SM2由软件置“1”或清“0”。 多机通信时,各从机先将 SM2置“l”。接收并识别主机发来的地址,当地 址与本机相同时,将SM2清“0”,与主机进行数据传递。各机所发送的数据 第9位必须为“0”。
单片机应用技术
项目二 电子打铃装置
第6讲 单片机串行接口
《单片机应用技术》精品课程组 湖北职业技术学院机电工程系
单片机应用技术
本讲主要内容
1串行通信概述 2串行口功能与结构 3串行口的应用
单片机应用技术
一、串行通信概述 1. 串行通信和并行通信 计算机与外界的信息交换称为通信。基本的通信方法 有并行通信和串行通信两种。一组信息的各位数据被逐位 顺序传送的通信方式称为串行通信。串行通信可通过串行 接口来实现。串行通信速度慢,但传输线少,适宜长距离 通信。 一组信息(通常是字节)的各位数据被同时传送的通信方 法称为并行通信。并行通信依靠并行 I / O 接口实现。并行 通信速度快,但传输线根数多,只适用于近距离(相距数 公尺)的通信。