第07章 单片机串行通信系统

合集下载

第七章 串行通信

第七章 串行通信
传输方式
同步方式 串行方式
异步方式
单工方式
半双工方式 全双工方式 多工方式
7.1.2 串行通信的通信标准
串行通信的通信标准主要是指通信的电气和硬件标准,常用的有 RS-232;RS-485/422等。
NEXT HOME
RS-232标准 ♠ 电气特性:逻辑“1”=-3V~-15V;逻辑“0”=+3V~+15V。在与TTL 标准连接时必须进行电平转换,常用芯片有MC1488、MC1489及 MAX202~MAX232等。
BACK NEXT HOME
7.1.3 串行通信的通信方式
串行通信又可分为异步通信和同步通信。异步通信的接受器和发送 器使用各自的时钟,每次只传送一字节数据,允许时钟产生误差;同步 通信每次传送的数据量较大,要求精度高,因此接受器和发送器使用同 一时钟。 异步通讯 以字符为传送单位用起始位和停止位标识每个字符的开始和结束 字符间隔不固定,只需字符传送时同步。异步通讯数据常用一帧为单位, 一帧字符位数的规定:起始位,数据位,校验位和停止位,校验位紧跟 在数据位后,也可以省略。下图为省略校验位后一帧数据的示意图。
起始位 D 0
D1
D2
D3
D4
D5
D6
D7 停止位
优点是硬件要求低,可靠性高,传送距离远,但速度较慢。
BACK
NEXT
HOME
同步通信 以一串字符为一个传送单位,字符间不加标识位,在一串字符开 始用同步字符标识,硬件要求高,通讯双方须严格同步。
【提示】:在单片机与外设进行数据通信时,多采用异步串行通信。
模式选择
多机通讯位 允许接收位 发送、接收第9位 发送、接收标志
BACK
NEXT

单片机课件第七章串行通信

单片机课件第七章串行通信

第 N+1 个字符
停起
数据位
校停
止始
验止
位 位 D0 D1 D2 D3 D4 D5 D6 D7 位 位
空闲位
1 0 0/1 0/1 0/1 0/1 0/1 0/1 0/1 0/1 0/1 1 1 1 1
起 始 位 数据位 0 ……
图7.3 串行异步通信的帧格式(有空闲位)
*字符的帧格式 每一个字符帧包含四部分:起始位、数据位、校验位、停止位。
在方式0,RB8不用
SCON SM0 SM1 SM2 REN TB8 RB8 TI RI
(6)TI:串行口发送中断请求标志位 (7)RI:串行口接收中断请求标志位
硬件置 1 (发送或接收完一帧数据) 软件清 0 (中断方式,查询方式 ) 2、电源控制寄存器 PCON 87H
字节地址为87H,没有位寻址功能。
7.1 串行通信的基本概念 7.2 串行口的结构和控制 7.3 8051串行口的编程和应用
上一页 下一页
7.1 串行通信的基本概念
7.1.1 数据通信
一、通信的基本方式
并行通信 串行通信
(a)并行传输
(b)串行传输
图7.1 两种通信方式
并行通信:数据的各位同时传送。传送距离:小于30米。 串行通信:数据的各位逐位送出,只需一对传送线即可完成传送。
单位:bps(波特)。 例:要求每秒传送120个字符帧,每帧为10位。(1+8+1) 解: 波特率=120×10=1200波特
每位数据传送时间 = 1/1200= 0.83ms 有效数据位传输速率= 120×8=960位/秒
远距离串行通信 串行通信接口
UART的结构示意图
7.2 串行口的结构和控制

单片机串行通信接口 ppt课件

单片机串行通信接口  ppt课件

是发送中断,进而作出相应的处理。常用的做法是:
直接发送,接收的时候进入中断处理。
2. 电源控制寄存器PCON
PCON D7 D6 D5 - D4 D3 D2 D1 D0
位名称 SMOD -
- GF1 GF0 PD IDL
图7.10 电源控制寄存器PCON的格式
SMOD:串行口波特率倍增位。在工作方式1~ 工作方式3时,若SMOD=1,则串行口波特率增 加一倍。若SMOD=0,波特率不加倍。系统复位
7.2.1 串行接口的结构及功能
发送 SBUF (99H) 内 部 总 线 门电路
SBUF = TXD_data;
TXD(P3.1)
发送控制器
定 时 器 1 接收 SBUF (99H) 串行口中断 TI ≥1 接收控制器 RI
串 行 口 控 制 寄 存 器 (98H)
RXD(P3.0)
输入移位寄存器
由于CPU是主动的,不会发生帧重叠错误,因此
发送电路不需要双重缓冲结构。
在逻辑上,SBUF只有一个,它既表示发送
寄存器,又表示接收寄存器,具有同一个单元地
址99H。但在物理结构上,则有两个完全独立的 SBUF,一个是发送缓冲寄存器SBUF,另一个是 接收缓冲寄存器SBUF。如果CPU写SBUF,数据 就会被送入发送寄存器准备发送;如果CPU读
同步 字符 数据 数据 字符1 字符2
图7.3

数据字 数 据 校 验 符n-1 字符n 字 符
(校验 字符)
同步通信数据传送格式
2. 异步通信(Asynchronous Communicion)
在异步通信中,数据通常是以字符或字节为单位
组成数据帧进行传送的。收、发端各有一套彼此独 立,互不同步的通信机构,由于收发数据的帧格式 相同,因此可以相互识别接收到的数据信息。

单片机第7章89C51串行口和串行通信PPT课件

单片机第7章89C51串行口和串行通信PPT课件

4
7.1 串行通信的概念
• 在实际工作中,计算机的CPU与外部设备之间常常要进 行信息交换,一台计算机与其他计算机之间也往往要交 换信息,所有这些信息交换均可称为通信。
• 通信方式有两种,即并行通信和串行通信。
• 通常根据信息传送的距离决定采用哪种通信方式。
• 例如,在IBM-PC机与外部设备(如打印机等)通信时, 如果距离小于30m,可采用并行通信方式;当距离大于 30m时,则要采用串行通信方式。89C51单片机具有并 行和串行二种基本通信方式。
字 同 符 步 1 字 同 符 步 2 数 据 块 ( 若 干 字 节 )校 符 验 1 校 符 验 2
起 始
结 束
➢ 在这种通信方式中,数据块内的各位数据之间没有间 隔,传输效率高;
➢ 发送、接收双方必须保持同步(使用同一时钟信号), 且数据块长度越大,对同步要求就越高。
➢ 同步通信设备复杂,成本高,一般只用在高速数字通 信系统中。
• 在同步传送时,要求用时钟来实现发送端与接收端之间的同步。为了保 证接收正确无误,发送方除了传送数据外,还要同时传送时钟信号。
• 同步传送可以提高传输速率(达56kb/s或更高),但硬件比较复杂。
返回
28.09.2020
14
2、异步通信
• 起始位(0)信号只占用一位,用来通知接收设备一个待接收的字符开始到达。线路上在不 传送字符时应保持为1。接收端不断检测线路的状态,若连续为1以后又测到一个0,就知道 发来一个新字符, 应马上准备接收。字符的起始位还被用作同步接收端的时钟,以保证以 后的接收能正确进行。
28.09.2020
1
第七章 89C51串行口及串行通信技术
• 串行通信只用一位数据线传送数据的位信号,即使加上几 条通信联络控制线,也用不了很多电缆线。因此,串行通 信适合远距离数据传送,如大型主机与其远程终端之间、 处于两地的计算机之间采用串行通信就非常经济。当然, 串行通信要求有转换数据格式、时间控制等逻辑电路,这 些电路目前已被集成在大规模集成电路中(称为可编程串 行通信控制器),使用很方便。

第7章AT89S51单片机的串行口

第7章AT89S51单片机的串行口

PCONSMOD — — — GF1 GF0 PD IDL
GF1,GF0:用户可自行定义使用的通用标志位 GF1: General purpose Flag bit. GF0 :General purpose Fபைடு நூலகம்ag bit.
PD:掉电方式控制位 Power Down bit. =0:常规工作方式. =1:进入掉电方式:振荡器停振片内RAM和SRF的
例如:120字符/秒,1个字符10位, 波特率为:120×10=1200bps 平均每一位传送占用时间:Td=1/1200=0.833ms
常用的波特率有:(离散) 19200/9600/4800/2400/1200/600/300/150/100
/50, 还有10M/100M
7.1.1 与串行通信有关的寄存器
TB8:在串行工作方式2和方式3中,是要发送的第9位数据。 The 9th bit that will be transmitted in modes 2&3. Set/Cleared
by software 多机通信中: TB8=0 表示发送的是数据;
TB8=1 表示发送的是地址.
RB8:在串行工作方式2和方式3中,是收到的第9位数据.该数据来自发
REN:串行口接收允许控制位 Set/Cleared by software to Enable/Disable reception
=1 允许接收; (SETB REN) =0 禁止接收.
系统复位后,REN=0,不允许接受
SM0 SM1 SM2 REN TB8 RB8 TI RI
模式选择 多机通讯位 允许接收位 发送、接收第9位 发送、接收标志
1
1
3 Split timer mode (Timer 0) TL0 is an 8-bit Timer/Counter controlled by the

MCS-51_第07章 MCS-51的串行口

MCS-51_第07章 MCS-51的串行口

【例7-1】方式2发送在双机串行通信中的应用
下面的发送中断服务程序,以TB8作为奇偶校验位,偶校验 发送。数据写入SBUF之前,先将数据的偶校验位写入TB8 (设第2组的工作寄存器区的R0作为发送数据区地址指针)。
PIPTI: PUSH PSW PUSH Acc SETB RS1 CLR CLR MOV MOV MOV RS0 TI A,@R0 C,P TB8,C ;发送中断标志清“0” ;取数据 ;校验位送TB8, 采用偶校验 ;P=1,校验位TB8=1,P=0,校验 ;位TB8=0 ;选择第2组工作寄存器区 ;现场保护
MOV SBUF ,A INC R0 POP Acc POP PSW RETI
;A数据发送,同时发TB8 ;数据指针加1 ;恢复现场 ;中断返回
2.方式2接收 SM0、SM1=10,且REN = 1时,以方式2接收数据。 数据由RXD端输入,接收11位信息。当位检测逻辑采样
到RXD的负跳变,判断起始位有效,便开始接收一帧信息。
(RX时钟),它的频率和传送的波特率相同,另一种是位 检测器采样脉冲,频率是RX时钟的16倍。以波特率的16倍 速率采样RXD脚状态。当采样到RXD端从1到0的负跳变时就 启动检测器,接收的值是3次连续采样(第7、8、9个脉冲 时采样)取两次相同的值,以确认起始位(负跳变)的开 始,较好地消除干扰引起的影响。
字节地址为87H,不能位寻址。格式如图7-3所示。
D7 PCON SMOD D6 D5 D4 D3 D2 D1 D0 87H
图7-3
特殊功能寄存器PCON的格式
2SMOD 32
下面介绍PCON中各位功能。仅最高位SMOD与串口有
关。 SMOD:波特率选择位。 例如,方式1的波特率计算公式为

单片机串行通信试讲

单片机串行通信试讲

1 1 1 1 1 1 1 1
串行通信
串行通信的分类
一、按传输方向:串行通讯分为单工、半双工、全双工
①单工
②半双工
③全双工
遥控器、电视机
对讲机
电话
单工:任何时刻都是固定的单方向,一根数据线传输即可 半双工:一根传输线,可双向,但任何时刻只能进行一个方向,属于分时传输 全双工:两个方向均可,互不干扰,但需要两根传输线
CS/SS Slave Select 片选信号,由主机发送, 低电平有效
信息帧
主机发送
一个信息帧
串行通信的分类
①异步通讯特点:固定数据帧,传输速度必须相同
起始位(1位) 数据位(8位) 奇偶校验位(1位,可无校验位) 停止位(1位)
串行通信的分类
出错
在串行通信的数据是按位进行传送的 ,数据传输速率用波特率指标衡量
1 1 1 1 1 1 1 1
并行通信
通信的基本概念
串行通信定义:串行通信是指利用一条传输线将数据一位 位地顺序传送。
传输方式:传输一个字节(8个位)的数据时,串口是将8 个位排好队,逐个地在1条连接线上传输。
特点:通信线路简单,利用电话或电报线就可以实现通信, 降低成本,适用于远距离通信,但传输速度慢
单片机串行通信技术
课程内容
第7章 单片机的串行通信技术
7.1 串行通信概述 7.2 MCS-51的串口控制器
7.2.1串行口内部结构 7.2.2串行口控制寄存器 7.3 串行工作方式0及其应用 7.4 串行工作方式1及其应用 7.5 串行工作方式2及其应用 7.6 串行工作方式3及其应用
参考书籍:单片机原理
课程回顾
1.串行通信与并行通信的区别与特点 2.串行通信的单工、半双工和全双工概念和区别 3. 同步通信和异步通信的区别 4. 波特率的概念

单片机原理及应用第07章串行口

单片机原理及应用第07章串行口

单片机原理及应用第07章串行口在单片机中,串行口是一种常见的通信接口。

串行口允许单片机与外部设备通过串行通信进行数据的传输和接收。

它常用于与计算机、显示器、键盘、传感器等设备进行数据交互。

串行口一般有两个主要的部分:发送器和接收器。

发送器负责将单片机内部的数据转换成串行数据,并通过一个引脚发送出去。

接收器负责将从外部设备接收到的串行数据转换成单片机内部的数据,供单片机进一步处理。

串行口的应用非常广泛。

以下是串行口在一些常见应用中的使用方式:1.与计算机通信:单片机可以通过串行口与计算机进行数据交互。

这种应用广泛用于传感器数据的采集、控制命令的发送等场景。

通过串行口,单片机可以将采集到的数据传输给计算机进行分析和处理,或者接收计算机发送的控制命令实现特定功能。

2.与显示器通信:串行口可以用来控制液晶显示器(LCD)。

通过发送特定的指令和数据,单片机可以控制液晶显示器显示不同的字符、图形或者动画。

这种应用广泛用于嵌入式系统中的人机交互界面,如数码相机、手机等设备。

3.与键盘通信:通过串行口,单片机可以接收来自键盘的按键数据。

这种应用广泛用于嵌入式系统中的输入设备,如电脑键盘、数字键盘等。

通过接收键盘的按键数据,单片机可以进行相应的操作,如控制电机、显示字符等。

4.与传感器通信:单片机可以通过串行口与各种传感器进行通信。

传感器可以是温度传感器、湿度传感器、光敏传感器等。

通过串行口,单片机可以获取传感器采集到的数据,并进行相应的处理和控制。

总之,串口是一种非常常见并且实用的通信接口,在单片机中得到了广泛应用。

它不仅可以实现单片机与外部设备之间数据的传输和接收,还可以用于控制和监测各种设备。

通过串口的使用,单片机可以更加灵活和方便地与外部设备进行通信,从而实现更多样化、智能化的应用。

单片机第七课--串口

单片机第七课--串口

1、方式2和方式3发送
写入SBUF TXD TI(中断标志) 起始
D0 D1 D2 D3 D4 D5 D6 D7 TB8
停止位
发送前,先根据用户约定的通信协议由软件设置TB8的值, 然后把要发送的数据写入SBUF启动发送过程,先把起始位 0输出到TXD引脚,然后发送移位寄存器的输出位(D0)到 TXD引脚。每一个移位脉冲都使输出移位寄存器的各位右移 一位,并由TXD引脚输出。 第一次移位时,停止位“1”移入输出移位寄存器的第9位 上 ,以后每次移位,左边都移入0。当停止位移至输出位时, 左边其余位全为0,检测电路检测到这一条件时,使控制电 路进行最后一次移位,并置TI=1,向CPU请求中断。
一个字符帧 空 闲 起 始 位 数据位 校 验 位 停 止 位 空 闲
下一字符 起始位
LSB
MSB
异步通信对硬件要求较低,实现起来比较简单、灵活, 适用于数据的随机发送/接收,但因每个字节都要建立一次同 步,即每个字符都要额外附加两位,所以工作速度较低,在 单片机中主要采用异步通信方式。
2、同步通信 以一串字符为一个传送单位,字符间不加标识位,字符串开 始用同步字符标识(一般约定为1~2个字符),以触发同步时 钟开始发送或接收数据;多字节数据之间不允许有空隙,每位 占用的时间相等;空闲位需发送同步字符。 硬件要求高,通讯双方须严格同步,适用于成批数据传送。 单片机不用该方式。
在单片机的应用中,常用的晶振频率为:12MHz和 11.0592MHz。所以,选用的波特率也相对固定。 常用的串行口波特率以及各参数的关系如表所示。
串行口工作之前,应对其进行初始化,主 要是设置产生波特率的定时器1、串行口控 制和中断控制。具体步骤如下:
确定T1的工作方式(编程TMOD寄存器);

单片机第七章习题参考题答案

单片机第七章习题参考题答案

word 格式格式.. .. 第七章 习题参考答案一、填空题1、在串行通信中,有数据传送方向为 单工 、 半双工 和 全双工 三种方式。

2、要串口为10位UART UART,,工作方式应选为 方式1 。

3、用串口扩并口时,串行接口工作方式应选为方式 0 。

4、计算机的数据传送有两种方式,即 并行数据传送 和 串行数据传 送 方式,其中具有成本低特点的是 串行数据传送 方式。

5、串行通信按同步方式可分为 异步 通信和 同步 通 信。

6、异步串行数据通信的帧格式由 起始 位、 数据 位、 奇偶校验 位和位和停止 位组成。

7、串行接口电路的主要功能是 串行串行 化和 反串行 化,把 帧中格式信息滤除而保留数据位的操作是 反串行反串行 化。

8、专用寄存器“串行数据缓冲寄存器”,实际上是 发送缓冲 寄存器和 接 收缓冲寄存器的总称。

9、MCS-51的串行口在工作方式0下,是把串行口作为 同步移位 寄存器来使用。

这样,在串入 并出移位寄存器的配合下,就可以把串行口作为 并行输出 口使用,在并入串出移位寄存器的配合下,就可以把串行 口作为 并行输入 口使用。

1010、在串行通信中,收发双方对波特率的设定应该是、在串行通信中,收发双方对波特率的设定应该是约定 的。

1111、、使用定时器使用定时器//计数器设置串行通信的波特率时,计数器设置串行通信的波特率时,应把定时器应把定时器应把定时器//计数器1设定作方式 2 ,即 自动重新加载 方式。

1212、某、某8031串行口,传送数据的帧格式为1个起始位(个起始位(00),),77个数据位,据位,11个偶校验位和1个停止位(个停止位(11)组成。

当该串行口每分钟传送 1800个字符时,则波特率应为 300b/s 。

解答:串口每秒钟传送的字符为:解答:串口每秒钟传送的字符为:1800/60=301800/60=30个字符个字符//秒所以波特率为:所以波特率为:3030个字符个字符//秒×10位/个字符个字符=300b/s =300b/s 1313、、8051单片机的串行接口由发送缓冲积存器SBUF SBUF、、接收缓冲寄存器SBUF 、 串行接口控制寄存器SCON SCON、定时器、定时器T1构成的波特率发生器 等部件组成。

报告第7章 单片机的串行口通信.ppt

报告第7章 单片机的串行口通信.ppt
7.5 串行通信实用技术 7.5.1 双机串行通信的硬件连接 7.5.2 80C51单片机的多机通信 7.5.3 双机串行通信软件编程 7.5.4 PC机与单片机的点对点串行通信接口设计 7.5.5 PC机与多个单片机的串行通信接口设计
.精品课件. 3
7.1串行通信基础知识
7.1.1并行通信与串行通信 1、并行通信 ●并行通信是指将数据字节的各位用多条数据线同时进行传送。 每一位数据都需要一条传输线,8位数据总线的通信系统, 一次传送8位数据(1个字节),将需要8条数据线。 ●并行通信的特点:是传送速度快、 需要的数据传输线较多。因此当 距离较远、位数又多时导致了通 信线路复杂且成本高。一般适合 于短距离的数据传输。
形成单向连接。若A为发送端,
B为接收端,数据仅能从A端发
至B端,如广播、无线寻呼等,
Hale Waihona Puke 如7-4中(a)图所示。(a)单工方式
.精品课件. 12
7.1串行通信基础知识
7.1.4通信中的误码问题
数据在串行传输过程中,由于干扰可能使传输的数据发生错 误,这种情况称为出现了“误码”,错误的数据位数与所有 传输数据总位数的比率叫做“误码率”,发现传输中的错误 叫做“检错”,发现错误后消除错误叫做“纠错”。
第7章 80C51单片机的串行口通信
.精品课件.
1
第7章 目录
7.1 串行通信基础知识
7.1.1 并行通信与串行通信
7.1.2 串行通信的通信方式
7.1.3 串行通信的数据传送方向
7.1.4 通信中的误码问题
7.2 80C51系列单片机的串行接口
7.2.1 串行接口的结构
7.2.2 串行接口的控制寄存器
.精品课件. 11
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

4. 中断允许控制寄存器IE(A8H)
总中断允许控制位。EA = 1,开放所 有中断;EA = 0,禁止所有中断。 串行口中断(包括串行发、串行收)允许位。ES = 1, 允许串行口中断;ES = 0,禁止串行口中断。
EA
AFH
----
----
ES
ACH
ET1
ABH
EX1
AAH
ET0
A9H
EX0
A8H
3、全双工制式(Full Duplex)
数据的发送和接收可同时进行
单工:广播
双工:电话 半双工:对讲机
7.2
80C51串行通信接口
波特率加倍
波特率因子:16
波特率发生器
下降沿表示“0” 起始位开始
指令清0 RI/TI
波特率因子
为保证数据传送的准确性,发送/接收时钟频率f应大于等于 波特率B
f= nB
第07章 单片机串行通信系统
7.1 概述 6.2 串行通信接口 7.3 串行通信工作方式 7.4 串行通信波特率设置 7.5 串行方式时间显示Proteus仿真
7.1 概 述
计算机与外界信息交换称为通信。 通信的基本方式可分为并行通信和串行通信: 并行通信是数据的各位同时发送或同时接收; 串行通信是数据的各位依次逐位发送或接收。 并行通信优点:传送速度快 缺点:不便长距离传送 串行通信优点:便于长距离传送 缺点:传送速度较慢 串行通信按同步方式可分为异步通信和同步通信。
常用标准波特率: b/s
110、 300、 600、
1200、1800、2400、 4800、9600、19200
7.1.2 同步通信
串行通信波特率
波特率bps(bit per second)定义: 每秒传输数据的位数,即:
1波特 = 1位/秒(1bps)
波特率的倒数即为每位传输所需的时间。 相互通信的甲乙双方必须具有相同的波特率,否则无法 成功地完成串行数据通信。
2)
CPU处于掉电方式时,振荡器停振,片内RAM和 SRF的值保持不变,P0—P3口维持原状,程序停止。只 有复位能退出掉电方式。 4) IDL--待机方式(空闲方式)控制位。 IDL=0:常规工作方式 IDL=1:进入待机方式
CPU处于待机方式时,振荡器继续振荡,中断、定时器、 串口功能继续有效,片内RAM和SRF保持不变,CPU状态 保持,P0—P3口维持原状,程序停顿。中断、复位都能 退出待机状态。
并行通信和串行通信
发送

计算机 1 GND
计算机 2 或外设 GND
计算机 1 GND
接收
计算机 2 或外设 GND
(a)
(b)
7.1.1 异步通信
串行异步传送中,通信双方必须事先约定:
1、字符格式。双方要事先约定字符的编 码形式、奇偶校验形式及起始位和停止位的规 定。 2、在异步通信中,发送端与接收端的波 特率必须一致。 (波特率(Baud rate)。波特率就是数据的 传送速率,即每秒钟传送的二进制数位数,单 位为位/秒。)
PS BCH PT1 BBH
同级自然优先级
最高级
最低级
PX1 BAH PT0 B9H PX0 B8H
外部中断1中断优先级控制位。PX1 = 1,设定外部中断1为 高优先级中断;PX1 = 0,设定外部中断1为低优先级中断。 定时器T0中断优先级控制位。PT0 = 1,设定定时器T0中断为高 优先级中断;PT0 = 0,设定定时器T0中断为低优先级中断。 外部中断0中断优先级控制位。PX0 = 1,设定外部中断0为高 优先级中断;PX0 = 0,设定外部中断0为低优先级中断。

DELAY:MOV R6,#10 D1:MOV R7,#248 DJNZ R7,$ DJNZ R6,D1 RET END

;延时程序

2.工作方式1 8位异步通信接口,一帧有1O位信息,1位起始位(低 电平信号),8位数据位(先低位后高位),1位停止位 (高电平信号)。波特率可变,由定时器/计数器T1的 溢出率和SMOD(PCON.7)决定。其格式如下:
3、电源控制寄存器PCON
PCON D7 D6 D5 D4 D3 D2 D1 D0
位名称
SMOD



GF1
GF0
PD
IDL
SMOD=1:波特率加倍 SMOD=0:表示波特率不加倍。
GF1,GF0--用户可自行定义的通用标志位 3) PD--掉电方式控制位 PD=0:常规工作方式 PD=1:进入掉电方式
7.1.3 串行通信的制式
串行通信中,数据通常是在二个端点(点对点)之间进行 传送,按照数据流动的方向可分成三种传送模式: 单工、半双 工、全双工.
1、单工方式(Simplex) :数据仅按一个固定方向传送。
2、半双工制式(Half Duplex)
使用同一根传输线,数据可双向传送,但不能 同时进行。
5) RB8——接收数据第9位 在方式2、3时,RB8是接收的第9位数据。可作为奇偶校验位 或 地址帧的标志 在方式1时,若SM2=0,RB8是接收的停止位 在方式0时,不使用RB8 6) TI——发送中断标志位 在方式0时,发送完第8位数据后,该位由硬件置位。 在其它方式下,于发送停止位之前,由硬件置位 , 并向 CPU 申请中断 CPU在响应中断后,必须用软件清零。 在非中断方式,TI也可供查询使用。 7) RI——接收中断标志位 在方式0时,接收完第8位数据后,该位由硬件置位。 在其它方式下,于接收到停止位之前,该位由硬件置位,并 向CPU申请中断 在CPU响应中断后,也必须用软件清零 在非中断方式,RI也可供查询使用。
表示从机为数据传送状态 表示从机为地址传送状态
3) REN——允许串行接收控制位 REN=0 禁止接收数据 REN=1 允许接收数据 4) TB8——发送数据第9位。 在方式2和方式3时,TB8为所要发送的第9位数据 在多机通信中,以TB8位的状态表示主机发送的信 息是否地址。在 SM2=1 时, TB8=1 ,表明信息为地 址 但在SM2=0时,也可用作数据的奇偶校验位。 方式0,方式1中,该位不用
定时/计数器T1中断允许位。ET1 = 1,允许定 时器T1中断;ET1 = 0,禁止定时器T1中断。 外部中断1中断允许位。EX1 = 1,允许外部中 断1中断;EX1 = 0,禁止外部中断1中断。 定时/计数器T0中断允许位。ET0 = 1,允 许定时器0中断;ET0 = 0,禁止定时器0 中断。
指令将TI/RI清零
方式0工作时,多用查询方式编程:
发送:
MOV
SBUF,A JNB CLR TI,$ TI
……
接收: JNB
RI,$ CLR RI MOV A, SBUF
……
注)复位时,SCON被清零,工作方式的缺省值为方式0。 接收前,务必先置位REN=1方允许接收数据。
【例7.3-1】74LS165芯片的输入端接8个开关,利用单片机 串行方式0将开关的状态串行输入单片机,并在LED上显示。
SM0、SM1:串行口工作方式选择位。用于选择四种工作方式
SM0 0 0 1 1 SM1 0 1 0 1 方式 方式0 方式1 方式2 方式3 功能 移位寄存器方式 8位异步通信方式 9位异步通信方式 9位异步通信方式 波特率 fosc/12 可变 fosc/32或fosc/64 可变
SM2
通常,SM2主要用于从机的状态控制 SM2=0 SM2=1
D4 REN 9CH 接收 允许
D3 TB8 9BH 发送 第 9位
D2 RB8 9AH 接收 第 9位
D1 TI 99H 发送 中 断
D0 RI 98H 接收 中 断
工作方式 选择
① ② ③ ④ ⑤ ⑥ ⑦
SM0 SM2 REN TB8 RB8 TI RI
SM1 —— 串行口工作方式选择位。 —— 多机通信控制位。 —— 允许接收控制位。REN=1,允许接收。 —— 方式2和方式3中要发送的第9位数据。 —— 方式2和方式3中要接收的第9位数据。 —— 发送中断标志。 —— 接收中断标志。
7.3 串行通信方式
1.工作方式0

移位寄存器方式,可外接移位寄存器以扩展I/O口,也可以外接同步 输入/输出设备。
一帧信息有8位数据,低位在前,高位在后,没有起始位和停止位
数据从RXD输入或输出。TXD用来输出同步脉冲。 数据格式如下:
前 后
D0
D1
D2
D3
D4
D5
D6
D7
波特率固定为fosc/12。
于是,定时器每秒所溢出的次数为:
定时器T1的溢出率=fosc/(12×(28—N)) 式中的N为时间常数,即T1的初值。
波特率与计数初值的关系


设波特率用B表示,计数初值用N表示,则波特率B 与T1计数初值N之间的关系可以表示为:
f OSC 2 SMOD B 32 12(256 N )
2 SMOD f OSC 2 SMOD f OSC N 256 256 32 12 B 384 B





ORG 0000H ;0000H单元存放转移指令 AJMP START ;跳转到主程序 ORG 0030H ;主程序从0030H开始存放 START:MOV SCON,#10H ;设定串行口为方式0,并允许接收 LOOP:CLR P3.2 ;并行输入数据 SETB P3.2 ;允许串行移位操作 JNB RI,$ ;等待接收完毕 CLR RI ;标志位清零 MOV A,SBUF ;接受数据 MOV P2,A ;送P2口显示 LCALL DELAY ;调用延时程序 AJMP LOOP ;循环
【例7.3-2】双机通信。设甲乙两机以串行方式1进行数据 传送,fosc=11.0592MHz,波特率为1200b/s。甲机发送 的1、2、3、4、5、6、7、8八个数字,存在内部 RAM40H~4FH单元中,乙机接收后在数码管上显示。 编程思路:T1的设置。设SMOD=0,T1工作在方式2。T0 不用,则TMOD=20H,T1的计数初值为: X=256-(20×11059200)/(32×12×1200)=232=E8H 由于T1用于波特率发生器,故禁止中断,TR1=1启动。 串口设置。工作方式1(M0M1=01),其他位均为0,可 得SCON=40H。查询方式传送,禁止串口中断。 甲乙两机设置相同。
相关文档
最新文档