单片机课件第八章
合集下载
单片机原理及应用课件教学配套课件陈桂友孙同景第8章定时计数器
单片机原理及应用
1/45
第8章 定时/计数器
8.1 8051单片机的定时/计数器
8.2 MSC1211的定时器与脉宽调制
5:04:06
版权所有。
单片机原理及应用
2/45
在计算机控制中可供选择的定时方法
(1)软件定时
执行一个循环程序来实现。
(2)硬件定时
定时全部由硬件电路完成,不占用CPU时间, 但需要通过改变电路的元件参数来调节定时时 间,在使用控制上不够方便,同时增加了开发成 本。
5:04:06
TL0 TH0 (低5位) (8位)
TF0
中断
控制
TL0 TH0 (低8位) (8位)
TF0
控制
中断
版权所有。
单片机原理及应用
方式2 OSC 12分频
T0(P3.4)
C/T=0 C/T=1
TR0
GATE INT0(P3.2)
方式3
OSC T0(P3.4)
定时器工作方式控制寄存器TMOD
地址
D7
D6 D5 D4
D3
D2
D1
D0 复位值
定时器1
定时器0
89H GATE C/ T
M1
M0 GATE C/ T
M1 M0
00H
定时器控制寄存器 TCON
地址
D7 D6
D5
D4
D3
D2
D1
D0 复位值
88H TF1 TR1 TF0 TR0 IE1
IT1IE0I源自08/454、定时/计数器量程的扩展
8051单片机中提供的定时/计数器可以使用户很方便地实现定时和对外 部事件计数。但是在实际应用中,需要的定时时间或计数值可能超过定时/ 计数器的定时或计数能力,特别是8051单片机的系统时钟频率较高时,定时 能力就更为有限。为了满足需要,有时需要对8051单片机的定时计数能力进 行扩展。定时能力和计数能力扩展的方法相同,在此主要对定时能力的扩展 进行讨论,计数能力的扩展可参考定时能力扩展的方法进行。
1/45
第8章 定时/计数器
8.1 8051单片机的定时/计数器
8.2 MSC1211的定时器与脉宽调制
5:04:06
版权所有。
单片机原理及应用
2/45
在计算机控制中可供选择的定时方法
(1)软件定时
执行一个循环程序来实现。
(2)硬件定时
定时全部由硬件电路完成,不占用CPU时间, 但需要通过改变电路的元件参数来调节定时时 间,在使用控制上不够方便,同时增加了开发成 本。
5:04:06
TL0 TH0 (低5位) (8位)
TF0
中断
控制
TL0 TH0 (低8位) (8位)
TF0
控制
中断
版权所有。
单片机原理及应用
方式2 OSC 12分频
T0(P3.4)
C/T=0 C/T=1
TR0
GATE INT0(P3.2)
方式3
OSC T0(P3.4)
定时器工作方式控制寄存器TMOD
地址
D7
D6 D5 D4
D3
D2
D1
D0 复位值
定时器1
定时器0
89H GATE C/ T
M1
M0 GATE C/ T
M1 M0
00H
定时器控制寄存器 TCON
地址
D7 D6
D5
D4
D3
D2
D1
D0 复位值
88H TF1 TR1 TF0 TR0 IE1
IT1IE0I源自08/454、定时/计数器量程的扩展
8051单片机中提供的定时/计数器可以使用户很方便地实现定时和对外 部事件计数。但是在实际应用中,需要的定时时间或计数值可能超过定时/ 计数器的定时或计数能力,特别是8051单片机的系统时钟频率较高时,定时 能力就更为有限。为了满足需要,有时需要对8051单片机的定时计数能力进 行扩展。定时能力和计数能力扩展的方法相同,在此主要对定时能力的扩展 进行讨论,计数能力的扩展可参考定时能力扩展的方法进行。
单片机原理与接口技术8ppt精选课件
27128与2764一样,也是28个引脚;与2764 不同的是增加了一根地址线(A13,26引脚), 而2764的26引脚为空脚(NC)。
27128的地址范围是0000H~3FFFH。
最新课件
18
§8.3 扩展数据存储器
扩展数据存储器ቤተ መጻሕፍቲ ባይዱ间地址同外扩程序存储器一样, 由P2口提供高8位地址,P0口分时提供低8位地址 和用作8位双向数据总线。
(3)紫外线擦除可改写ROM(EPROM)
(4)电擦除可改写ROM(EEPROM或E2PROM)
(5)快擦写ROM(flash ROM)
最新课件
14
典型的EPROM芯片有Intel公司的2716(2K×8)、2732(4 K×8)、
2764(8 K×8)、27128(16 K×8)、 27256(32 K×8)、27512(64 K×8)等。
A8~A15
地址 锁存器
A0~A7 D0~A7
最新课件
地址总线(AB)
数据总线(DB) 控制总线(CB)
图 扩展的三总线 5
ALE
P0.0 P0.1 P0.2 P0.3
8031
P0.4 P0.5 P0.6 P0.7
74LS373
G
VCC
D0
Q0
D1
Q1
D2
Q2
D3
Q3
D4
Q4
D5
Q5
D6
Q6
D7
Q7
A1
A0
D0 2764
D1
D2 27128
D3 D4 D5 D6
D7
PSEN ALE
OE
29
30
返回1
最新课件
图8-6 扩展16KB EPROM 27128系统连接图
27128的地址范围是0000H~3FFFH。
最新课件
18
§8.3 扩展数据存储器
扩展数据存储器ቤተ መጻሕፍቲ ባይዱ间地址同外扩程序存储器一样, 由P2口提供高8位地址,P0口分时提供低8位地址 和用作8位双向数据总线。
(3)紫外线擦除可改写ROM(EPROM)
(4)电擦除可改写ROM(EEPROM或E2PROM)
(5)快擦写ROM(flash ROM)
最新课件
14
典型的EPROM芯片有Intel公司的2716(2K×8)、2732(4 K×8)、
2764(8 K×8)、27128(16 K×8)、 27256(32 K×8)、27512(64 K×8)等。
A8~A15
地址 锁存器
A0~A7 D0~A7
最新课件
地址总线(AB)
数据总线(DB) 控制总线(CB)
图 扩展的三总线 5
ALE
P0.0 P0.1 P0.2 P0.3
8031
P0.4 P0.5 P0.6 P0.7
74LS373
G
VCC
D0
Q0
D1
Q1
D2
Q2
D3
Q3
D4
Q4
D5
Q5
D6
Q6
D7
Q7
A1
A0
D0 2764
D1
D2 27128
D3 D4 D5 D6
D7
PSEN ALE
OE
29
30
返回1
最新课件
图8-6 扩展16KB EPROM 27128系统连接图
单片机课件--第8章
(2)采用查询方式处理的程序 C语言程序: 语言程序: //包含特殊功能寄存器库 # include <reg51.h> //包含特殊功能寄存器库 sbit P1_0=P1^0; void main() { char i; TMOD=0x02; TH0=0x06;TL0=0x06; TR0=1; for(;;) { //查询计数溢出 if (TF0) { TF0=0;P1_0=! P1_0;} //查询计数溢出 } }
8051
RXD TXD P1.0
DATA CLK STB
C语言程序: 语言程序: # include <reg51.h> 特殊功能寄存器库 sbit P1_0=P1^0; void main() { unsigned char i,j; SCON=0x00; j=0x01;
//包含 //包含
for (; ;) { P1_0=0; SBUF=j; while (!TI) { ;} P1_0=1;TI=0; for (i=0;i<=254;i++) {;} j=j*2; if (j= =0x00) j=0x01; } }
系统监控通过外中断INT0来实现,这里就涉及多个中断源的处理, 系统监控通过外中断INT0来实现,这里就涉及多个中断源的处理,处 INT0来实现 理时往往通过中断加查询的方法来实现。多个中断源通过“线或” 理时往往通过中断加查询的方法来实现。多个中断源通过“线或”接于 INT0上 那么无论哪个中断源提出请求,系统都会响应中断,响应后, INT0上。那么无论哪个中断源提出请求,系统都会响应中断,响应后,进 入中断服务程序,在中断服务程序中通过对P1 P1口线的逐一检测来确定哪一 入中断服务程序,在中断服务程序中通过对P1口线的逐一检测来确定哪一 个中断源的提出了中断请求, 个中断源的提出了中断请求,进一步转到对应的中断服务程序入口位置执 行对应的处理程序。这里只针对PH<7 PH<7时的中断构造了相应的中断服务程序 行对应的处理程序。这里只针对PH<7时的中断构造了相应的中断服务程序 INT02,接通电磁阀延时1秒钟的延时子程序DELAY已经构造好了, DELAY已经构造好了 INT02,接通电磁阀延时1秒钟的延时子程序DELAY已经构造好了,只须调用 即可。 即可。
单片机应用技术课件第八章
间隙任意 接 收 10100100 设 备
1 0 10100100 1 0 11100110 1
发 送 0 11100110 设 备
串行异步通信特点:
1、数据按帧传输,一帧数据包含起始位、数据位、校验位 和停止位。
2、不要求收发双方时钟的严格一致,实现容易,设备开销 较小。
3、依靠起始位、停止位保持通信同步。
第8章 通用串行通信接口USCI
1、内容 ① 串行异步通信概述 ② USCI模块功能 ③ USCI模块操作- UART模式 ④ USCI_A UART模式寄存器 ⑤ 习题 2、要求 ① 掌握串行异步通信基本概念。 ② 掌握USCI模块初始化的方法。 ③ 掌握低频模式和过采样模式下波特 率设置方法。 ④ 掌握查询方式和中断方式下数据收 发方法。
全双工制式(Full Duplex):通信双方均有发送
器和接收器,且信道划分为发送信道和接收信 道, 通信 双方可同时发送和接收数据,发送时 能接收,接收时也能发送。
2 USCI模块功能 USCI supports multiple serial communication modes with one hardware module. Different USCI modules support different modes. Each different USCI module is named with a different letter. If more than one identical USCI module is implemented on one device, those modules are named with incrementing numbers. USCI_Ax modules support: UART(UART-Universal Asynchronous Receiver-Transmitter) mode Pulse shaping for IrDA communications Automatic baud-rate detection for LIN communications SPI mode In asynchronous mode, the USCI_Ax modules connect the device to an external system via two external pins, UCAxRXD and UCAxTXD. UART mode is selected when the UCSYNC bit is cleared. UART mode features include: 7- or 8-bit data with odd, even, or non-parity Independent transmit and receive shift registers Separate transmit and receive buffer registers LSB-first or MSB-first data transmit and receive Built-in idle-line and address-bit communication protocols for multiprocessor systems Receiver start-edge detection for auto wake up from LPMx modes Programmable baud rate with modulation for fractional baud-rate support Status flags for error detection and suppression Status flags for address detection Independent interrupt capability for receive and transmit
单片机原理与应用-第8章-单片机系统扩展设计ppt课件
收方式。
完整最新ppt
15
I2C总线实现的主要功能
①在主控器件和从控器件之间双向传送数据; ②构成无中央主控器件的多主总线; ③多主传送时,不发生错误; ④数据传送可以使用不同的位速率; ⑤串行时钟作为交接信号。
6
串行总线的类型
常用的串行总线有
• Motorola公司的SPI(Serial Peripheral Interface)总线
• Philips公司的I2C(Inter-Integrated Circuit)
• National Semiconductor公司的 MICROWIRE总线
• 现场总线CAN(Controller Area Network)总线等。
完整最新ppt
3
➢数据总线(DB)
✓ 数据总线由P0口提供,用D0~D7表示。
✓ P0口为三态双向口,是应用系统中使用最为频 繁的通道。所有单片微机与外部交换的数据、指 令、信息,除少数可直接通过P1口外,全部通过 P0口传送。
✓ 数据总线是并连到多个连接的外围芯片的数据线 上,而在同一时间里只能够有一个是有效的数据 传送通道。哪个芯片的数据通道有效,则由地址 线控制各个芯片的片选线来选择。
3.I2C总线上的数据传送速率可达100kb/s以上 。
完整最新ppt
返回 13
I2C总线
上拉电阻,集电极 (漏极)开路结构
完整最新ppt
返回 14
挂接在I2C 总线上的器件,根据其功能可分为两种 主控器件和从控器件。
• 主控器件:控制总线存取,产生串行时钟(SCL) 信号,并产生启动传送及结束传送的器件,总线 必须由一个主控器件控制。主控器件一般称主器 件。
能分时用作地址线。 ✓ P0口输出的低8位地址A0-A7必须用锁存器锁存。
最新单片机原理及应用C语言版8ppt课件
8.3.1 扩展存储器概述
存储器扩展的核心问题是存储器的编址问 题。所谓编址就是给存储单元分配地址。
由于存储器通常由多个芯片组成,为此存 储器的编址分为两个层次:
即存储器芯片的选择和存储器芯片内部存 储单元的选择。
8.3.1 扩展存储器概述
一、地址线的译码
存储器芯片的选择有两种方法:线选法和 译码法。
其中,G1、G2A、G2B为控制端。只有 当G1为“1”,且G2A、G2B均为“0”时,译 码器才能进行译码输出。否则译码器的8个 输出端全为高阻状态。
译码输入端与输出端之间的译码关系如 表8-1所示。
8.3.1 扩展存储器概述
表8-1 74LS138的译码关系 CBA编码 000 001 010 011 100 101 110 111 输出有效位 Y 0 Y 1 Y 2 Y 3 Y 4 Y 5 Y 6 Y 7
8.3 扩展并行数据存储器
数据存储器即随机存取存储器(Random Access Memory,RAM),用于存放可随时 修改的数据信息。
单片机使用的主要是静态RAM。 MCS-51系列单片机片外数据存储器的空 间可达64KB,而片内数据存储器的空间只 有128B或256B。如果片内的数据存储器不 够用时,则需进行数据存储器的扩展。
+5V
P0.0
D0 Q0
P0.1
D1 Q1
P0.2
D2 Q2
P0.3
D3 Q3
P0.4
D4 Q4
P0.5
D5 Q5
P0.6
D6 Q6
P0.7
D7 Q7
LE VCC
89C52
74HC244
Q0 D0
+
WR P2.0 RD
单片机第八章课件
• 存储器可由用户按规定的方法多次编程,如编程之后想修改,可用紫外线 灯制作的擦抹器 照射15分钟左右,芯片中的信息被擦除,成为一块“干净” 的EPROM,可再次写入信 息。
存储器的扩展
存储器的扩展
ROM 只读内存(Read-Only Memory)
E2PROM:电擦除的 PROM,或称 EEPROM(Electrically Erasable PROM),
接收器件收到一个完整的数据字节后,有可能需要完成一些其它工作,如处 理内部中断服务等,可能无法立刻接收下一个字节,这时接收器件可以将 SCL线拉成低电平,从而使主机处于等待状态。直到接收器件准备好接收下 一个字节时,再释放SCL线使之为高电平,从而使数据传送可以继续进行。
I2C
有效传送
I2C总线进行数据传送时,时钟信号为高电平期间,数据线 上的数据必须保持稳定,只有在时钟线上的信号为低电平 期间,数据线上的高电平或低电平状态才允许变化。
I2C
二、典型信号模拟子程序
(4)读一个字节 uchar readbyte() {
I2C
特征
1、只要求两条总线线路:一条串行数据线SDA,一条串行时钟 线SCL;
2、每个连接到总线的器件都可以通过唯一的地址和一直存在的 简单的主机/从机关系软件设定地址,主机可以作为主机发送器或主 机接收器;
3、它是一个真正的多主机总线,如果两个或更多主机同时初始 化,数据传输可以通过冲突检测和仲裁防止数据被破坏;
c、在传送过程中,当需要改变传送方向时,起始 信号和从机地址都被重复产生一次,但两次读/写 方向位正好反相。
I2C 总线的寻址 I2C总线协议有明确的规定:采用7位的寻址字节 (寻址字节是起始信号后的第一个字节)。 (1)寻址字节的位定义
存储器的扩展
存储器的扩展
ROM 只读内存(Read-Only Memory)
E2PROM:电擦除的 PROM,或称 EEPROM(Electrically Erasable PROM),
接收器件收到一个完整的数据字节后,有可能需要完成一些其它工作,如处 理内部中断服务等,可能无法立刻接收下一个字节,这时接收器件可以将 SCL线拉成低电平,从而使主机处于等待状态。直到接收器件准备好接收下 一个字节时,再释放SCL线使之为高电平,从而使数据传送可以继续进行。
I2C
有效传送
I2C总线进行数据传送时,时钟信号为高电平期间,数据线 上的数据必须保持稳定,只有在时钟线上的信号为低电平 期间,数据线上的高电平或低电平状态才允许变化。
I2C
二、典型信号模拟子程序
(4)读一个字节 uchar readbyte() {
I2C
特征
1、只要求两条总线线路:一条串行数据线SDA,一条串行时钟 线SCL;
2、每个连接到总线的器件都可以通过唯一的地址和一直存在的 简单的主机/从机关系软件设定地址,主机可以作为主机发送器或主 机接收器;
3、它是一个真正的多主机总线,如果两个或更多主机同时初始 化,数据传输可以通过冲突检测和仲裁防止数据被破坏;
c、在传送过程中,当需要改变传送方向时,起始 信号和从机地址都被重复产生一次,但两次读/写 方向位正好反相。
I2C 总线的寻址 I2C总线协议有明确的规定:采用7位的寻址字节 (寻址字节是起始信号后的第一个字节)。 (1)寻址字节的位定义
8单片机原理及应用(第八章串行通信)PPT课件
数据帧(一帧数据):包含起始位(“0”电平)、数据位、 奇偶校验位、停止位(“1”电平)等组成。
2
异步通信中接收和发送双方必须(至少)有两项设定: (1)帧格式确定(帧字符长度) 如ASCII帧(字符)为10位。数据位7位,起始位、校验位、 停止位各一位。 (2)波特率的设定 波特率:每秒传输的位。 如120字符(帧)/秒,每帧数据10位,则传输速率为1200 波特率。
9
8-2-2 串行通信控制寄存器
与串行通信有关的寄存器共有三个。 1)串行控制寄存器SCON
位地址 9F
9E
9D
9C
9B
9A
位符号 SM 0 SM 1 SM 2 REN TB 8 RB 8
99 98 TI RI
字节地址:98H
10
各位功能说明: 1)SM0、SM1—串行口工作方式选择位
SM 0 SM 1 00 01 10 11
15
2) 电源控制寄存器PCON (波特率倍增控制寄存器)
字节地址:87H
位序
7
6
5
4
3
2
1
0
位符号 SMOD /
/
/
GF 1
GF0
PD IDL
SMOD=1,串行口波特率加倍; SMOD=0,波特率正常。 系统复位时,SMOD=0。 PCON不可以进行位寻址。
16
中断允许控制寄存器(IE)
位地址 AF
2)格式信息的插入和滤除 格式信息:异步通信格式中,启始位、奇偶校验位、停止位等。 串化过程:将格式信息插入,和数据位一起构成完整数据帧。 反串化过程:滤除格式信息,保留数据位。
3)错误检验 检验数据通信过程是否正确。
6
8-2 MCS-51单片机串行通信
2
异步通信中接收和发送双方必须(至少)有两项设定: (1)帧格式确定(帧字符长度) 如ASCII帧(字符)为10位。数据位7位,起始位、校验位、 停止位各一位。 (2)波特率的设定 波特率:每秒传输的位。 如120字符(帧)/秒,每帧数据10位,则传输速率为1200 波特率。
9
8-2-2 串行通信控制寄存器
与串行通信有关的寄存器共有三个。 1)串行控制寄存器SCON
位地址 9F
9E
9D
9C
9B
9A
位符号 SM 0 SM 1 SM 2 REN TB 8 RB 8
99 98 TI RI
字节地址:98H
10
各位功能说明: 1)SM0、SM1—串行口工作方式选择位
SM 0 SM 1 00 01 10 11
15
2) 电源控制寄存器PCON (波特率倍增控制寄存器)
字节地址:87H
位序
7
6
5
4
3
2
1
0
位符号 SMOD /
/
/
GF 1
GF0
PD IDL
SMOD=1,串行口波特率加倍; SMOD=0,波特率正常。 系统复位时,SMOD=0。 PCON不可以进行位寻址。
16
中断允许控制寄存器(IE)
位地址 AF
2)格式信息的插入和滤除 格式信息:异步通信格式中,启始位、奇偶校验位、停止位等。 串化过程:将格式信息插入,和数据位一起构成完整数据帧。 反串化过程:滤除格式信息,保留数据位。
3)错误检验 检验数据通信过程是否正确。
6
8-2 MCS-51单片机串行通信
单片机应用第8章PPT课件
19
第8章 接口技术
程序说明: (1)本例接口电路是以软件为主的接口电路,显示数 据有6位,每位数码管对应1位有效显示数据。 (2)由程序可知,由于数码显示器的低位(最右边的位) 显示的是显示缓冲区中的低地址单元中的数,因此数 在显示缓冲区中存放的次序为低地址单元存低位,高地 址单元存高位。 (3)在动态扫描显示过程中,每位数码管的显示时间 约1ms,这由调用延时1ms子程序DELY来实现。
12
第8章 接口技术
图6―22 8155作6位LED显示器接口的电路
13
8.1.3 LED数码显示器的显示方法
第8章 接口技术
对于多位数码显示器来说,为了简化线路、降低成本, 往往采用以软件为主的接口方法,即不使用专门的硬件译 码器,而采用软件程序进行译码。如前所述,由于各位数码 管的显示段码是互相并联的,因此在同一时刻只能显示同 一种字符。对于这种接口电路来说,其显示方法有静态显 示和动态显示两种。
16
第8章 接口技术
下面介绍一种动态扫描显示子程序:
DIR: MOV R0,#7AH
;指向显示缓冲区首址
MOV R3,#01H
;从右边第1位开始显示
MOV A,#00H
;取全不亮位控字
MOV R1,#BITPORT ;指向位控口
MOVX @R1,A
;瞬时关显示
LD1: MOV A,@R0
;取出显示数据
A,R3
;取位控字
@R1,A
;输出位控字
DELY
;延时1ms
R0
;指向下一个缓冲单元
A.5,LD2
;已到最高位则转返回
A
;不到,向显示器高位移位
R3,A
;保存位控字
第8章 接口技术
程序说明: (1)本例接口电路是以软件为主的接口电路,显示数 据有6位,每位数码管对应1位有效显示数据。 (2)由程序可知,由于数码显示器的低位(最右边的位) 显示的是显示缓冲区中的低地址单元中的数,因此数 在显示缓冲区中存放的次序为低地址单元存低位,高地 址单元存高位。 (3)在动态扫描显示过程中,每位数码管的显示时间 约1ms,这由调用延时1ms子程序DELY来实现。
12
第8章 接口技术
图6―22 8155作6位LED显示器接口的电路
13
8.1.3 LED数码显示器的显示方法
第8章 接口技术
对于多位数码显示器来说,为了简化线路、降低成本, 往往采用以软件为主的接口方法,即不使用专门的硬件译 码器,而采用软件程序进行译码。如前所述,由于各位数码 管的显示段码是互相并联的,因此在同一时刻只能显示同 一种字符。对于这种接口电路来说,其显示方法有静态显 示和动态显示两种。
16
第8章 接口技术
下面介绍一种动态扫描显示子程序:
DIR: MOV R0,#7AH
;指向显示缓冲区首址
MOV R3,#01H
;从右边第1位开始显示
MOV A,#00H
;取全不亮位控字
MOV R1,#BITPORT ;指向位控口
MOVX @R1,A
;瞬时关显示
LD1: MOV A,@R0
;取出显示数据
A,R3
;取位控字
@R1,A
;输出位控字
DELY
;延时1ms
R0
;指向下一个缓冲单元
A.5,LD2
;已到最高位则转返回
A
;不到,向显示器高位移位
R3,A
;保存位控字
单片机课件 第八章
第8章 MCS-51系统存储器的扩展技 术
8.1 8.2 8.3 8.4 8.5
概述 系统总线及总线构造 扩展存储器编址技术及实例 MCS-51程序存储器的扩展 MCS-51数据存储器的扩展
8.1
概述
MCS-51系统扩展的内容主要有外部存储器的扩展(外部存储器 又分为外部程序存储器和外部数据存储器)和I/O功能部件的 扩展。本章介绍MCS-51单片机如何扩展外部存储器,有关I/O 功能部件的扩展将在下一章介绍。 MCS-51的系统扩展结构如图8-1所示。图中展示出MCS-51系统 扩展的内容和方法。 由图8-1可以看出:系统扩展是以MCS-51单片机为核心进行的, 通过总线把MCS-51单片机与各扩展部件连接起来,并进行数 据、地址和控制信号的传送,扩展内容包括ROM , RAM和I/O 接口电路等。扩展是在单片机芯片之外进行的,因此通常把 扩展的ROM称之为外部ROM,把扩展的RAM称之为外部RAM。
8.2.2 构造系统总线
扩展是通过系统总线进行的,而且单片机的扩展系统是并行 总线结构,因此单片机系统扩展的首要问题就是构造系统总 线,然后再往系统总线上“挂”存储器芯片或I/O接口芯片, “挂”存储器芯片就是存储器扩展,“挂”I/O接口芯片就是 I/O扩展。下面说明总线的具体构造方法。 1.以PO口作低8位地址/数据总线锁存器 因为PO口即作低8位地址线,又作数据线(分时复用),因此,
上一页 返回
8.3
扩展存储器编址技术及实例
所谓存储器编址,就是使用系统提供的地址线,通过适当地 连接,最终达到一个编址唯一地对应存储器中一个存储单元 的目的。由于存储器通常都是由多片存储芯片组成的,为此 存储器编址分两个层次:即存储芯片的选择和芯片内部存储单 元的选择。
8.1 8.2 8.3 8.4 8.5
概述 系统总线及总线构造 扩展存储器编址技术及实例 MCS-51程序存储器的扩展 MCS-51数据存储器的扩展
8.1
概述
MCS-51系统扩展的内容主要有外部存储器的扩展(外部存储器 又分为外部程序存储器和外部数据存储器)和I/O功能部件的 扩展。本章介绍MCS-51单片机如何扩展外部存储器,有关I/O 功能部件的扩展将在下一章介绍。 MCS-51的系统扩展结构如图8-1所示。图中展示出MCS-51系统 扩展的内容和方法。 由图8-1可以看出:系统扩展是以MCS-51单片机为核心进行的, 通过总线把MCS-51单片机与各扩展部件连接起来,并进行数 据、地址和控制信号的传送,扩展内容包括ROM , RAM和I/O 接口电路等。扩展是在单片机芯片之外进行的,因此通常把 扩展的ROM称之为外部ROM,把扩展的RAM称之为外部RAM。
8.2.2 构造系统总线
扩展是通过系统总线进行的,而且单片机的扩展系统是并行 总线结构,因此单片机系统扩展的首要问题就是构造系统总 线,然后再往系统总线上“挂”存储器芯片或I/O接口芯片, “挂”存储器芯片就是存储器扩展,“挂”I/O接口芯片就是 I/O扩展。下面说明总线的具体构造方法。 1.以PO口作低8位地址/数据总线锁存器 因为PO口即作低8位地址线,又作数据线(分时复用),因此,
上一页 返回
8.3
扩展存储器编址技术及实例
所谓存储器编址,就是使用系统提供的地址线,通过适当地 连接,最终达到一个编址唯一地对应存储器中一个存储单元 的目的。由于存储器通常都是由多片存储芯片组成的,为此 存储器编址分两个层次:即存储芯片的选择和芯片内部存储单 元的选择。
第8章单片机行口的应用PPT课件
计算机科学与技术系 第八章 串行口应用
8.1 数据传输
一、串口组成及工作原理
异步接收/发送器URAT
单工、 双工、 全双工
(Universal Asynchronous Receiver/Transmitter)用于串行全双工异步通 信,也可作同步寄存器使用。TXD端发送数据, RXD端接收数据;两个发送缓冲器SBUF (Serial Buffer), 用各自的时钟源控制发帧11位异步通信方式。1位起始位(0),8位 数据位(低位在前),1位可编程位0或1,1位停止位(1)。
方式3:波特率=(2SMOD/32)*N(定时器溢出率),
方式2:波特率=fosc/64(32)。
发送:将数据写入SBUF后,即启动发送,发送完一帧信息 时,硬件将TI置1,必须软件清零。第九位来自SCON中的 TB8(软件置1或清零),作多机通信的标志位或数据的奇偶 效验位。
四、波特率计算
计算机科学与技术系
波特率即数据传送速率,每秒传送二进制数码的位数 bit/s。 串行口四种工作方式决定三种波特率
⑴方式0,波特率为固定值,单片机时钟频率的1/12, 即fosc/12;
⑵方式2有两种波特率,波特率=(2SMOD/64)fosc, ⑶方式1和方式3波特率是可变的, 波特率=(2SMOD/32)*N(定时器溢出率)
计算机科学与技术系
方式1 : 一帧10位异步通信方式,1位起始位 (0),8位数据位(低位在前),1位停止位(1),起 始位、停止位自动加入,TXD发送端,RXD接收 端,波特率=(2SMOD/32)*N(定时器溢出率)。 发送:将数据写入SBUF,即起动发送,数据 由TXD输出,定发送完一帧信息时,硬件将TI置 1,必须软件清零。 接收: REN=1时,串行口采样RXD端,当检测 到“1”到“0”的变化时(即起始位),开始 接收,9位全部收齐时,此时若RI=0,停止位为 “1”,便将接收的8位数据装入SBUF,停止位 送入RB8,置位RI,若不满足上述条件,则接收 无效。重新接收。
8.1 数据传输
一、串口组成及工作原理
异步接收/发送器URAT
单工、 双工、 全双工
(Universal Asynchronous Receiver/Transmitter)用于串行全双工异步通 信,也可作同步寄存器使用。TXD端发送数据, RXD端接收数据;两个发送缓冲器SBUF (Serial Buffer), 用各自的时钟源控制发帧11位异步通信方式。1位起始位(0),8位 数据位(低位在前),1位可编程位0或1,1位停止位(1)。
方式3:波特率=(2SMOD/32)*N(定时器溢出率),
方式2:波特率=fosc/64(32)。
发送:将数据写入SBUF后,即启动发送,发送完一帧信息 时,硬件将TI置1,必须软件清零。第九位来自SCON中的 TB8(软件置1或清零),作多机通信的标志位或数据的奇偶 效验位。
四、波特率计算
计算机科学与技术系
波特率即数据传送速率,每秒传送二进制数码的位数 bit/s。 串行口四种工作方式决定三种波特率
⑴方式0,波特率为固定值,单片机时钟频率的1/12, 即fosc/12;
⑵方式2有两种波特率,波特率=(2SMOD/64)fosc, ⑶方式1和方式3波特率是可变的, 波特率=(2SMOD/32)*N(定时器溢出率)
计算机科学与技术系
方式1 : 一帧10位异步通信方式,1位起始位 (0),8位数据位(低位在前),1位停止位(1),起 始位、停止位自动加入,TXD发送端,RXD接收 端,波特率=(2SMOD/32)*N(定时器溢出率)。 发送:将数据写入SBUF,即起动发送,数据 由TXD输出,定发送完一帧信息时,硬件将TI置 1,必须软件清零。 接收: REN=1时,串行口采样RXD端,当检测 到“1”到“0”的变化时(即起始位),开始 接收,9位全部收齐时,此时若RI=0,停止位为 “1”,便将接收的8位数据装入SBUF,停止位 送入RB8,置位RI,若不满足上述条件,则接收 无效。重新接收。
第8章单片机经典课件
第八章 单片机系统扩展
2.单片机总线驱动扩展
在单片机扩展应用中,由于CPU是通过总线与数片存储 器芯片及若干个I/O接口芯片相连接的,而且这些芯片可能 是TTL器件,也可能是CMOS器件,所以当构成系统时, CPU总线能否支持其负载是必须考虑的问题。当CPU总线上 连接的器件均为CMOS器件且数量不多时,因为CMOS器件 功耗低,所以一般不会超载。当总线上连接的器件使CPU超 载时,就应该考虑总线的驱动问题。这时需在总线上增加缓 冲器和驱动器,以增加CPU总线的带负载能力。
源有关,所以我们这里主要针对高速CMOS电路进行讨论。
第八章 单片机系统扩展 表8-1 TTL、CMOS电路的输入、输出特性参数
电路种类 参数名称 VOH(min)/V VOL(max)/V IOH(max)/mA IOL(max)/mA VIH(min)/V VIL(max)/V IIH(max)/A IIL(max)/mA TTL 74 系列 2.4 0.4 -0.4 16 2 0.8 40 -1.6 TTL 74LS 系列 2.7 0.5 -0.4 8 2 0.8 20 -0.4 CMOS* 4000 系列 4.6 0.05 -0.51 0.51 3.5 1.5 0.1 -0.1× -3 10 高速 CMOS 74HC 系列 4.4 0.1 -4 4 3.5 1 0.1 -0.1× -3 10 高速 CMOS 74HCT 系列 4.4 0.1 -4 4 2 0.8 0.1 -0.1× -3 10
第八章 单片机系统扩展
虽然都是MCS-51系列单片机,但各个厂家采用的生产
工艺不同(TTL或CMOS),产品不同,端口不同,驱动的外 部负载电路不同,则带负载能力也不一样。在设计单片机外 围扩展电路时都要考虑其是否能驱动所有负载正常工作。特 别是外围扩展电路较多时,更要考虑这一问题。在实际系统 设计中,首先要详细了解所用芯片的电气指标(高、低电平, 输入、输出电流等),如果是TTL和CMOS电路混合系统,不 但要考虑电流,还要考虑电平。然后,根据指标要求,考虑 单片机是否能驱动所要扩展的所有外围电路,如果不行,则 需要进行驱动扩展。
(单片机完整课件PPT)第八章
ห้องสมุดไป่ตู้
8.2 存储器扩展
8.2.1 存储器介绍 1.非易失性存储器 ROM、EPROM、EEPROM、Flash Memory。 EPROM—Erasable Programmable Read Only Memory 紫外线可擦除只读存储器。 2.易失性存储器 SRAM静态随机存储器容量小,硬件电路设计简单。 DRAM动态随机存储器容量大,硬件电路设计复杂,成本 低。 3.特殊存储器 双端口RAM、先进先出RAM(FIFORAM)
8.2.4 程序存储器EPROM的扩展 采用只读存储器,非易失性。 (1)掩膜ROM 在制造过程中编程。成本较高,因此只适合于 大批量生产。 (2)可编程ROM(PROM) 用独立的编程器写入。但PROM只能写入一次, 且不能再修改。
(3)EPROM 电信号编程,紫外线擦除的只读存储器芯片。 (4)E2PROM( EEPROM) 电信号编程,电信号擦除的ROM芯片。读写操作与RAM 几乎没有什么差别,只是写入的速度慢一些。但断 电后能够保存信息。 (5)Flash ROM 又称闪烁存储器,简称闪存。大有取代E2PROM的趋势。 8.2.4.1 常用EPROM芯片介绍
8.2.2 存储器扩展方法
1、数据线与数据线相连:8根线直接连 2、地址线与地址线相连:地址空间分配问题 3、控制线与控制线相连
RAM芯片:读写控制引脚,记为OE和WE ,与 MCS-51的RD和WR相连。 EPROM芯片:只能读出,故只有读出引脚,记为 OE,该引脚与MCS-51的PSEN相连。
1. 线选法 直接利用系统的高位地址线作为存储器芯片(或I/O接 口芯片)的片选信号。 优点:电路简单,不需要地址译码器硬件,体积 小,成本低。 缺点:可寻址的器件数目受到限制,地址空间不连 续,地址重叠(不唯一)。 例 某一系统,需要外扩8KB的EPROM(2片2732),4KB 的RAM(2片6116),这些芯片与MCS-51单片机地址 分配有关的地址线连线,电路如下图。
8.2 存储器扩展
8.2.1 存储器介绍 1.非易失性存储器 ROM、EPROM、EEPROM、Flash Memory。 EPROM—Erasable Programmable Read Only Memory 紫外线可擦除只读存储器。 2.易失性存储器 SRAM静态随机存储器容量小,硬件电路设计简单。 DRAM动态随机存储器容量大,硬件电路设计复杂,成本 低。 3.特殊存储器 双端口RAM、先进先出RAM(FIFORAM)
8.2.4 程序存储器EPROM的扩展 采用只读存储器,非易失性。 (1)掩膜ROM 在制造过程中编程。成本较高,因此只适合于 大批量生产。 (2)可编程ROM(PROM) 用独立的编程器写入。但PROM只能写入一次, 且不能再修改。
(3)EPROM 电信号编程,紫外线擦除的只读存储器芯片。 (4)E2PROM( EEPROM) 电信号编程,电信号擦除的ROM芯片。读写操作与RAM 几乎没有什么差别,只是写入的速度慢一些。但断 电后能够保存信息。 (5)Flash ROM 又称闪烁存储器,简称闪存。大有取代E2PROM的趋势。 8.2.4.1 常用EPROM芯片介绍
8.2.2 存储器扩展方法
1、数据线与数据线相连:8根线直接连 2、地址线与地址线相连:地址空间分配问题 3、控制线与控制线相连
RAM芯片:读写控制引脚,记为OE和WE ,与 MCS-51的RD和WR相连。 EPROM芯片:只能读出,故只有读出引脚,记为 OE,该引脚与MCS-51的PSEN相连。
1. 线选法 直接利用系统的高位地址线作为存储器芯片(或I/O接 口芯片)的片选信号。 优点:电路简单,不需要地址译码器硬件,体积 小,成本低。 缺点:可寻址的器件数目受到限制,地址空间不连 续,地址重叠(不唯一)。 例 某一系统,需要外扩8KB的EPROM(2片2732),4KB 的RAM(2片6116),这些芯片与MCS-51单片机地址 分配有关的地址线连线,电路如下图。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
AT89S51单片机的串行接口有4种工作模式,可通过对SCON中的SM0、
SM1位的设置选择。
1.工作方式0 在方式0下,串行口的SBUF是作为同步移位寄存器使用的。在串行口发送时,
“SBUF(发送)”相当于一个并入串出的移位寄存器,由AT89S51单片机的内
部总线并行接收8位数据,并从TXD线串行输出;在接收操作时,“SBUF (接收)”相当于一个串入并出的移位寄存器,从RXD线接收一帧串行数据, 并把它并行地送入内部总线。在方式0下,SM2、RB8和TB8均不起作用,它 们通常均应设置为“0”状态。
有一根通信传输线,所以每次只能从一方传输给另一方,要改变传输方向时,必须通过电子 模拟开关互相切换,即由一方的接收切换成发送,另一方由发送切换成接收状态,然后才能 进行反方向数据信息的传输。其优点是节省了一根通信传输线,其缺点是显而易见的。
半双工通信方式只用一根通信传输线进行数据信息的接收或发送,其通信的
数据缓冲寄存器SBUF用于保存要发送的数据或者从串口接收到的数据,
CPU执行写 MOV SBUF,A指令便开始触发串口数据的发送。SBUF便一位一
位地发送数据,发送完成后置标志TI=1;在CPU允许接收串行数据的时,外 部串行数据经RXD送入SBUF时,电路便自动启动接收,第9位则装入SCON
2SMOD 定时器T1的溢出率 方式 1 波特率= 32
图 8-3 方式 1 帧格式
发送操作是在TI=0时,执行MOV SBUF,A指令后开始,然后发送电路自动
在8位发送字符前后分别添加1位起始位和停止位,并在移位脉冲作用下在
TXD线上依次发送一帧信息,发送完后自动维持TXD线为高电平。TI也由硬 件在发送停止位时置位,并通知CPU数据发送已经结束,可以发送下一帧数 据。
同步通信的数据传输速率较高,通常可达56Mbps或更高。同步通信的缺点
是要求发送时钟和接收时钟保持严格同步,故发送时钟除应和发送波特率保
持一致外,还要求把它同时传送到接收端。
一般情况下,串行通信中数据信息的传输总是在两个通信端口之间进行的。根据数据信息的
传输方向可分为以下几种方式:
(1)单工方式 在串行通信单工方式下,用一根通信传输线的一端与发送方相连接,称为发送端,其另一端 与接收方相连接,称为接收端。数据信息只允许按照一个固定的单方向传送,也就是只能发
速度和效率较低。要改变数据信息的传输方向必须通过软件编程双方均需进
行方向切换,由方向切换所产生的延时较长,由无数次重复切换所引起的延 时积累,正是半双工串行通信效率不高的主要原因。克服上述半双工缺点的
方法是采用信道划分技术,即一方的发送端与另一方的接收端用一根专用的
信息传输线相连接,再用另一根信息传输线相反方向连接。所谓全双工方式, 就是采用两根通信传输线各自连接发送与接收端,从而实现数据信息的双向 传输。这样,可方便地同时实施接收、发送数据信息的双向传输,大大提高 了数据信息的传输速率和效率,操作简单而方便,故而得以被广泛应用。
送端向接收端传输数据信息,而不能反过来传输。
(2)半双工方式 半双工方式的串行通信系统中设有接收器和发送器,通过控制电子模拟开关进行切换,两台 串行通信设备或计算机之间只用一根通信传输线相互连接。这样,通信双方可以相互进行数
据信息的接收或发送,但在同一时间仍只能单方向传输,不能同时进行接收和发送。由于只
以方式2接收数据。接收时,数据由RXD端输入,接收11位信息。当位检测 逻辑采样到RXD引脚从l到0的负跳变,并判断起始位有效后,便开始接收一 帧信息。在接收完第9位数据后,如果RI=0且SM2=0或接收到的第9位数据 位RB8=1。则将接收到的数据送入SBUF(接收缓冲器),第9位数据送入 RB8,将RI置1。否则,接收的信息将被丢弃。
8.2 AT89S51单片机的串行口
8.3串行口的工作方式 8.4波特率的设定 8.5单片机的串行通信接口技术 8.6案例: 双机通信
8.1.1数据通信的方式
按照串行数据的同步方式,串行通信可以分为同步通信和异步通信两类。同
步通信是按照软件识别同步字符来实现数据的发送和接收,异步通信是一种 利用字符的再同步技术的通信方式。 1.异步通信 在异步通信中,数据通常以字符(或字节)为单位组成字符帧传送。字符帧 由发送端逐帧发送,通过传输线被接收设备逐帧接收。发送端和接收端可以 由各自的时钟来控制数据的发送和接收,这两个时钟源彼此独立,互不同步。 在异步通信中,字符帧格式和波特率是两个重要指标,由用户根据实际情况 选定。 (1)字符帧。字符帧也称数据帧,由起始位、数据位、奇偶校验位和停止位4
第9位数据可以自己定义,一般在双机通信时作为奇偶校验位,多机通信时
作为地址/数据的标志位。发送前,先根据通信协议由软件设置TB8,然后将
要发送的数据写入SBUF,即可启动发送过程。串行口能自动把TB8取出,并 装入到第9位数据位的位置,再逐一发送出去。发送完毕,则使TI位置1。
当串行口的SCON寄存器的SM0、SM1两位为10,且REN=1时,允许串行口
在串行口方式0下工作并非是一种同步通信方式。它的主要用途是和外部同 步移位寄存器外接,以达到扩张一个并行I/O口的目的。
2.工作方式 1 串行数据通过 TXD 发送,RXD 接收。一帧数据是 10 位,包括 1 位起始位,8 位数 据为和 1 位停止位,如图 8-3 所示。波特率是可变的,由定时器 1 溢出率和 SMOD 共同 决定。方式 1 的波特率由下式确定:
接收操作在RI=0和REN=1条件下进行,这点与方式0时相同。当接收电路连 续8次采样到RXD线为低电平时,相应检测器便可确认RXD线上有了起始位。 在接收到停止位时,接收电路必须同时满足以下两个条件:RI=0且SM2=0
或接收到的停止位为“1”,才能把接收到的8位字符存入“SBUF(接收)”
中,当一帧数据接收完毕后,将SCON中的RI置1,通知CPU从SBUF取走接收 到的数据。
数据帧。
RB8:接收到的第9位数据。在方式2和3时,RB8存放接收到的第9位数据。 在方式1,如果SM2=0,RB8接收到的是停止位。在方式0,不使用RB8。
TI:发送中断标志位。串行口工作在方式0时,串行发送第8位数据结束时由
硬件置1,在其他工作方式,串行口发送停止位的开始时置1。TI=1,表示
AT89S51单片机内部有一个全双工的异步通信串口。
8.2.1串行口结构
AT89S51单片机的串口由2个数据缓冲器、1个移位寄存器和1个串行控制寄 存器等组成,如图8-2所示。数据缓冲器由串行接收缓冲器和发送缓冲器构
成,它们在物理上是独立的,既可以接收数据也可以发送数据,还可以同时
发送和接收数据。接收缓冲器只能读出,不能写入,而发送缓冲器则只能写 入,不能读出,它们共用一个地址(99H)。 Nhomakorabea
在串行通信中,发送端逐帧发送信息,接收端逐帧接收信息。两相邻字符帧之间
可以无空闲位,也可以有若干空闲位,这由用户根据需要决定。图8-1 (b)中有三 个空闲位时的字符帧格式。
波特率的是每秒钟传送二进制数码的位数(亦称比特数),单位是bps。波
特率是串行通信的重要指标,用于表征数据传输的速度。波特率越高,数据
部分组成,如图8-1所示。现对各部分结构和功能分述如下:
起始位:位于字符帧开头,只占1位,始终为逻辑0低电平,用于向接收设备表示
发送端开始发送一帧信息。
数据位:紧跟起始位之后,用户根据情况可取5位、6位、7位或8位,低位在前高 位在后。若所传数据为ASCII字符,则常取7位。 奇偶校验位:位于数据位后,仅占1位,用于表征串行通信中使用奇校验还是偶 校验,由用户根据需要决定。 停止位:位于字符帧末尾,为逻辑“1”高电平,通常可取1位、1.5位或2位,用 于向接收端表示一帧字符信息已发送完毕,也为发送下一帧字符做准备。
工作方式 工作方式 0 工作方式 1 工作方式 2 工作方式 3
功能简述 移位寄存器工作方式,波特率为 8 位数据异步收发,波特率可变 9 位数据异步收发,波特率为 /32 或 /64 /12
9 位数据异步收发,波特率可变
SM2:多机通信控制位。因为多机通信是在方式2和方式3下进行的,因此, SM2位主要用于方式2和方式3中。当串行口以方式2或方式3接收时,如果 SM2=1,则只有当接收到的第9位数据(RB8)为1时,才将接收到的前8位数 据送入SBUF,并将RI置1,产生中断请求;当接收到的第9位数据(RB8)为0 时,则将接收到的前8位数据丢弃。而当SM2=0时,则不论第9位数据是1还 是0,都将前8位数据送入SBUF中,并将RI置1,产生中断请求。
PCON 是电源控制寄存器,不能位寻址。地址为 87H。各位的定义如表 8-3 所示: 表 8-3 PCON 各位定义 位 称 SMO D — — — GF1 GF0 PD IDL
其中,与串行通信相关的位是 SMOD。 SMOD:串行口波特率系数控制位。若 SMOD=1,方式 1、方式 2 和方式 3 的波特率 加倍。若 SMOD=0,各工作方式的波特率保持不变。
在方式1时,如果SM2=1,则只有收到有效的停止位时才会激活RI。
在方式0时,SM2必须为0。
REN:允许串行接收位。由软件置1或清0。若REN=1,允许串行口接收数据; 若REN=0,禁止串行口接收数据。
TB8:发送的第9位数据。在方式2和3时,TB8是要发送的第9位数据。其值
由软件置1或清0。在双机通信时,TB8一般作为奇偶校验位使用;在多机通 信中用来表示主机发送的是地址帧还是数据帧,TB8=1为地址帧,TB8=0为