单片机常用接口芯片及其接口技术介绍
合集下载
相关主题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
24
G
N
D
IO扩展方法
总线扩展方法
I/O扩展芯片的并行数据输入取自单片机接口。该扩展方法 只分时占用P0口,不影响P0口与其它扩展芯片的连接操作, 不会造成单片机硬件的额外开支。
串行口扩展方法
单片机串行口在方式0工作状态下所提供的I/O的扩展功能。 接74LC164可扩展并行输出口,接74LC165可扩展并行输入。 该扩展方法只占串行口,而且通过移位寄存器的级联方法 可以扩展多数量的并行I/O。
数据线
外设
8
MCU与外设信息交互方式
无条件传送方式
在进行I/O操作时,不需要测试外部设备的状态,可以根 据需要随时进行数据传送操作。只有那些一直为数据I/O 传送作好准备的外部设备(如发光二极管、数码管、机械 开关、ADC,DAC),才能使用无条件传送方式。
查询方式 中断方式 DMA方式(超8位单片机)
6
具体功能:(不同接口功能不同) 寻址功能 传递功能 位功能 中断功能 联络功能 变换功能 可编程功能 错误检测功能
7
典型I/O接口的结构
CPU
控制 REG
状态 REG
数据输出 REG
数据输入 REG
控制线 数据输入/输出寄存器:保存数据 控制寄存器:保存控制信息,决定接口工作方式 状态寄存器:存放状态信息,反映外设当前状态
P1.0 P1.1 P1.2 P3.0 P1.3 51MCU P1.4 P1.5 S1 S2 INT0 INT1 P1.6 P1.7 反相三态缓冲/ 线驱动器 74LS240 LED
BUZZER
INT1与S2相连,作为报警信号的输入端,因此 需要将INT1设为高优先级,S1控制亮灯方式, 20 因此需要判断S1按下次数的奇偶性。
通过单片机内I/O的扩展方法
扩展芯片输入输出的数据线不通过P0口而通过其他片内I/O 口。 25
存储器扩展
程序存储器 EPROM:2716,2732,……,27512 E2PROM:2816,2817A,2864…… 数据存储器 SRAM:6116,6264,62256,…… DRAM 越来越多的单片机片内集成Flash! SDRAM 就其本质而言,Flash Memory属 iRAM 于E2PROM(电擦除可编程只读存储
12
SRAM1
nCE nOE nWE A[] D[]
乒乓缓冲结构
(双缓冲技术)
CMOS Image Sensor
HREF VSYNC PCLK Y0 „ Y7 CPLD/FPGA
INT R/W D[] A[] MCU
这种结构是将输入数据流通过输入 SRAM2 数据选择单元等时地将数据流分配到 两个数据缓冲区。 在第1个缓冲周期,将输入的数据流缓存到数据缓冲模 块1上,在第2个缓冲周期,通过输入数据选择单元的 切换,将输入的数据流缓存到数据缓冲模块2,同时, 将数据缓冲模块 1缓存的第 1个周期的数据通过输出数 据选择单元的选择,送到运算处理单元进行处理,第3 个缓冲周期,再次切换数据的输入与输出缓冲模块。 如此循环,周而复始。
通过逻辑“或”的关系将多个外部中断源通过“线或”连接到INT0和 INT1外部中断,利用输入端口作为各中断的识别线(发生中断请求时通过 输入端口进行查询判别究竟是哪个中断)。
矢量中断扩充外部中断源
利用优先权编码器74LS148对较多的外部中断源进行排队。当多个中断 同时发生时,编码器只对一个优先权最高的中断作为反应,并输出其矢 量代码到单片机的端口(比如8个外部中断源需P1.0-P1.2)。当CPU响应 中断请求后,CPU可以通过端口得到中断矢量。中断矢量处利用多分支 转移程序实现程序引导,类似于指针作用。
9
查询方式
查询输入
在I/O操作之前,要先检测外设的状态,以 了解外设是否已为数据输入输出作好了准 备,只有在确认外设已“准备好”的情况 下,CPU才能执行数据输入输出操作。
查询输出
准备输出数据
输入状态信息
N
Ready?
Y 输入数据
硬件电路简单 MCU速度高于外设 通常处于等待状态 效率很低
17
中断类型
外部中断类(INT0,INT1)
由单片机的输入输出设备等外部原因引起的,可 设置请求信号是电平触发还是边缘触发。
计时中断类(TCON)
由内部计时器计数产生计数溢出时所引起的中断, 内部中断,计时器可由用户通过程序设定。
串行端口中断类(SCON)
当串行端口接收或发送完一帧数据时,修改 SCON,向CPU申请中断。
单片机常用接口芯片 及接口技术介绍
1
计算机结构
外部设备
I/O接口
运算器
存储器
控制器
CPU
2
MCU基本结构
地址总线
16进制->汇编语言->C语言
I/O 总线
MCU
SCM
存储器
输入/出 接口 控制
外围
设备
数据总线 控制总线
根据片内程序空间和数据空间、控制总线和数据总线是否分开
CISC结构-冯.诺依曼结构:如8051,AT89系列 RISC结构-哈佛结构:如PIC单片机
CMOS Image Sensor
乒乓 缓冲控制器
MCU
SRAM2
SRAM2
14
14
中断技术
中断方式与查询方式的主要区别:如何知道外设是否为 数据传送作好了准备。查询方式是CPU的主动形式,中断 方式是CPU等待中断请求的被动形式。 采用中断方式进行数据传送时,当外设为数据传送作好 准备之后,就向CPU发出中断请求。CPU接收到中断请求 后即作出响应,暂停正在执行的原程序。而转去为外设的 数据输入输出服务。待服务完成之后,程序返回,CPU再 继续执行被中断的原程序。 中断源的中断请求被 CPU响应之后, CPU自动把中断源 的中断入口地址(中断矢量地址,固定)装入PC,从中 断矢量地址处获得中断服务程序的入口地址。一般在此 地址单元中存放一条绝对跳转指令,可以跳至用户安排 的任意地址空间。
19来自百度文库
中断处理系统的应用
例:移动广告灯,要求通 过单片机的控制实现以下 功能:P1接8个LED,使8 个LED闪烁。当奇数次按 下S1时,8个LED每次同 时点亮4个,点亮3次,即 D0-D3与D4-D7交叉点亮3 次。偶数次按下S1时,则 D0-D7进行左移和右移2次。 当按下S2,产生报警(优 先)。
23
I/O
完整单片机系统:键盘输入、显示输出、打印输 出、数据采集、伺服系统、数据存储、数据通信 等众多功能,皆通过I/O端口实现与MCU的信息交 互。 复用性:地址、数据复用(当P0端口作为地址数据 总线复用,就不能再作为IO口) 驱动能力:不同端口的驱动能力
VCC +5V SPEAKER D 1 3 Q K 1 R 6 2 FMQ 1 3 C T L J 2 1 K NPN 9013 1 LS1
指令体系 结构体系
3
接口的基本概念
什么是I/O接口?连接CPU与外设之间的逻辑电 路称I/O接口电路,简称接口。 为什么需要I/O接口?单片机IO端口只能接收和 发送逻辑电平数字信号,而IO外设输入输出的 信号种类、信号电平各异。如何以不变应万变? 接口电路的主要功能: 锁存功能 缓冲功能 速度匹配 变换功能
执行下一条指令
响应低级中断请求
响应高级中断请求
N
断点1
返回主程序
断点2
返回低级中断
继续执行 主程序
服 务 子 程 序
16
中断技术
程序中断方式,大大提高了系统的效率。中断可 实现快速CPU 与慢速外部设备之间的并行工作, 实现实时处理和故障处理,不但速度快而且可以 实现多道程序方式,所以在计算机中被广泛采用。 但中断请求是一种随机事件,如果每传送一个字 符都要中断消耗很大。为实现程序中断,对计算 机的硬件和软件都有较高的要求。此外,由于中 断处理常需现场保护和现场恢复。因此,对 CPU 来说仍有较大的无用开销。
4
数据锁存功能
数据输出都是通过系统的数据总线进行的。但是由于CPU 的工作速度快,数据在数据总线上保留的时间十分短暂, 无法满足慢速输出设备的需要。为此在接口电路中需设置 数据锁存器,以保存输出数据直至为输出设备所接收。数 据锁存就成为接口电路的一项重要功能。
三态缓冲功能
数据输入时,输入设备向CPU传送的数据也要通过数据总 线,但数据总线是系统的公用数据通道,上面可能“挂” 着许多数据源,工作十分繁忙。为了维护数据总线上数据 传送的“秩序”,因此只允许当前时刻正在进行数据传送 的数据源占用数据总线,其余数据源都必须与数据总线处 于隔离状态。为此要求接口电路能为数据输入提供三态缓 冲功能。 5
器)类型,但也可扩展数据存储。
26
扩展方法
线译码法
将部分高位地址信 号作为片选信号
全译码法
将其余所有的高 位地址信号经译 码后作片选信号 (相对部分译码)
27
键盘扩展
编码键盘——以硬件方式产生键码,价格昂贵 非编码键盘——不需专用硬件电路,响应速度慢 独立式键盘电路
nCE nOE nWE A[] D[]
13
第一周期
SRAM1
第二周期
SRAM1
CMOS Image Sensor
乒乓 缓冲控制器
MCU
CMOS Image Sensor
乒乓 缓冲控制器
MCU
SRAM2
SRAM2
第三周期
SRAM1
第四周期
SRAM1
CMOS Image Sensor
乒乓 缓冲控制器
MCU
21
DMA工作流程
DMA控制器向MCU/CPU 发出HOLD信号
MCU/CPU发回HLDA信 号,接管对总线的控制
C8051 MSP430 ARM DSP STM32 ……
发存储器地址 发读或写等控制信号
修改地址指针 传送数据
传送结束否? Y DMA结束
N
Memory-Copy
22
外围接口
数字量IO 总线接口扩展 存储器扩展 键盘接口 显示接口 A/D-D/A
DMA技术
假如一外设一秒能传送100个字节,若用查询方 式,这一秒内CPU全部用于查询和传送;采用中 断方式,假定CPU每传送一个字节的服务程序需 要100us,则传送100字节,CPU只需用10ms, 即只占一秒的1/100。 中断每次要保护断点,保护现场需用多条指令, 每条指令要有取指和执行时间。 DMA使得硬件直接在外设与内存之间进行数据交 换,而不通过CPU,速度的上限取决于存储器的 工作速度。 DMA>>中断>>查询
读状态端口
Y
BUSY?
N 输出数据
10
8路模拟量输入采集
数据总线 8位数据 MCU 端口3 数据 1位状态 8位 端口4 启动 4
指示 端口2
READY A/D转换
控制ADC
1个模拟量
MUX A7
多路开关 8路模拟量
0 1 2
A0
11
缓存控制器
缓存技术
高速数据采集 设备 缓存器 MCU
缓存技术是高速数据采集和处理中的一项关键 技术; 在高速数据采集系统中,通常在存储设备的前 端加一级缓存,可以使低速存储设备无丢失地 记录高速数据; 是CPU性能的一个重要指标; 在实时视频数据处理系统中的应用非常广泛, 特别是在图像帧率及分辨率要求比较高的场合。
15
中断处理流程
中断请求 中断响应 中断处理
保护现场+中断原服务
中断源发出中断请求
中断响应条件是 否满足? Y 查找中断入口地址 判断中断优先级
N
中断返回 中断请求撤销
主程序 低级中断 高 级 中 断 服 务 子 程 序
N
当前指令执行 完? Y 总中断标志 EA=1? Y 关中断,转中断入口
如何定义矢量地址和优先级参考具体的单片机。
18
外部中断源扩展
利用计时器扩充外部中断源
当计时器设置为计数方式时,一旦外部信号从计数器引脚输入一个负跳 变信号,计数器+1;将计时器引脚作为外部中断请求相连,计时器的溢 出中断标志及中断服务程序作为扩充外部中断源的标志和中断服务程序。
中断和软件查询相结合扩充外部中断源
速度匹配功能
由于速度上的差异,使得数据的I/O传送难以异步方式进 行,即只能在确认外设已为数据传送作好准备的前提下 才能进行I/O操作。而要知道外设是否准备好,就需要通 过接口或产生或传送外设的状态信息,以此进行CPU与外 设之间的速度协调。
数据变换功能
CPU 只能输入和输出并行的电压数字信号,但是有些外 部设备所提供或所需要的并不是这种信号形式。为此需 要使用接口电路进行数据信号的转换,主要包括模 → 数 转换、数→模转换、串→并转换和并→串转换等。