En la aplicación de microcomputadoras de un solo chip, el protocolo de comunicación es una parte indispensable. La comunicación entre la computadora host y la computadora inferior, la computadora de un solo chip y la computadora de un solo chip, y la computadora de un solo chip y los módulos periféricos necesitan el protocolo de comunicación para realizar el intercambio de información y recursos compartidos. Debido a las diferentes tasas de transmisión, características eléctricas y requisitos de confiabilidad entre dispositivos, también se han producido muchos tipos de protocolos de comunicación adecuados para diferentes situaciones, y son ampliamente aceptados y utilizados. De hecho, los más utilizados son los siguientes:
1. UART y USART
Se denominan receptor y transceptor asíncrono universal y transceptor asíncrono síncrono universal, respectivamente. La velocidad no es rápida y puede ser full dúplex. La estructura generalmente se compone de un generador de velocidad en baudios, un transmisor UART/USART y un receptor UART/USART. Hay dos líneas en el hardware. Uno a uno.
2. I2C (CII)
Estándar de interfaz multimaestro bidireccional, de dos hilos, en serie. La velocidad no es rápida, semidúplex, interfaz síncrona, con mecanismo de arbitraje de bus, muy adecuada para la comunicación de datos frecuentes de corto alcance entre dispositivos, y puede realizar redes de dispositivos.
Bus arbitraje: línea AND, quien envíe 0 tendrá éxito en el arbitraje.
3. SPI
Puerto serie síncrono de alta velocidad, transceptor independiente de alta velocidad, dúplex completo, interfaz síncrona, puede realizar la interconexión de múltiples dispositivos SPI, hardware de 3 ~ 4 líneas; también es común a todos los dispositivos basados en SPI, son SDI (entrada de datos), SDO (salida de datos), SCK (reloj), CS (selección de chip).
4 USB
Puerto serie síncrono de alta velocidad, de alta velocidad, dúplex completo, compuesto por host, concentrador y dispositivo. El dispositivo se puede conectar con el cubo inferior para formar una estructura en estrella. Una línea de transmisión USB se compone de cuatro líneas: línea de tierra, línea de alimentación, D+ y D-. D+ y D- son líneas de entrada diferencial, que usan un voltaje de 3.3V. Los datos se transmiten en la línea USB de menor a mayor.
5. CAN
Adopta una transmisión de dos cables, y los dos cables se utilizan como CAN_H y CAN_L respectivamente, y el terminal está equipado con una resistencia de 120 Ω. Al recibir la señal del bus, el transceptor CAN convierte el nivel de la señal en un estado lógico, es decir, después de restar los niveles CAN_H y CAN_L, se obtiene un nivel de interpolación. Varias perturbaciones tienen el mismo efecto en los dos cables, y el nivel interpolado sustraído puede filtrar estas perturbaciones.
6. DMA
DMA se refiere a la tecnología de interfaz en la que los dispositivos externos intercambian datos directamente con la memoria del sistema sin pasar por la CPU. La velocidad de transferencia de dichos datos depende de la velocidad de trabajo de la memoria y los periféricos.
Por lo general, el bus del sistema es administrado por la CPU. En el modo DMA, se espera que la CPU renuncie a estos buses, es decir, las líneas conectadas a estos buses por la CPU están en el tercer estado (estado de alta impedancia), y el controlador DMA se hace cargo y controla el número de bytes transferidos, determine si el DMA ha terminado y envíe la señal final de DMA.