8255和8155是两种不同的IO芯片,它们的功能和应用场景都有所不同。以下从功能、接口、控制信号和特性四个方面详细阐述它们之间的区别。
8255是一个通用的并行I/O设备,其主要功能是提供并行输入/输出端口,可通过编程设置I/O口的输入输出方式以及I/O口的状态。而8155是一个具有RAM、I/O和定时/计数器功能的集成电路,它除了具备8255的I/O端口外,还可进一步扩展RAM和定时/计数器功能。
可以看出,8255是一种通用的I/O设备,它只提供输入/输出端口的控制,而8155则在此基础上增加了RAM和定时/计数器的集成设计。
8255和8155的接口都是8位的数据总线和16位的地址总线,但在其中有所不同。8255的I/O端口地址和控制寄存器地址是分开的,而8155则将这两个地址合并在一起。此外,8255的I/O端口可以通过三种不同的工作模式来设置,而8155则增加了可以寻址的RAM和定时/计数器。
因此,8255和8155在接口方面的差异主要体现在寄存器的地址分配方式和在集成设计方面所带来的新功能。
8255的控制信号有RD、WR、CS、AO1、AO2、AO3、BO1、BO2、BO3等,它们控制着数据的读写, 和I/O口貌似没什么关系的几个辅助输出信号。但8155的控制信号则更加丰富,它额外提供了R/W、MCS、ALE、RESET等控制信号,用于控制RAM的读写以及定时/计数器的计数和计时。
8255和8155的控制信号可以看出是各有侧重,8255主要控制数据的读写和三种工作模式的切换,而8155则更加注重RAM和定时/计数器的控制运作。
8255在应用上的特点是它提供了较多的输入输出接口,具有较高的稳定性和可靠性。其最大的输出电流为15mA,而输入电阻在输入模式下为15kΩ,输出电阻在输出模式下则约为47Ω。
8155则在8255的基础上增加了较大的RAM和实用的定时器/计数器功能,这使得8155在一些特定的应用场合下表现更加突出。其最大的输出电流为25mA,输入电阻和输出电阻均为10kΩ。
因此,8255和8155在硬件特性上的一些不同,也是它们之间的区别之一。