wire varios sirve sensores que protocolos protocolo para example entre diferencia conectar comunicacion embedded microcontroller i2c uart spi

embedded - varios - UART vs I2C vs SPI para la comunicación entre procesadores entre microcontroladores



protocolos de comunicacion arduino (1)

Depende de sus requerimientos totales y de lo caros que sean los pines.

I2C solo necesita dos pines, pero es lento y manejarlo con o sin interrupciones es una molestia, incluso con la incorporación de módulos periféricos. Es un sistema maestro / esclavo, es bueno para controlar muchos dispositivos lentos como sensores de temperatura.
Solo dos líneas para todos los dispositivos de bus, la selección se realiza a través de una dirección I2C en el protocolo.

Uart necesita dos pines, normalmente es más rápido y más fácil de manejar, pero requiere (casi) los mismos relojes en ambos lados. El sistema asíncrono uno a uno puede ser bueno si ambos sistemas necesitan enviarse datos a veces sin esperar una solicitud de sondeo maestro.
También se puede utilizar como sistema de bus, pero luego necesita una estructura maestro / esclavo o protocolos más complejos.

SPI necesita 3 pines (o 4 con CS), es el más rápido y fácil de implementar, incluso con DMA, con una sobrecarga de tiempo de CPU baja, a menudo con búfer. Cuando tengas suficientes alfileres libres, lo preferiría.

Estoy examinando una forma de conectar dos microcontroladores. En el nivel de serialización, estoy pensando en usar Nano protobuffers ( http://code.google.com/p/nanopb/ ). De esta manera puedo codificar / decodificar mensajes y enviarlos entre dos procesadores.

Básicamente, un pequeño procesador sería el servidor RPC, capaz de realizar varias funciones. Un procesador más grande llamará a los RPC a través de los mensajes enviados, y luego, cuando los datos estén listos, los leerá desde un procesador más pequeño.

¿Cuáles serían los pros / contras de usar UART, I2C o SPI?

Los mensajes se pondrán en el buzón de correo antes del envío.

Saludos cordiales, Drasko