第7章 AT89S51单片机的串行口.ppt

合集下载

单片机原理及接口技术(C51编程)第7章 定时器计数器

单片机原理及接口技术(C51编程)第7章 定时器计数器
30
图7-14 由外部计数输入信号控制LED的闪烁
(3)设置IE寄存器 本例由于采用T1中断,因此需将IE寄存器的EA、ET1位置1。
(4)启动和停止定时器T1 将寄存器TCON中TR1=1,则启动T1计数;TR1=0,则停止T1计数。
参考程序如下:
#include <reg51.h> void Delay(unsigned int i)
7.4 定时器/计数器的编程和应用 4种工作方式中,方式0与方式1基本相同,只是计数位数不同。方
式0为13位,方式1为16位。由于方式0是为兼容MCS-48而设,计数初 值计算复杂,所以在实际应用中,一般不用方式0,常采用方式1。
7.4.1 P1口控制8只LED每0.5s闪亮一次 【例7-1】在AT89S51的P1口上接有8只LED,原理电路见图7-
当TMOD的低2位为11时,T0被选为方式3,各引脚与T0的逻辑关系 见图7-8。
T0分为两个独立的8位计数器TL0和TH0,TL0使用T0的状态控制位 C/T* 、GATE、TR0 ,而TH0被固定为一个8位定时器(不能作为外部 计数模式),并使用定时器T1的状态控制位TR1,同时占用定时器T1的 中断请求源TF1。
13。采用T0方式1的定时中断方式,使P1口外接的8只LED每0.5s闪亮 一次。
23
图7-13 方式1定时中断控制LED闪亮
24
(1)设置TMOD寄存器 T0工作在方式1,应使TMOD寄存器的M1、M0=01;应设置C/T*=0,为定
时器模式;对T0的运行控制仅由TR0来控制,应使相应的GATE位为0。定时 器T1不使用,各相关位均设为0。所以,TMOD寄存器应初始化为0x01。 (2)计算定时器T0的计数初值

AT89S51单片机串行口的内部结构及工作原理介绍

AT89S51单片机串行口的内部结构及工作原理介绍

AT89S51单片机串行口的内部结构及工作原理介绍AT89S51单片机串行口的内部结构如下图所示。

它有两个物理上独立的接收、发送缓冲器SBUF(属于特殊功能寄存器),可同时发送、接收数据。

发送缓冲器只能写入不能读出,接收缓冲器只能读出不能写入,两个缓冲器共用一个特殊功能寄存器字节地址(99H)。

串行口的控制寄存器共有两个:特殊功能寄存器SCON 和PCON。

下面介绍这两个特殊功能寄存器各位的功能。

1、串行口控制寄存器SCON串行口控制寄存器SCON,字节地址988H,可位寻址,位地址为98H~9FH。

SCON的格式如下图所示。

下面介绍SCON中各位的功能。

(1) SM0、SMl:串行口4种工作方式选择位。

SM0、SM1两位的编码所对应的4种工作方式见下表。

表串行口的4种工作方式(2) SM2:多机通信控制位。

因为多机通信是在方式2和方式3下进行的,因此SM2位主要用于方式2或方式3中。

当串行口以方式2或方式3接收时,如果SM2=1,则只有当接收到的第9位数据(RB8)为1时,才使RI置l,产生中断请求,并将接收到的前8位数据送人SBUF;当接收到的第9位数据(RB8)为0时,则将接收到的前8位数据丢弃。

而当SM2=0时,则不论第9位数据是l还是0,都将前8位数据送入SBUF中,并使RI置1,产生中断请求。

在方式1时,如果SM2=1,则只有收到有效的停止位时才会激活RI。

在方式0时,SM2必须为0。

(3)REN:允许串行接收位。

由软件置1或清0。

REN=1,允许串行口接收数据。

REN=O,禁止串行口接收数据。

(4)TB8:发送的第9位数据。

在方式2和方式3时,TB8是要发送的第9位数据,其值由软件置l或清O。

在双机串行通信时,TB8一般作为奇偶校验位使用;在多机串行通信中用来表示主机发送的是地址帧还是数据帧,TB8=1为地址帧,TB8=0为数据帧。

(5) RB8:接收的第9位数据。

工作在方式2和方式3时,RB8存放接收到的第9位数据。

第7章 串行通信

第7章   串行通信

第7章 串行通信 7.3.1方式0
当SM0=0、SM1=0时,串行方式选择方式0。这种工作方式实质上 是一种同步移位寄存器方式。其数据传输波特率固定为(1/12)fOSC。数 据由RXD(P3.0)引脚输入或输出,同步移位时钟由TXD(P3.1)引脚输 出。接收/发送的是8位数据,传输时低位在前。帧格式如下:
D7 SD7 D6 SD6 D5 SD5 D4 SD4 D3 SD3 D2 SD2 D1 SD1 D0 SD0
写SBUF(MOV SBUF,A),访问发送数据寄存器; 读SBUF(MOV A,SBUF),访问接收数据寄存器。
第7章 串行通信
7.3 AT89S51单片机的串行口工作方式
AT89S51单片机的串行口工作方式由控制寄存器中的SM0、SM1决 定,具体如表7-1所示: 表7-1 串行口工作方式选择位SM0、SM1 SM0 0 0 1 1 SM1 0 1 0 1 工作方式 方式0 方式1 方式2 方式3 特 点 8位移位寄存器 10位UART 11位UART 11位UART 波 fOSC/12 可变 fOSC/64或fOSC/32 可变 特 率
SM2
9CH
REN
9BH
TB8
9AH
RB8
99H
TI
98H
RI
其中,各位的含义如下: SM0,SM1—串行口工作方式选择位。其功能见表格7-1。 SM2—允许方式2、3中的多处理机通信位。 方式0时,SM2=0。 方式1时,SM2=1,只有接收到有效的停止位,RI才置1。 方式2和方式3时,若SM2=1,如果接收到的第九位数据(RB8)为0, RI置0;如果接收到的第九位数据(RB8)为1,RI置1。这种功能可用于 多处理机通信中。
每当接收移位寄存器左移一位,原写入的“1111 1110”也左移一位。当最 右边的0移到最左边时,标志着接收控制器要进行最后一次移位。在最后一 次移位即将结束时,接收移位寄存器的内容送入接收缓冲器SBUF,然后在 启动接收的第10个机器周期时,清除接收信号,置位RI。

《单片机原理及接口技术》第7章习题及答案

《单片机原理及接口技术》第7章习题及答案

《单片机原理及接口技术》(第2版)人民邮电出版社第7章 AT89S51单片机的串行口思考题及习题71.帧格式为1个起始位,8个数据位和1个停止位的异步串行通信方式是方式。

答:方式1。

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

答:相等的。

3.下列选项中,是正确的。

A.串行口通信的第9数据位的功能可由用户定义。

对B.发送数据的第9数据位的内容是在SCON寄存器的TB8位中预先准备好的。

对C.串行通信帧发送时,指令把TB8位的状态送入发送SBUF中。

错D.串行通信接收到的第9位数据送SCON寄存器的RB8中保存。

对E.串行口方式1的波特率是可变的,通过定时器/计数器T1的溢出率设定。

对4.通过串行口发送或接收数据时,在程序中应使用。

A.MOVC指令B.MOVX指令 C.MOV指令 D.XCHD指令答:C5.串行口工作方式1的波特率是。

A.固定的,为f osc/32 B.固定的,为f osc/16C.可变的,通过定时器/计数器T1的溢出率设定D.固定的,为f osc/64答:C6.在异步串行通信中,接收方是如何知道发送方开始发送数据的?答:当接收方检测到RXD端从1到0的跳变时就启动检测器,接收的值是3次连续采样,取其中2次相同的值,以确认是否是真正的起始位的开始,这样能较好地消除干扰引起的影响,以保证可靠无误的开始接受数据。

7.AT89S51单片机的串行口有几种工作方式?有几种帧格式?各种工作方式的波特率如何确定?答:串行口有4种工作方式:方式0、方式1、方式2、方式3;有3种帧格式,方式2和3具有相同的帧格式;方式0的发送和接收都以fosc/12为固定波特率,方式1的波特率=2SMOD /32×定时器T1的溢出率方式2的波特率=2SMOD /64×fosc方式3的波特率=2SMOD /32×定时器T1的溢出率8.假定串行口串行发送的字符格式为1个起始位、8个数据位、1个奇校验位、1个停止位,请画出传送字符“B ”的帧格式。

单片机原理及接口技术AT89S51单片机系统的串行扩展

单片机原理及接口技术AT89S51单片机系统的串行扩展

单片机原理及接口技术AT89S51单片机系统的串行扩展在单片机系统中,为了扩展其功能和使用,需要与其他外部设备进行通信。

串行通信是一种常见的通信方式,它通过将数据逐位地进行传输和接收。

AT89S51单片机具有多种功能引脚,可以用来实现串行扩展。

包括UART串口、SPI接口和I2C总线等。

UART串口是一种常用的串行通信接口,它使用两根引脚(TXD和RXD)进行数据传输。

在AT89S51单片机中,可以使用其内置的UART模块来实现串行扩展。

首先,需要设置串口的波特率、数据位、停止位和校验位等参数。

然后,在程序中通过读写串口数据寄存器来进行数据的传输和接收。

SPI接口是一种全双工的串行通信接口,它使用四根引脚(SCLK、MISO、MOSI和SS)进行数据的传输和接收。

在AT89S51单片机中,可以使用其内置的SPI模块来实现串行扩展。

首先,需要设置SPI的工作模式、数据位、时钟极性和相位等参数。

然后,在程序中通过读写SPI数据寄存器来进行数据的传输和接收。

I2C总线是一种双向的串行通信总线,它使用两根引脚(SDA和SCL)进行数据的传输和接收。

在AT89S51单片机中,可以通过软件实现I2C总线的功能。

首先,需要设置I2C的时钟频率和器件地址等参数。

然后,在程序中通过控制I2C总线的起始、停止、发送和接收来进行数据的传输和接收。

串行扩展可以实现单片机与其他外设的数据交互,包括和PC机的通信、与传感器的连接等。

通过串行扩展,单片机能够实现更复杂的功能和应用。

在编程过程中,需要合理地使用串口、SPI接口和I2C总线等技术,根据具体的应用需求选择合适的通信方式。

总之,单片机原理及接口技术是一种重要的扩展技术,可以极大地增强单片机的功能和使用。

在AT89S51单片机系统中,串行扩展是一种常见的技术。

通过合理地使用UART串口、SPI接口和I2C总线等技术,可以实现单片机与其他外设的数据交互,进而实现更复杂的功能和应用。

单片机原理及应用_黄河科技学院中国大学mooc课后章节答案期末考试题库2023年

单片机原理及应用_黄河科技学院中国大学mooc课后章节答案期末考试题库2023年

单片机原理及应用_黄河科技学院中国大学mooc课后章节答案期末考试题库2023年1.AT89S51单片机的串行口,数据输出端为()。

参考答案:TXD2.AT89S51单片机定时器/计数器T1的中断向量号为()。

参考答案:33.Keil C51的unsigned int数据类型是()。

参考答案:无符号整型变量4.访问片外RAM数据,在C51中该数据的存储类型为()。

参考答案:xdata5.数字温度传感器DS18B20是()总线的器件参考答案:单6.AT89S51单片机有4 组位并行I/O口。

参考答案:87.AT89S51单片机片片外最多可扩展 KB的程序存储器。

参考答案:648.AT89S51有个可编程定时器/计数器参考答案:29.某RAM芯片有12条地址线,可寻址 KB个存储单元参考答案:410.波特率是指串行口每发送或接收的数据参考答案:秒钟11.AT89S51单片机采用并行总线方式外扩器件时,地址总线的高8位由()口提供参考答案:P212.C51中断函数的关键字是()参考答案:interrupt13.AT89S51单片机有( )组工作寄存器参考答案:414.ADC0809是( )位的数模转换器参考答案:815.如果单片机的晶振是6MHz,则其机器周期为()参考答案:2μS16.单片机的I/O端口做通用I/O时,若要读某个引脚,需要先对该端口位写()。

参考答案:117.C51提供了()存储类型类访问ROM。

参考答案:code18.如果需要用到AT89S51单片机的特殊功能寄存器以及一些存储定义,需要加载头文件()。

参考答案:reg51.h19.下面哪一种不属于C51扩展的数据类型参考答案:double20.单片机复位时,系统默认的当前工作寄存器为第()组。

参考答案:21.程序在运行时,当前PC的值是()。

参考答案:当前正在执行的指令的下一条指令的地址22.C51 中以字节形式对xdata区进行寻址,用()宏定义。

AT89S51单片机开发板电路原理图

AT89S51单片机开发板电路原理图
1
2
3
4
5
6
7
8
低电平直接驱动发光二极管电路
R1 DVDD 1 2 3 4 5 6 7 DS1 1 2
AT89S51单片机实验开发板1#
R2 8*5.1k P0.0 P0.2 P0.4 P0.6 DVDD JP6 1 3 5 7 9 2 4 6 8 10 P0.1 P0.3 P0.5 P0.7 DGND P1.0 P1.2 P1.4 P1.6 DVDD JP2 1 3 5 7 9 DVDD P0.7 P0.6 P0.5 P0.4 P0.3 P0.2 P0.1 P0.0 1 2 3 4 5 6 7 8 9 Header 2X5
U6 CLK START ALE OE IN0 IN1 IN2 IN3 IN4 IN5 IN6 IN7 VREFGND D0 D1 D2 D3 D4 D5 D6 D7 ADD A ADD B ADD C EOC VREF+ VCC
17 P0.0 14 P0.1 15 P0.2 8 P0.3 18 P0.4 19 P0.5 20 P0.6 Байду номын сангаас1 P0.7 25 P0.0 24 P0.1 23 P0.2
Header 2X5
Header 2X5
Header 2X5
A
2 JP1 JP1-DS6 1 DS6 GreenJP1-S1 3 JP1-S2 1 2 5 7 Yellow 9 11 C2
DS5 1
Red
2 4 6 8 10 12
RESET
P0.0 P0.1 P0.2 P0.3 P0.4 P0.5 P0.6 P0.7 P2.0 P2.1 P2.2 P2.3 P2.4 P2.5 P2.6 P2.7 DVDD C4 0.1uF

AT89S51单片机控制红、绿、黄交通灯亮及闪烁时间与顺序。

AT89S51单片机控制红、绿、黄交通灯亮及闪烁时间与顺序。

桂林电子科技大学微机单片机接口设计报告指导老师:吴兆华学生:冯贤明学号: 092011133桂林电子科技大学机电工程学院一设计题目 (1)二设计目的要求和意义 (1)2.1设计目的要求 (1)2.2 系统设计意义 (1)三系统硬件电路图设计 (2)3.1 系统结构框图 (2)3.2 系统硬件电路图 (2)3.3 电路设计PCB图 (3)四程序流程图与源代码 (4)4.1 程序流程图 (4)4.2 程序源代码 (4)五系统功能分析与说明 (5)5.1 微处理器 (5)5.2 复位电路的设计 (9)5.3 二极管输出电路 (9)5.4 晶振电路 (10)5.5 制作PCB图 (10)六设计体会 (12)七参考文献 (13)一设计题目按桂林市微笑堂十字街的交通规则用AT89S51单片机控制红、绿、黄交通灯亮及闪烁时间与顺序。

二设计目的要求和意义2.1设计目的要求1通过单片机最小系统的设计,了解常用单片机应用系统开发手段和过程,进一步熟悉和掌握单片机的结构和工作原理,并能初步掌握一般单片机控制系统的编程和应用,从而进一步加深对单片机理论知识的理解。

2 掌握单片机内部功能模块。

如定时器/计数器、中断系统、存储器、I/O口等;3 掌握单片机的接口及相关外围芯片的特性、使用与控制方法;4 掌握单片机的编程方法,调试方法;5 掌握单片机应用系统的构建和使用,为以后设计和实现单片机应用系统打下良好的基础。

6.学会使用并熟练掌握电路绘制软件Protel99SE(或DXP);7.掌握电路图绘制及PCB图布线技巧。

2.2 系统设计意义1、在系统掌握单片机相应基础知识的前提下,熟悉单片机最小应用系统的设计方法及系统设计的基本步骤。

2、完成所需单片机最小应用系统原理图设计绘制的基础上完成系统的电路图设计。

3、完成系统所需的硬件设计制作,在提高实际动手能力的基础上进一步巩固所学知识。

4、进行题目要求功能基础上的软件程序编程,会用相应软件进行程序调试和测试工作。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
In mode 1, if SM2=1 then RI will not be active if a valid stop bit was
not received.
In mode 0, SM2 should be 0.
SM0 SM1 SM2 REN TB8 RB8 TI RI
模式选择 多机通讯位 允许接收位 发送、接收第9位 发送、接收标志
SM0 SM1 SM2 REN TB8 RB8 TI RI
模式选择 多机通讯位 允许接收位 发送、接收第9位 发送、接收标志
SM2:(难点)多机通信控制位(作为方式2、方式3的附加控制位).当 选择方式2或方式3时,发送机设置SM2=1,以发送第九位TB8=1作 为地址帧寻找从机,以TB8=0作为数据帧进行通信,从机初始化时设 置SM2=1,若接收到的第九位数据RB8=0,不置位RI,即不引起接收 中断,亦既不接收数据帧,继续监听,如接收到的RB8=1,置位RI,引起 接收中断,中断程序中判断所接收的地址帧和本机的地址是否符合, 若不符合,维持SM2=1,继续监听,若符合,则清SM2,接收对放发来的 后续信息.
REN:串行口接收允许控制位 Set/Cleared by software to Enable/Disable reception
=1 允许接收; (SETB REN) =0 禁止接收.
系统复位后,REN=0,不允许接受
SM0 SM1 SM2 REN TB8 RB8 TI RI
模式选择 多机通讯位 允许接收位 发送、接收第9位 发送、接收标志
存放串行口的控制和状态信息,其格式如下
SM0 SM1 SM2 REN TB8 RB8 TI RI
模式选择 多机通讯位 允许接收位 发送、接收第9位 发送、接收标志
SM0 SM1 SM2 REN TB8 RB8 TI RI
模式选择 多机通讯位 允许接收位 发送、接收第9位 发送、接收标志
SM0 SM1:串行口4种工作方式的选择位。 方式0(00):8位移位寄存器用于扩展I/O,波特率固定=fosc/12 方式1(01):8位UART(1+8+1位), 波特率可变,由定时器控制 方式2(10):9位UART(1+8+1+1位),波特率固定=fosc/32或 fosc/64 方式3(11):9位UART(1+8+1+1位),波特率可变,由定时器控制
注意: 1.甲、乙方的移位时钟频率应相同,即应具有相同的波
特率,否则会造成数据丢失. 2.发送方是先发数据再查标志,
接收方是先查标志再收数据. 3.接收/发送数据,无论是否采用中断方式工作,每接收/
发送一个数据都必须用指令对RI/TI清0,以备下一 次收/发(CLR TI,CLR RI)
二. 波特率(Baudrate) 波特率是双方对数据传送速率的约定,表示每秒传送
第7章 串行口与串行通信
(本章是一个难点、重点,注意学习的层次性)
7.1 串行口的结构 7.2 和串行通信有关的寄存器 7.3 串行口的4种工作方式 7.4 波特率的制定方法 7.5 串行口的应用编程
7.1 串行口的结构
AT89S51单片机片内的串行口为全双工的通用异步收发( UART: Universal Asynchronous Receiver and Transmitter )的串行口。
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位数据.该数据来自发
甲方一帧数据发送完毕,置位发送中断标志TI,该位可作 为查询标志(或引起中断),CPU可再发送下一帧数据.
接下,由低位到高位顺序进入移 位寄存器SBUF;
乙方一帧数据到齐,即接收缓冲器满,置位接收中断标志RI, 该位可作为查询标志(或引起接收中断),通过MOV A,SBUF, CPU将这帧数据并行读入.
一.串行通信的传送过程
甲方(发送)
CPU
TI 并
MOV SBUF , A 行 数 据
shift
SBUF
乙方(接收)
串行数据
CPU
并 RI
行 MOV A , SBUF 数 据
SBUF shift
发送过程:
甲方发送时,CPU执行指令MOV SBUF,A,就启动了发送 过程,数据并行送入SBUF,在发送时钟shift的控制下由低位 到高位一位一位发送;
常用的波特率有:(离散) 19200/9600/4800/2400/1200/600/300/150/100
/50, 还有10M/100M
7.1.1 与串行通信有关的寄存器
1.串行口控制寄存器 SCON
Serial Port Control Register. Bit Addressable(98H)
的二进制位数(bit),是串行通信的一个重要指标,反映了 串行通信的速率,也反映了对传输通道的要求.单位是 bps (Bit Per Second), bit/s
例如:120字符/秒,1个字符10位, 波特率为:120×10=1200bps 平均每一位传送占用时间:Td=1/1200=0.833ms
SM2: Enable the multiprocessor communication feature in modes 2 & 3.
In mode 2&3, if SM2 is set to 1 then RI will be activated if the received
9th data bit (RB8) is 0.
综上所述,SM2的作用为: 在方式2,3中,发送机SM2=1(程序设置).接收机SM2=1,若
RB8=1,激活RI,引起接收中断.RB8=0,不激活RI,不引起 中断.发送机SM2=0,无论RB8=1还是RB8=0均激活RI 引起接收中断. 在方式1中,当接收时SM2=1,则只有收到有效停止位才激 活RI; 在方式0中,SM2应置为0.
相关文档
最新文档