Una interfaz similar a 8080 probablemente significaría algo compatible con el bus de un procesador Intel 8080. Sin embargo, de hecho, el 8080 real es un poco primitivo, con algo parecido a la alternativa competitiva y algo compatible del Z80 que se corresponde más directamente con la interfaz de bus real que la gente recuerda de esa época. Si desea un ejemplo por excelencia de un chip periférico de ese estilo de bus que sobrevivió a la era moderna, busque el chip periférico paralelo 8255 utilizado en proyectos de aficionados, pero rara vez en computadoras, o los temporizadores programables 8253/8254 que sobrevivieron en el 8088 IBM PC accionado.
Esencialmente, sí, necesita leer la hoja de datos de cada chip periférico, pero después de haber leído algunos para un estilo de bus determinado, tendrá una mejor idea de cuáles son las normas y podrá hacer cero. En cualquier diferencia única.
Con un microcontrolador moderno, probablemente colgará los dispositivos periféricos de los pines GPIO controlados mediante software en lugar de un bus externo que es una extensión lógica directa (y 1: 1) del bus interno. Esto hace que las cosas sean mucho más simples, ya que probablemente pueda realizar sus experimentos y corregir sus errores en el software sin modificaciones (o mínimas) en el circuito, y es poco probable que cualquier error en la interfaz periférica impida que la MCU sea capaz de obtener y ejecute las instrucciones desde la memoria interna (a menos que reduzca el suministro de energía o desencadene su reinicio), de modo que pueda ver con su salida de monitor de debug o serie o lo que sea que esté obteniendo datos no / parciales / dañados del periférico. Además, si prueba estas conexiones, no tendrá todos los ciclos de recuperación de instrucciones no relacionados volando para confundir la imagen, sino que las líneas deben ser estables, excepto cuando su software esté hablando con el periférico (u otro que haya compartido esta información). creado "bus").
Obviamente, al conectar las líneas de "bus" a los GPIO, debes intentar colocar las líneas de datos de un byte en algún byte de un puerto GPIO, para que puedas acceder fácilmente allí. Y para las líneas de control sensibles al borde, querrá tener cuidado al configurarlas en el software para que no dispare una accidentalmente mientras controla otra. La familia STM32 que mencionas tiene una dirección de registro alternativa para cada puerto GPIO donde puedes escribir un bit en una posición para establecer un bit de salida único, o escribir el bit en una posición diferente para borrarlo.