Comunicaciones
Arduino permite comunicarse con periféricos o con el PC de diferentes formas:
- Puerto serie (COM): Permite una conexión serie (tipo RS232) a través del puerto USB. Utilizada principalmente para programar la placa Arduino desde el ordenador y para comunicar con aplicaciones en un ordenador (consola
serie). Con una aplicación de terminal o consola serie podemos visualizar los datos recibidos desde Arduino y enviar datos al Arduino fácilmente.
(José Andrés Echevarría @cantabRobots CC-BY-NC-SA)
Para utilizar este puerto hay que determinar antes a qué velocidad se van a transmitir los datos para que todo se sincronice. A la hora de programar en el apartado de Inicio se determina la velocidad en baudios bits por segundo normalmente 9600
(José Andrés Echevarría @cantabRobots CC-BY-NC-SA)
La conexión serie de Arduino está accesible en los pines 0 (RX) y 1 (TX), internamente estos pines están conectados al chip que gestiona el USB, en caso de usar la comunicación serie con otros dispositivos conectados a los pines 0 y 1 se deberá desconectar el USB para evitar que se mezclen los datos y no funcione la comunicación.
- I2C: Es otro sistema de bus de comunicaciones en serie. Permite crear una pequeña red de dispositivos (pensado principalmente para interconectar otros chips en la propia placa o cerca). La comunicación I2C sólo utiliza 2 cables.
- Para el Arduino UNO utiliza SDA=A4 SCL=A5
- Para el Arduino Nano utiliza SDA=A4 SCL=A5
- Para el Arduino Mega utiliza SDA=20 SCL=21
- Para I2C Keyestudio UNO utiliza : SDA=A4 SCL=A5
- Existe una tercera forma de comunicación, la SPI (Serial Peripheral Interface), pero no la veremos en este manual.
(adaptado de José Andrés Echevarría @cantabRobots CC-BY-NC-SA)
El Puerto serie COM lo utilizaremos como comunicaciones entre ordenador y las placas, aunque aquí puedes ver un ejemplo sencillo de comunicación entre dos Arduinos utilizando los pines 0-RX y 1-TX
El I2C se utiliza principalmente en la conexión con la pantalla I2C:
(José Andrés Echevarría @cantabRobots CC-BY-NC-SA)
Ejemplo de conexión de LCD con ARDUINO UNO para ver cómo se programa con código aquí