1.I/O接口
MCS-51单片机40引脚图中具有4个8位的并行I/O接口和1个串行I/O接口。对于简单的I/O设备可以直接连接。但当系统较为复杂时,往往要借助I/O接口电路(简称I/O接口)完成单片机与I/O设备的连接。现在,许多I/O接口已经系列化、标准化,并具有可编程功能。图7-31为单片机与I/O设备的连接关系图,此时,MCS-51单片机的40引脚转变为三总线结构。
图7-31 单片机与I/O设备连接原理图
I/O接口的功能是:
(1)对单片机输出的数据锁存。锁存数据线上瞬间出现的数据,以解决单片机与I/O设备的速度协调问题。
(2)对输入设备的三态缓冲。外设传送数据时要占用总线,不传送数据时必须对总线呈高阻状态。利用I/O接口的三态缓冲功能,可以实现I/O设备与数据总线的隔离,便于其他设备的总线挂接。
(3)信号转换。信号类型(数字与模拟、电流与电压)、信号电平(高与低、正与负)、信号格式(并行与串行)等的转换。
(4)时序协调。不同的I/O设备定时与控制逻辑是不同的,并与CPU的时序往往是不一致的,这就需要I/O接口进行时序的协调。
2.MCS-51单片机I/O口扩展性能
单片机应用系统中的I/O口扩展方法与单片机的I/O口扩展性能有关。
(1)在MCS-51单片机应用系统中,扩展的I/O口采取与数据存储器RAM相同的寻址方法。所有扩展的I/O口或通过扩展I/O口连接的外围设备均与片外数据存储器RAM统一编址。任何一个扩展I/O端口,根据地址线的选择方式不同,占用一个片外RAM地址,而与外部程序存储器无关。(www.xing528.com)
(2)利用串行口的移位寄存器工作方式(方式0),也可扩展I/O口,这时所扩展的I/O口不占用片外RAM地址。
(3)扩展I/O口的硬件相依性。在单片机应用系统中,I/O口的扩展不是目的,而是为外部通道及设备提供一个输入、输出通道。因此,I/O口的扩展总是为了实现某一测控及管理功能而进行的。例如连接键盘、显示器、驱动开关控制、开关量监测等。这样,在I/O口扩展时,必须考虑与之相连的外部硬件电路特性,如驱动功率、电平、干扰抑制及隔离等。
(4)扩展I/O口的软件相依性。根据选用不同的I/O口扩展芯片或外部设备时,扩展I/O口的操作方式不同,因而应用程序应有不同,如入口地址、初始化状态设置、工作方式选择等。
3.I/O口扩展方法
根据扩展并行I/O口时数据线的连接方式,I/O口扩展可分为总线扩展方法、串行口扩展方法和I/O口扩展方法。
(1)并行三总线扩展方法。与前面介绍的存储器并行三总线扩展类似,扩展的并行I/O芯片的并行数据线取自MCS-51单片机的P0口。这种扩展方法只分时占用P0口,并不影响P0口与其他扩展芯片的连接操作,不会造成单片机硬件的额外开销。因此,MCS-51单片机的I/O扩展中广泛采用这种扩展方法。
(2)串行口扩展方法。这是MCS-51单片机串行口在方式0工作状态下所提供的I/O口扩展功能。串行口方式0为移位寄存器工作方式,因此接上串入并出的移位寄存器可以扩展并行输出口,而接上并入串出的移位寄存器则可扩展并行输入口。这种扩展方法只占用串行口,而且通过移位寄存器的级联方法可以扩展多数量的并行I/O口。对于不使用串行口的应用系统,可使用这种方法。但由于数据的输入输出采用串行移位的方法,传输速度较慢。
(3)通过单片机片内I/O口的扩展方法。这种扩展方法的特征是扩展芯片的输入/输出数据线不通过P0口,而是通过其他片内I/O口。即扩展片外I/O口的同时也占用片内I/O口,所以使用较少,但在MCS-51单片机扩展8243时,为了模拟8243的操作时序,不得不使用这种方法。
8243为24脚的双列直插式芯片,它共有P4、P5、P6和P7共4个4位的并行I/O口,这4个端口均可独立设置为输入或输出口。由于各端口均为4位,因此很适用于BCD码的输入输出。
免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。