第7章 89C51串行口及串行通信技术
秦晓飞系列-单片机原理及应用-第7章 89C51、S51串行口及串行通信技术
第7章 89C51/S51串行口及串行口通信技术
§7.1 §7.2 §7.3 §7.4 §7.5 §7.6 串行通信基本知识 串行口及应用 89C51/S51与89C51/S51点对点异步通信 89C51/S51与PC机间通信 无线单片机及其点到多点无线通信 RFID技术与物联网的应用
7.1 串行通信基本知识
7.1 串行通信基本知识
7.1.3 异步通信和同步通信 2.同步通信
同步通信中,在数据开始传送前用同步字符来指示(常约定1~2个),并由时 钟来实现发送端和接收端同步,即检测到规定的同步字符后,下面就连续按顺序 传送数据,直到通信告一段落。 同步传送时,字符与字符之间没有间隙,也不用起始位和停止位,仅在数据 块开始时用同步字符SYNC来指示,其数据格式如图7-4所示。
在帧格式中,一个字符由四个部分组成:起始位、数据位、奇偶校验位和停 止位。首先是一个起始位(0),然后是5~8位数据(规定低位在前,高位在后) ,接下来是奇偶校验位(可省略),最后是停止位(1)。
• 起始位(0)信号只占用一位,用来通知接收设备一个待接收的字符开始到达 。线路上在不传送字符时应保持为 1。接收端不断检测线路的状态,若连续为1 以后又测到一个0,就知道发来一个新字符, 应马上准备接收。字符的起始位 还被用作同步接收端的时钟,以保证以后的接收能正确进行。 • 数据位紧接在起始位后面,它可以是5(D0~D4)、6、7或8位(D0~D7)。 • 奇偶校验(D8)只占一位,但在字符中也可以规定不用奇偶校验位,则这一位 就可省去。也可用这一位( 1/0 )来确定这一帧中的字符所代表信息的性质( 地址/数据等)。 • 停止位用来表征字符的结束,它一定是高电位(逻辑1)。停止位可以是1位、 1.5位或2位。接收端收到停止位后,知道上一字符已传送完毕,同时,也为接 收下一个字符做好准备——只要再接收到 0,就是新的字符的起始位。若停止 位以后不是紧接着传送下一个字符,则使线路电平保持为高电平(逻辑1)。
单片机原理及接口技术李朝青课本答案第七章
第七章1、什么是串行异步通信,它有哪些作用?答:在异步串行通信中,数据是一帧一帧(包括一个字符代码或一字节数据)传送的,每一帧的数据格式参考书。
通信采用帧格式,无需同步字符。
存在空闲位也是异步通信的特征之一。
2、89C51单片机的串行口由哪些功能部件组成?各有什么作用?答:89C51单片机的串行接口由发送缓冲期SBUF,接收缓冲期SBUF、输入移位寄存器、串行接口控制器SCON、定时器T1构成的波特率发生器等部件组成。
由发送缓冲期SBUF发送数据,接收缓冲期SBUF接收数据。
串行接口通信的工作方式选择、接收和发送控制及状态等均由串行接口控制寄存器SCON控制和指示。
定时器T1产生串行通信所需的波特率。
3、简述串行口接收和发送数据的过程。
答:串行接口的接收和发送是对同一地址(99H)两个物理空间的特殊功能寄存器SBUF进行读和写的。
当向SBUF发“写”命令时(执行“MOV SBUF,A”),即向缓冲期SBUF装载并开始TXD引脚向外发送一帧数据,发送完便使发送中断标志位TI=1。
在满足串行接口接收中断标志位RI(SCON.0)=0的条件下,置允许接收位REN(SCON.4)=1,就会接收一帧数据进入移位寄存器,并装载到接收SBUF中,同时使RI=1。
当发读SBUF 命令时(执行“MOV A, SBUF”),便由接收缓冲期SBUF取出信息通过89C51内部总线送CPU。
4、Error! Hyperlink reference not valid.Error! Hyperlink reference not valid.89C51串行口有几种工作方式?有几种帧格式?各工作方式的波特率如何确定?答:89C51串行口有4种工作方式:方式0(8位同步移位寄存器),方式1(10位异步收发),方式2(11位异步收发),方式3(11位异步收发)。
有2种帧格式:10位,11位方式0:方式0的波特率≌fosc/12(波特率固定为振荡频率1/12)方式2:方式2波特率≌2SMOD/64×fosc方式1和方式3:方式1和方式3波特率≌2SMOD/32×(T1溢出速率)如果T1采用模式2则:5、若异步通信接口按方式3传送,已知其每分钟传送3600个字符,其波特率是多少?答:已知每分钟传送3600个字符,方式3每个字符11位,则:波特率=(11b/字符)×(3600字符/60s)=660b/s6、89C51中SCON的SM2,TB8,RB8有何作用?答:89c51SCON的SM2是多机通信控制位,主要用于方式2和方式3.若置SM2=1,则允许多机通信。
串行通信7章改
;查询结束,清RI
MOV A ,SBUF
;读数据到累加器
ACALL LOGSIM
;进行逻辑模拟
SJMP START
;准备下一次模拟
2.串行口方式1的应用
例3:在8051片内RAM30~4FH单元中有32个字节的数
据,若采用方式1进行串行通信,波特率为1200bit/s,
fosc=6MHz(SMOD=0),用查询和中断两种方式编写发
HERE:JNB TI,HERE CLR TI INC R0 DJNZ R7,LOOP SJMP $ END
查询方式
接收:
MAIN:
HERE:
ORG 0000H AJMP MAIN ORG 0030H MOV TMOD,#20H MOV TL1,#0F3H MOV TH1,#0F3H SETB TR1 MOV SCON,#50H MOV PCON,#00H MOV R0,#30H MOV R7,#20H JNB RI,HERE CLR RI
MAIN: MOV SP,#60H
HERE: AJMP HERE
MOV TMOD,#20H SER: CLR TI
MOV TH1,#0F3H
INC R0
MOV TL1,#0F3H
MOV A,@R0
SETB TR1
MOV SBUF,A
MOV SCON,#40H
DJNZ R7,HE
MOV R0,#30H
HERE: AJMP HERE
MOV TMOD,#20H SER: CLR RI
MOV TH1,#0F3H
MOV A,SBUF
同步通信数据格式
异步通信数据格式
四、通信数据的差错检测
(1)奇偶校验 在数据位后附加一个奇偶校验位,该位可为“0”
单片机原理及接口技术课后答案第七章
第七章1、什么是串行异步通信,它有哪些作用?答:在异步串行通信中,数据是一帧一帧(包括一个字符代码或一字节数据)传送的,每一帧的数据格式参考书。
通信采用帧格式,无需同步字符。
存在空闲位也是异步通信的特征之一。
2、89C51单片机的串行口由哪些功能部件组成?各有什么作用?答:89C51单片机的串行接口由发送缓冲期SBUF,接收缓冲期SBUF、输入移位寄存器、串行接口控制器SCON、定时器T1构成的波特率发生器等部件组成。
由发送缓冲期SBUF发送数据,接收缓冲期SBUF接收数据。
串行接口通信的工作方式选择、接收和发送控制及状态等均由串行接口控制寄存器SCON控制和指示。
定时器T1产生串行通信所需的波特率。
3、简述串行口接收和发送数据的过程。
答:串行接口的接收和发送是对同一地址(99H)两个物理空间的特殊功能寄存器SBUF进行读和写的。
当向SBUF发“写”命令时(执行“MOV SBUF,A”),即向缓冲期SBUF装载并开始TXD引脚向外发送一帧数据,发送完便使发送中断标志位TI=1。
在满足串行接口接收中断标志位RI(SCON.0)=0的条件下,置允许接收位REN (SCON.4)=1,就会接收一帧数据进入移位寄存器,并装载到接收SBUF中,同时使RI=1。
当发读SBUF命令时(执行“MOV A, SBUF”),便由接收缓冲期SBUF 取出信息通过89C51内部总线送CPU。
4、89C51串行口有几种工作方式?有几种帧格式?各工作方式的波特率如何确定?答:89C51串行口有4种工作方式:方式0(8位同步移位寄存器),方式1(10位异步收发),方式2(11位异步收发),方式3(11位异步收发)。
有2种帧格式:10位,11位方式0:方式0的波特率≌fosc/12(波特率固定为振荡频率1/12)方式2:方式2波特率≌2SMOD/64×fosc方式1和方式3:方式1和方式3波特率≌2SMOD/32×(T1溢出速率)如果T1采用模式2则:5、若异步通信接口按方式3传送,已知其每分钟传送3600个字符,其波特率是多少?答:已知每分钟传送3600个字符,方式3每个字符11位,则:波特率=(11b/字符)×(3600字符/60s)=660b/s6、89C51中SCON的SM2,TB8,RB8有何作用?答:89c51SCON的SM2是多机通信控制位,主要用于方式2和方式3.若置SM2=1,则允许多机通信。
89C51串行口及串行通信技术
②信号线的连接和应用 ► 使用MODEM连接 适用于远距离通信(15米以上) 通过专用的电话线通信
采用Modem(DCE)和电话网通信时的信号连接
采用专用线通讯时的信号连接
► 直接连接
不使用MODEM,近距离传送 简单只需3条线(TXD,RXD,SG) 也可采用反馈与交叉结合的连接法
当通信速率低于20Kb/s时,RS-232C所能直接连接的最 大物理距离为15m;使用特制的低电容电缆可以达到 150m。
1.RS-232C标准的信号线
①RS-232C信号线的定义 ► 传送信息信号 发送数据TXD:由发送端向接收端发送数据 接收数据RXD:用来接收发送端输出的数据 ► 联络信号 请求传送信号RTS:表示DTE请求DCE发送数据 清除发送CTS:表示DCE准备好接收DTE发来数据
数传机就绪DSR: DCE向DTE发送的联络信号, 为1时,DCE处于就绪状态。 数据终端就绪DTR:DTE向DCE发送的联络信号, 为1时,DTE处于就绪状态。 数据载波检出信号DCD:表示DCE已接通通信链路。 振铃指示信号RI:这是DCE向DTE发的状态信号, 为1时,表示已被呼叫。
►
由MAX232构成的电平转换电路
二、RS-422接口标准 ► RS-422标准是一种平衡方式传输(双端接收 和双端发送) ► 当AA的电平高于BB线的电平200MV表示逻辑 1 ► 当AA的电平低于BB线的电平200MV表示逻辑 0 ► RS-422最大传输速率 10MB/S(15M),90KB(1200M)
数据 字符2
… …
数据 字符n
CRC1
CRC2
(b)双同步字符帧结构
在同步通信中,同步字符可采用统一的标准格式, 也可以由用户在传送之前相互约定好。在单同步通 信字符帧结构中,如图(a)所示,同步字符通常采 用ACSII码中规定的SYN(同步)(即16H)代码;在双 同步通信字符帧结构中,同步字符一般采用国际通 用标准代码EB90H。 优点:同步通信的数据传输速率较高,通常可达到 56Mbps或更高。 缺点:要求发送时钟和接收时钟保持严格同步。
第7章MCS51的串行口
发送 接收
半双工
发送
时间1
接收
接收
时间2
发送
全双工
发送 接收
接收
发送
8051有1个全双工异步通信串行口
通信线的连接 1、单片机与单片机 2、单片机与PC 3、多机通信
+5V
TXD RXD89C51 主机
单片机 +
1 3 4 5
T1IN
16
2 6
+ 单片机
TXD + RXD
11
MAX232
SBUF 串行口
串行接口功能
1.发送器:并串数据格式转换,添加标识位和校 验位,一帧发送结束,设置结束标志,申请中断。 2.接收器:串并数据格式转换,检查错误,去掉 标识位,保存有效数据,设置接收结束标志,申请中 断。 3.控制器:接收编程命令和控制参数,设置工作方 式:同步/异步、字符格式、波特率、校验方式、数 据位与同步时钟比例等。
• 89C51串行口控制寄存器SCON
字节地址98H,可位寻址
位地址 位符号 9FH SM0 9EH SM1 9DH SM2 9CH REN 9BH TB8 9AH RB8 99H TI 98H RI
SM0,SM1:串口4种工作方式选择。
SM0 0 0 1 1 SM1 0 1 0 1 工作方式 方式0 方式1 方式2 方式3 功能 8位同步移位寄存器 8位异步收发 9位异步收发 9位异步收发 波特率 fosc/12 可变 fosc/64或fosc/32 可变
空 闲
空 闲
下一字符 起始位
D0
D7
一次传输的起始位、字符各位、校验位、停止 位构成一个字符帧(数据帧)信息 帧与帧间可有任意个空闲位,起始位后紧跟数据 的最低位。
89C51串口通信的四种方式及特点
1、89C51串口通信的四种方式及特点通过设置SCON可以设置串行口的工作方式,相应设置位是SM0,SM1,共有四种方式方式0:为同步移位寄存器的输入输出方式,一般用于扩展I/O口,数据位为8位,无起始停止位方式1:波特率可调的异步通信方式,数据位为10位,1位起始位,8位数据位,1位停止位方式2:波特率固定的11位异步通信方式,数据位为11位,1位起始位,8位数据位,1位停止位,1位可编程的第9位,一般用于多机通讯。
方式3:与方式2功能相同,只是波特率可调。
2、51单片机的时钟周期,状态周期,机器周期如何定义的时钟周期也叫振荡周期或晶振周期,即晶振的单位时间发出的脉冲数,一般有外部的振晶产生,发出一个脉冲的时间就是时钟周期,也就是1/12微秒。
通常也叫做系统时钟周期。
是计算机中最基本的、最小的时间单位。
在8051单片机中把一个时钟周期定义为一个节拍(用P表示),二个节拍定义为一个状态周期(用S表示)在计算机中,为了便于管理,常把一条指令的执行过程划分为若干个阶段,每一阶段完成一项工作。
例如,取指令、存储器读、存储器写等,这每一项工作称为一个基本操作。
完成一个基本操作所需要的时间称为机器周期。
8051系列单片机的一个机器周期同6个S周期(状态周期)组成。
3、程序状态字寄存器PSW的格式及各位功能1. CY(Carry):CY表示加法运算中的进位和减法运算中的借位,加法运算中有进位或减法运算中有借位则CY位置1,否则为0。
2. AC(Auxiliary Carry):与CY基本相同,不同的是AC表示的是低4位向高4位的进、借位。
3.F0:该位是用户自己管理的标志位,用户可以根据自己的需要来设定。
4. RS1、RS0:这两位用于选择当前工作寄存器区。
8051有8个8位寄存器R0~R7,它们在RAM中的地址可以根据用户需要来确定。
RS1 RS0:R0~R7的地址0 0:00H~07H 0 1:08H~0FH 1 0:10H~17H 1 1:18H~1FH5.OV:该位表示运算是否发生了溢出。
单片机第7章89C51串行口及串行通信技术
是奇数。
返回
2015年12月1日星期二 32
2、串行通信协议
7.1.1数据通信
• 串行通信指数据是一位一位按顺序传送的通信方式。 • 它的突出优点是只需一对传输线(利用电话线就可作为传 输线),这样就大大降低了传送成本,特别适用于远距离
通信;
• 其缺点是传送速度较低。假设并行传送N位数据所需时间 位T,那么串行传送的时间至少为NT,实际上总是大于NT 的。 • 图7-1(b)所示为串行通信方式的连接方法。
• 异步通信的传送速率在50b/s--19200b/s之间,常用于计 算机到终端机和打印机之间的通信、直通电报以及无线电 通信的数据发送等。
返回
2015年12月1日星期二 21
7.1.4串行通信的过程及通信协议
1、串←→并转换与设备同步 两个通信设备在串行线路上成功地实现通 信必须解决两个问题:
一是串←→并转换,即如何把要发送的并行数 据串行化,把接收的串行数据并行化; 二是设备同步,即同步发送设备与接收设备的 工作节拍,以确保发送数据在接收端被正确读 出。
返回
2015年12月1日星期二 28
2、串行通信协议
• 通信协议是对数据传送方式的规定,包括数据格
式定义和数据位定义等。 • 通信双方必须遵守统一的通信协议。串行通信协 议包括同步协议和异步协议两种。 • 在此只讨论异步串行通信协议和异步串性协议规 定的字符数据的传送格式。
返回
2015年12月1日星期二 29
2015年12月1日星期二
3
第七章 89C51串行口及串行通信技术
7.1 7.2 7.3 7.4 7.5 7.6 7.7 串行通信基本知识 串行口及应用 RS-232C标准接口总线及串行通信硬件设计 89C51与89C51点对点异步通信 89C51与PC机间通信软件的设计 PC机与多个单片机间的通信 思考题与习题
第7章串行口
一、 89C51串行口 1、结 构
图7-7 串行口内部结构示意简图
☞ 2、串行口控制字及控制寄存器
串行口控制寄存器SCON(98H)
• ①SM0和SM1(SCON.7,SCON.6)——串行
口工作方式选择位。两个选择位对应4种通信方式,
如表7-1所示。其中,fosc是振荡频率。
3、串行通信工作方式
2 SMOD f osc 16 / 2 初值 串行方式1、方式3波特率≌ 32 12
4、波特率设计
• 定时器T1用作波特率发生器时,通常选用定时器模 式2(自动重装初值定时器)比较实用。每过“28-X” 个机器周期,定时器T1就会产生一次溢出。
• T1溢出速率为 T1溢出速率≌(fosc/12)/(28-X)
移位时钟来源不同,因此,各种方式的波特率计算公式也
不同。
4、波特率设计
• (1)方式0的波特率 由图7-14可见,方式0时,发送或接收一位数据的移位 时钟脉冲由S6(即第6个状态周期,第12个节拍)给出, 即每个机器周期产生一个移位时钟,发送或接收一位数据。
因此,波特率固定为振荡频率的1/12,并不受PCON寄存
TxD输出移位时钟,频率=fosc1/12;
每接收 8位数据RI就自动置1;
需要用软件清零 RI。
☞经常配合“串入并出”“并入串出”移位 寄存器一起使用扩展接口
☞方式0工作时,多用查询方式编程: 发送:MOV SBUF,A 接收:JNB RI,$ JNB TI,$ CLR RI CLR TI MOV A, SBUF ☞复位时,SCON 已经被清零,缺省值: 方式0。 ☞接收前,务必先置位 REN=1 允许接收数据。
89C51串行通信
12
51单片机的串行口的工作方式 单片机的串行口的工作方式
数据接收的有效性:
如果RI=0、SM2=0,则接收的数据送入SBUF,停止 位送入RB8,置RI=1;向CPU申请中断。 如果RI=0、SM2=1,那么只有停止位为1才发生上述 操作。 如果RI=0、SM2=1,且停止位为0,则接收的数据丢 弃。 如果RI=1,则接收的数据在任何情况下都不装入 SBUF,即数据丢失。
单片机实训
执行校长
单片机实训(第一讲下) 单片机实训(第一讲下)
教学内容
串行通信的基本概念 51单片机的串行口的功能与结构 单片机的串行口的功能与结构 51单片机的串行口的工作方式 单片机的串行口的工作方式 51单片机的串行口的波特率设置 单片机的串行口的波特率设置 多机通信
2
重点、 重点、难点
9
51单片机的串行口的功能与结构 单片机的串行口的功能与结构
RI——接收中断标志位 RI——接收中断标志位 —— 当一帧数据接收完成后,由内部硬件使RI置位, RI置位 当一帧数据接收完成后,由内部硬件使RI置位,向 CPU请求中断 中断响应后必须用软件清0 RI也可 请求中断。 CPU请求中断。中断响应后必须用软件清0。RI也可 供查询使用。 供查询使用。
发送时:第9位数据由 位数据由SCON中的 中的TB8位提供; 位提供; 发送时: 位数据由 中的 位提供 接收时:当第9位数据进入移位寄存器后 将前8位 位数据进入移位寄存器后, 接收时:当第 位数据进入移位寄存器后,将前 位 数据送入SBUF中,第9位装入 位装入SCON中的 中的RB8。 数据送入 中 位装入 中的 。
主要由发送数据缓冲器、发送控制器、输出控制门、 接收控制器、输入移位寄存器等组成。
89C51串行口及串行通信技术
从本质上说,所有的串行接口电路都是以并行数据形式与
CPU连接,以串行数据形式与外部逻辑设备连接。它们的基 本功能是从外部逻辑设备接收串行数据,转换成并行数据后
传送给CPU,或从CPU接收并行数据,转换成串行数据后输
出到外部逻辑设备。
19
89C51具有一个全双工串行通信接口。
作用:
●作为UART使用。
也可以用作地址/数据帧的标识位,D8=1表示该帧信息传 送的是地址,D8=0表示传送的是数据。两帧信息之间可以
无间隔,也可以有间隔,且间隔时间可任意改变,间隔用
空闲位“1”来填充。
6
异步通信
图
异步通信数据格式
7
奇偶校验
是一种校验代码传输正确性的方法。根据被传
输的一组二进制代码的数位中“1”的个数是奇数或
0 1 1
1 0 1
1 2 3
9位UART,波特率可变(由T1或T2溢出率
决定)
28
(3)串行通信工作方式
方式0
方式0时,串行口为同步移位寄存器的输入输出方式。
主要用于扩展并行输入或输出口。数据由RXD(P3.0)引脚
输入或输出,同步移位脉冲由TXD(P3.1)引脚输出。发送 和接收均为8位数据,低位在先,高位在后。波特率固定为
23
●SM2,多机通信控制位,主要用于方式2和方式3。当接收机
的SM2=1时可以利用收到的RB8来控制是否激活RI(RB8=0时不
激活RI,收到的信息丢弃;RB8=1时收到的数据进入SBUF,并 激活RI,进而在中断服务中将数据从SBUF读走)。当SM2=0时,
不论收到的RB8为0和1,均可以使收到的数据进入SBUF,并激
从低位开始串行输出,数据的低位在右高位在左,在具体应用
单片机原理及接口技术-89C51串行口及串行通信技术解析59页PPT
56、书不仅是生活,而且是现在、过 去和未 来文化 生活的 源泉。 ——库 法耶夫 57、生命不可能有两次,但许多人连一 次也不 善于度 过。— —吕凯 特 58、问渠哪得清如许,为有源头活水来 。—— 朱熹 59、我的努力求学没有得到别的好处, 只不过 是愈来 愈发觉 自己的 无知。 ——笛 卡儿
单片机原理及接口技术-89C51串行口及 串行通信技术解析
1、合法而稳定的权力在使用得当时很 少遇到 抵抗。 ——塞 ·约翰 逊 2、权力会使人渐渐失去温厚善良的美 德。— —伯克
3、最大限度地行使权力总是令人反感 ;权力 不易确 定之处 始终存 在着危 险。— —塞·约翰逊 4、权力会奴化一切。——塔西佗
拉
60、生活的道路一旦选定,就要勇敢地 走到底 ,决不 回头。 ——左
பைடு நூலகம்
第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
第7章89C51串行口及串行通信技术要点
图7-2 串行通信中的数据传送方式
7.1 串行通信基本知识
7.1.1 数据通信 7.1.2 串行通信的传输方式 7.1.3 异步通信和同步通信 7.1.4 串行通信的过程及通信协议
7.1.3异步通信和同步通信
• 串行通信有两种基本通信方式,即异步通信 和同步通信。
1、异步通信 在异步通信中,数据是一帧一帧(包括一 个字符代码或一字节数据)传送的,每一 帧的数据格式如图7-3所示
10b/字符×120字符/s=1200b/s
3、波特率(Baud rate)
• 每一位代码的传送时间Td为波特率的倒数。 Td=1b/(1)=0.833ms
• 异步通信的传送速率在50b/s--19200b/s之 间,常用于计算机到终端机和打印机之间 的通信、直通电报以及无线电通信的数据 发送等。
• 串行通信指数据是一位一位按顺序传送的通信方式。 • 它的突出优点是只需一对传输线(利用电话线就可
作为传输线),这样就大大降低了传送成本,特别 适用于远距离通信;
• 其缺点是传送速度较低。假设并行传送N位数据所 需时间位T,那么串行传送的时间至少为NT,实际上 总是大于NT的。
7.1 串行通信基本知识
2、同步通信
• 同步通信中,在数据开始传送前用同步字
符来指示(常约定1个--2个),并由时钟来 实现发送端和接收端同步,即检测到规定 的同步字符后,下面就连续按顺序传送数 据,直到通信告一段落。
• 同步传送时,字符与字符之间没有间隙, 也不用起始位和停止位,仅在数据块开始 时用同步字符SYNC来指示,其数据格式如 图7-4所示。
(2)设备同步
• 进行串行通信的两台设备必须同步工作才能 有效地检测通信线路上的信号变化,从而采 样传送数据脉冲。
89c51串口通信
B=1MHz,每位数据占1s。
4. 发送过程:写入SBUF,启动发送,一帧发送结束,TI=1。 接收过程:REN=1且RI=0,启动接收,一帧接收完毕,RI=1。
TXD 发 写入 (a) 送 SBUF 时 序 RXD输出
D0
D1
D2
D3
D4
D5
D6
D7
TI 接 (b) 收 写REN=1 时 RI=0 序 RXD输入 RI
3.节电控制寄存器PCON
SMOD(PCON.7):波特率加倍控制位。 SMOD=1,波特率加倍, SMOD=0,则不加倍。
1.3 串行接口的工作方式
SM0,SM1选择四种工作方式。
一、方式0:同步移位寄存器方式。用于扩展并行I/O接口。
1. 一帧8位,无起始位和停止位。
2. RXD:数据输入/输出端。 TXD:同步脉冲输出端,每个脉冲对应一个数据位。 3. 波特率B = fosc/12 如: fosc=12MHz,
5. 移位寄存器方式举例
数据从RXD(P3.0)引脚串行输出,低位在先,高位
在后;TXD(P3.1)引脚输出移位脉冲,其频率为foc/12;
发送完毕后,中断标志位TI为1。如要发送数据,如下所示: MOV SCON,#00H ;串行口方式0 MOV SBUF,A JNB TI,$ ;将数据送出 ;等待数据发送完毕
四 串行数据传送方向
单工通讯:数据单向传送。 半双工通讯:数据可分时双向传送。 全双工通讯:可同时进行发送和接收。
发送2 串行口控制寄存器
一、1个全双工串行接口,可同时进行发送和接收。 串行接口输入/输出引脚:TXD(P3.1)、RXD(P3.0) 数据格式(P.237图):按不同方式,一帧位数 8/10/11 发送/接收时,数据皆低位在前。
第7章 89C51的串行口
(1)从机串行口编程为方式2或方式3接收,且置“1”SM2和REN 位,使从机只处于多机通讯且接收地址帧的状态。 (2)主机先将从机地址(即准备接收数据的从机)发给各从机, 主机发出的地址信息的第9位为1,各从机接收到的第9位信息RB8为 1,且由于SM2=1,则置“1” RI,各从机都响应中断,执行中断程 序。在中断服务子程序中,判主机送来的地址是否和本机地址相符 合,相符则该从机清“0”SM2位,准备接收主机的数据或命令;若 25 不符,则保持SM2=1状态。
6
(3)REN——允许串行接收位 由软件置“1”或清“0”。 REN=1 允许串行口接收数据。
REN=0
禁止串行口接收数据。
(4)TB8——发送的第9位数据
方式2和3时,TB8是要发送的第9位数据,可作为奇偶校验
位使用,也可作为地址帧或数据帧的标志。 =1为地址帧, =0为数据帧 (5)RB8——接收到的第9位数据
2
89C51的串行口有4种工作方式 ,波特率由片内定时器/计数器
控制。每发送或接收一帧数据,均可发出中断请求。
除用于串行通讯,还可用来扩展并行I/O口。
3
7.1
串行口的结构
串行口内部结构如下图,两个物理上独立的接收和发送缓冲 器SBUF(特殊功能寄存器),可同时收、发数据(全双工)。
发送缓冲器只能写入不能读出,接受缓冲器只能读出不能写 入。两个缓冲器共用一个特殊功能寄存器字节地址:SBUF(99H)
1
下图给出了一个字符帧的异步串行通信格式:
一个字符帧 空 闲 起 始 位 数据位 校 验 位 停 止 位 空 闲
下一字符 起始位
LSB
MSB
起始位——开始一个字符传送的标志位。 数据位——起始位之后传送的数据信号位。 奇偶效验位——用于对字符的传送作正确性检查。 停止位——用以标志一个字符的结束。 位时间——发送1位数据所需时间。 帧(frame)——从起始位开始到停止位结束的全部内容称 为一帧。
89C51单片机中文资料
89C51单片机中文资料一、概述89C51是一款由英特尔公司推出的单片机,广泛应用于嵌入式系统和物联网设备中。
本文将为您介绍89C51单片机的中文资料,包括其基本特性、应用领域、技术参数等内容。
二、基本特性1. 架构:89C51采用8位的CMOS单片机架构,具有强大的数据处理能力。
2. 存储器:89C51具有4KB的闪存程序存储器,用于存储程序代码和数据。
此外,它还配备了128字节的RAM,用于存储临时数据。
3. 时钟系统:89C51内置了一个可编程的时钟/计数器,可提供准确的时钟信号和定时功能。
4. 输入/输出:89C51具有多个通用输入/输出引脚,可用于连接外部设备和传感器。
5. 串行通信:89C51支持串行通信接口,可与其他设备进行数据交换和通信。
6. 中断系统:89C51具有灵活的中断系统,可实现对外部事件的快速响应。
三、应用领域89C51单片机广泛应用于各种嵌入式系统和物联网设备中,其应用领域包括但不限于:1. 工业控制:89C51可用于工业自动化控制系统,如温度控制、压力控制等。
2. 家电产品:89C51可用于家电产品,如洗衣机、冰箱、空调等,实现智能控制和功能扩展。
3. 交通系统:89C51可用于交通信号灯、智能停车系统等,提高交通效率和安全性。
4. 安防设备:89C51可用于安防设备,如入侵报警系统、监控摄像头等,实现智能化监控和报警功能。
5. 医疗设备:89C51可用于医疗设备,如血压计、心电图仪等,提供准确的数据采集和处理功能。
四、技术参数以下是89C51单片机的一些典型技术参数:1. 工作电压:3.3V-5V2. 最大时钟频率:12MHz3. I/O口数量:32个4. 串行通信接口:支持SPI和I2C协议5. 温度范围:-40℃至85℃6. 封装形式:DIP、PLCC、QFP等五、学习资料推荐如果您对89C51单片机感兴趣并希望深入学习,以下是一些中文学习资料的推荐:1. 《单片机原理与应用》:该书详细介绍了单片机的原理、应用和编程方法,适合初学者入门学习。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
• 串行通信只用一位数据线传送数据的位信号,即使加上几 串行通信只用一位数据线传送数据的位信号, 条通信联络控制线,也用不了很多电缆线。因此, 条通信联络控制线,也用不了很多电缆线。因此,串行通 信适合远距离数据传送,如大型主机与其远程终端之间、 信适合远距离数据传送,如大型主机与其远程终端之间、 处于两地的计算机之间采用串行通信就非常经济。当然, 处于两地的计算机之间采用串行通信就非常经济。当然, 串行通信要求有转换数据格式、时间控制等逻辑电路,这 串行通信要求有转换数据格式、时间控制等逻辑电路, 些电路目前已被集成在大规模集成电路中( 些电路目前已被集成在大规模集成电路中(称为可编程串 行通信控制器),使用很方便。 行通信控制器),使用很方便。 ),使用很方便
例如,规定用 编码, 例如,规定用ASCII编码,字符为七位,加一个奇偶校验位、一个起始位、 编码 字符为七位,加一个奇偶校验位、一个起始位、 一个停止位,则一帧共十位。 一个停止位,则一帧共十位。
返回
2012年 2012年3月27日星期二 27日星期二 16
2、同步通信 •
同步通信中,在数据开始传送前用同步字符来指示( 同步通信中,在数据开始传送前用同步字符来指示(常 约定1个--2个),并由时钟来实现发送端和接收端同步, 约定 个 个),并由时钟来实现发送端和接收端同步, 并由时钟来实现发送端和接收端同步 即检测到规定的同步字符后,下面就连续按顺序传送数据, 即检测到规定的同步字符后,下面就连续按顺序传送数据, 直到通信告一段落。 直到通信告一段落。
返回
2012年 2012年3月27日星期二 27日星期二 14
1、异步通信
• 起始位( )信号只占用一位,用来通知接收设备一个待接收的字符开始到达。 起始位(0)信号只占用一位,用来通知接收设备一个待接收的字符开始到达。线路上在不 传送字符时应保持为1。接收端不断检测线路的状态,若连续为 以后又测到一个 以后又测到一个0, 传送字符时应保持为 。接收端不断检测线路的状态,若连续为1以后又测到一个 ,就知道 发来一个新字符, 应马上准备接收。字符的起始位还被用作同步接收端的时钟, 发来一个新字符, 应马上准备接收。字符的起始位还被用作同步接收端的时钟,以保证以 后的接收能正确进行。 后的接收能正确进行。 • • 起始位后面紧接着是数据位,它可以是 位 )、6位 位或8位 起始位后面紧接着是数据位,它可以是5位(D0--D4)、 位、7位或 位(D0--D7)。 数据位 )、 位或 )。 奇偶校验( )只占一位,但在字符中也可以规定不用奇偶校验位,则这一位就可省去。 奇偶校验(D8)只占一位,但在字符中也可以规定不用奇偶校验位,则这一位就可省去。 也可用这一位( )来确定这一帧中的字符所代表信息的性质(地址/数据等 数据等)。 也可用这一位(1/0)来确定这一帧中的字符所代表信息的性质(地址 数据等)。 • 停止位用来表征字符的结束,它一定是高电位(逻辑 )。停止位可以是1位 )。停止位可以是 位或2位 停止位用来表征字符的结束,它一定是高电位(逻辑1)。停止位可以是 位、1.5位或 位。 用来表征字符的结束 位或 接收端收到停止位后,知道上一字符已传送完毕,同时,也为接收下一个字符做好准备--只 接收端收到停止位后,知道上一字符已传送完毕,同时,也为接收下一个字符做好准备 只 要再接收到0,就是新的字符的起始位。若停止位以后不是紧接着传送下一个字符, 要再接收到 ,就是新的字符的起始位。若停止位以后不是紧接着传送下一个字符,则使线 路电平保持为高电平(逻辑 )。 路电平保持为高电平(逻辑1)。
第七章 89C51串行口及串行通信技术 89C51串行口及串行通信技术
• 本书前几章涉及的数据传送都是采用并行方式,如8051与 本书前几章涉及的数据传送都是采用并行方式, 8051与 存储器,存储器与存储器,8051与并行打印机之间的通信。 存储器,存储器与存储器,8051与并行打印机之间的通信。 与并行打印机之间的通信 89C51处理 位数据, 89C51处理8位数据,若以并行传送方式一次传送一个字节 处理8 的数据,至少需要8条数据线。当89C51与打印机连接时, 的数据,至少需要8条数据线。 89C51与打印机连接时, 与打印机连接时 除8条数据线外,还需要状态、应答等控制线。一些微机系 条数据线外,还需要状态、应答等控制线。 统,如IBM-PC系列机,由于磁盘机、CRT、打印机与主机 IBM-PC系列机,由于磁盘机、CRT、 系列机 系统的距离有限,所以, 系统的距离有限,所以,使用多条电缆线以提高数据传送速 度还是合算的。但是,计算机之间、计算机与其终端之间的 度还是合算的。但是,计算机之间、 距离有时非常远,此时,电缆线过多是不经济的 距离有时非常远,此时,
返回
2012年 2012年3月27日星期二 27日星期二 12
图7-3 异步通信数据格式 返回
2012年 2012年3月27日星期二 27日星期二 13
1、异步通信
• 在帧格式中,一个字符由四个部分组成:起始位、数据位、 在帧格式中,一个字符由四个部分组成:起始位、数据位、 奇偶校验位和停止位。首先是一个起始位( ),然后是5 ),然后是 奇偶校验位和停止位。首先是一个起始位(0),然后是 位数据( ),接下来是奇 位--8位数据(规定低位在前,高位在后),接下来是奇 位数据 规定低位在前,高位在后), 偶校验位(可省略),最后是停止位( )。 偶校验位(可省略),最后是停止位(1)。 ),最后是停止位
• 在实际工作中,计算机的CPU与外部设备之间常常要进 在实际工作中,计算机的 与外部设备之间常常要进 行信息交换, 行信息交换,一台计算机与其他计算机之间也往往要交 换信息,所有这些信息交换均可称为通信。 换信息,所有这些信息交换均可称为通信。 • 通信方式有两种,即并行通信和串行通信。 通信方式有两种,即并行通信和串行通信。 • 通常根据信息传送的距离决定采用哪种通信方式。 通常根据信息传送的距离决定采用哪种通信方式。 • 例如,在IBM-PC机与外部设备(如打印机等)通信时, 例如, 机与外部设备( 机与外部设备 如打印机等)通信时, 如果距离小于30m,可采用并行通信方式;当距离大于 ,可采用并行通信方式; 如果距离小于 30m时,则要采用串行通信方式。89C51单片机具有并 时 则要采用串行通信方式。 单片机具有并 行和串行二种基本通信方式。 行和串行二种基本通信方式。
返回
2012年 2012年3月27日星期二 27日星期二 7
7.1.1数据通信 7.1.1数据通信
• 串行通信指数据是一位一位按顺序传送的通信方式。 串行通信指数据是一位一位按顺序传送的通信方式。 • 它的突出优点是只需一对传输线(利用电话线就可作为传 它的突出优点是只需一对传输线( 输线),这样就大大降低了传送成本, 输线),这样就大大降低了传送成本,特别适用于远距离 ),这样就大大降低了传送成本 通信; 通信; • 其缺点是传送速度较低。假设并行传送N位数据所需时间 其缺点是传送速度较低。假设并行传送 位数据所需时间 实际上总是大于NT 位T,那么串行传送的时间至少为 ,那么串行传送的时间至少为NT,实际上总是大于 实际上总是大于 的。 • 图7-1(b)所示为串行通信方式的连接方法。 ( )所示为串行通信方式的连接方法。
返回
2012年 2012年3月27日星期二 27日星期二 8
图7-1 数据通信方式
返回
2012年 2012年3月27日星期二 27日星期二 9
7.1.2串行通信的传输方式 7.1.2串行通信的传输方式
• 串行通信的传送方向通常有三种: 串行通信的传送方向通常有三种: 1. 单向(或单工)配置,只允许数据向一个方向传送; 单向(或单工)配置,只允许数据向一个方向传送; 2. 半双向(或半双工)配置,允许数据向两个方向中的 半双向(或半双工)配置, 任一方向传送,但每次只能有一个站点发送; 任一方向传送,但每次只能有一个站点发送; 3. 全双向(全双工)配置,允许同时双向传送数据,因 全双向(全双工)配置,允许同时双向传送数据, 此,全双工配置是一对单向配置,它要求两端的通信 全双工配置是一对单向配置, 设备都具有完整和独立的发送和接受能力。 设备都具有完整和独立的发送和接受能力。 • 所示为串行通信中的数据传送方式。 图7-2所示为串行通信中的数据传送方式。 所示为串行通信中的数据传送方式
返回
2012年 2012年3月27日星期二 27日星期二 4
7.1 串行通信基本知识
7.1.1 7.1.2 7.1.3 7.1.4 数据通信 串行通信的传输方式 异步通信和同步通信 串行通信的过程及通信协议
返回
2012年 2012年3月27日星期二 27日星期二 5
7.1.1数据通信 7.1.1数据通信
2012年 2012年3月27日星期二 27日星期二
2
第七章 89C51串行口及串行通信技术 89C51串行口及串行通信技术
• 本章将介绍 本章将介绍89C51串行口的结构及应用,PC机与 串行口的结构及应用, 机与 机与89C51 串行口的结构及应用 间的双机通信,一台 机控制多台 机控制多台89C51前沿机的分布 间的双机通信,一台PC机控制多台 前沿机的分布 式系统,以及通信接口电路和软件设计,并给出设计实例, 式系统,以及通信接口电路和软件设计,并给出设计实例, 包括接口电路、程序框图、主程序和接收 发送子程序 发送子程序。 包括接口电路、程序框图、主程序和接收/发送子程序。
2012年 2012年3月27日星期二 27日星期二
3
第七章 89C51串行口及串行通信技术 89C51串行口及串行通信技术
7.1 7.2 7.3 7.4 7.5 7.6 7.7 串行通信基本知识 串行口及应用 RS-232C标准接口总线及串行通信硬件设计 标准接口总线及串行通信硬件设计 89C51与89C51点对点异步通信 与 点对点异步通信 89C51与PC机间通信软件的设计 与 机间通信软件的设计 PC机与多个单片机间的通信 机与多个单片机间的通信 思考题与习题