打印
[其他]

教你认识IO接口,MCU与外设信息交互及中断技术分析

[复制链接]
972|3
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
jcky001|  楼主 | 2021-3-30 09:58 | 只看该作者 |只看大图 回帖奖励 |倒序浏览 |阅读模式
什么是I/O接口
I/O口就是CPU与外设之间的逻辑电路,一般简称为接口。单片机IO端口只可以接收和发送编辑电平数字信号,而IO外设输出输入的信号种类、电平信号各异。

接口电路的主要功能
1.数据锁存储器
数据输出都是通过系统的数据总线进行的,但是由于CPU的工作速度比较快,数据停留在数据总线上的时间非常短暂,所以无法满足慢速输出设备的需求,因此在接口电路中要设置数据锁存储器,用来保存输出数据到输出设备能完全接收为止,那么数据总线上的数据输出存储是一项重要的功能。
2.三态缓冲功能
数据输入时,输入设备传送数据至CPU也是要通过数据总线,但是数据总线是系统的公用数据通道,上面还会有许多数据源,数据总线的工作十分。为了维护数据总线上数据传输的秩序,便采用了三态缓冲功能,只允许当前时刻正在正在进行数据传送的数据源占用数据总线,而其他的数据源都必须要与数据总线进处于隔离状态,这就是三态缓冲功能。
3.数字信号转换
CPU只可以输出和输入并行的电压数字信号,但是有些外部设备的所提供的信号并不是这种信号形式,所以需要使用接口电路把不是并行的电压数字信号进行转换,其转换形式分为几种类型分别是数一模转换、串一并转换、模一数转换、并一串转换等。

4.速度匹配功能
由于速度上的差异,使得数据的I/O传送很难用异步方式进行,因此只能在确认外设已经为数据传送做好准备的前提下才可以进行I/O操作,若要了解外设是否准备好,就需要通过接口产生或者传送外设的状态信息。以此来进行外设与CPU之间的速度协调。
MCU与外设信息交互-无条件传送方式
在进行I/O操作时,不需要对外部状态进行测试,可以根据需要随时进行传送数据操作,只有那些一直为数据I/O传送做好准备的外部设备(数码管、二极管DACADC、机械开关)才可以使用无条件传送的方式。
查询方式
I/O操作之前,要先检测外设的状态先确认外设是否为数据传输做好了准备,只有在已经确认外设准备好的前提下,CPU才可以执行数据输出、输入操作。

缓存技术是高速数据采集和处理中的一项关键技术。在高速数据采集系统中,通常在存储设备的前端加一级缓存,便可以让低速存储设备物丢失的记录高速数据,这点是熟悉CPU性能的一个重要指标。
中断技术
如何区分查询方式和中断方式,了解外设是否为数据传送做好了准备,查询方式是CPU的主动形式,中断方式CPU等待中断请求的被动形式。

采用中断方式进行数据传送时,当外设置为数据传送做好准备之后,就向CPU发出中断请求。在CPU接收到中断请求后就立即做出响应,从而暂停正在执行的原程序。而转出为外设的数据输出输入服务,待这套服务完成之后程序返回状态,CPU再继续执行被中断的原程序。
程序中断方式,很大程度上提升了系统的效率,中断可以快速实现CPU与外部慢速设备之间的工作,实现快速实时处理故障不仅速度快而且还可以实现多道程序方式,所以这种方式在计算机被广泛采用。但是中断请求是一种随机的事件,若每传送一个字符都进行中断,那么消耗将会很大。要实现程序中断,对计算机的硬件和软件都有较高的要求,另外,由于中断处理需要现场恢复和现场保护,所以,对于CPU来讲任然是一笔较大的无用开销。





使用特权

评论回复
沙发
随风而去吧| | 2021-4-10 10:07 | 只看该作者
每日要进步,要加油

使用特权

评论回复
板凳
yangjiaxu| | 2021-5-23 19:27 | 只看该作者
这帖子是不是重复了 不过MCU是真不错 天天与其打交道哦

使用特权

评论回复
地板
Allison8859| | 2021-5-27 22:11 | 只看该作者
如果说MCU的话,现在一般都是用串口,SPI/I2C,CAN/LIN和网口等等

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

1510

主题

4543

帖子

6

粉丝