Arduino para ODROID: Configurando tu Propio Oduino

En general, las API de Arduino se usan con un microcontrolador como Arduino-UNO, esp8266, etc. Estas API les facilita a las personas que han usado Arduino controlar su GPIO ODROID, así que he desarrollado una capa de API Arduino para ODROID.

No es necesario instalar Arduino IDE en tu PC y no necesitas conectar el PC a tu ODROID; solo instala Arduino IDE y algunas dependencias en ODROID y escribe el código. Cuando subas el código, ODROID ejecuta el código por sí solo. El repositorio de GitHub se encuentra en https://github.com/hhk7734/oduino.

[ NOTA: video en https://youtu.be/1Tkff0pTRZ0 ]

Instalación

Primero instala el escritorio Ubuntu MATE actualmente compatible. La guía de instalación está disponible en https://wiki.odroid.com/getting_started/os_installation_guide.

Descarga el último Arduino IDE para ARM Linux desde https://www.arduino.cc/en/Main/Software. La guía de instalación de Arduino está disponible en https://www.arduino.cc/en/Guide/Linux

Arduino para ODROID

Abre una terminal, copia y pega el comando en la terminal, y escribe los siguientes comandos:

sudo apt update && sudo apt install -y git && git clone --recursive https://github.com/hhk7734/oduino.git     ~/Arduino/hardware/hardkernel/odroid && sudo ~/Arduino/hardware/hardkernel/odroid/tools/install.sh
Si ya abriste un IDE de Arduino, ciérralo y vuelve a abrir el IDE.

odroid-config

Odroid-config es una utilidad que ayuda a los usuarios a configurar ODROID fácilmente. El código está disponible en el siguiente repositorio de Github: https://github.com/hhk7734/odroid-config

Confirgurar el IDE de Arduino

  • Tools -> Board -> ODROID Series
  • Tools -> Port -> /dev/ttyHK0
  • Tools -> Programmer -> Bridge

Pinmap

Arduino para ODROID utiliza un mapa de pin basado en la ubicación física. Si tienes ODROID-N2, aquí tiene su mapa de pin:

+---------+------+---+--- N2 ---+---+------+---------+
|   Name  | Mode | V | Physical | V | Mode |  Name   |
+---------+------+---+----++----+---+------+---------+
|    3.3V |      |   |  1 || 2  |   |      | 5V      |
|   SDA.2 | ALT1 | 1 |  3 || 4  |   |      | 5V      |
|   SCL.2 | ALT1 | 1 |  5 || 6  |   |      | 0V      |
|  IO.473 | ALT1 | 0 |  7 || 8  | 1 | IN   | TxD1    |
|      0V |      |   |  9 || 10 | 1 | IN   | RxD1    |
|  IO.479 |   IN | 1 | 11 || 12 | 1 | IN   | IO.492  |
|  IO.480 |   IN | 1 | 13 || 14 |   |      | 0V      |
|  IO.483 |   IN | 1 | 15 || 16 | 1 | IN   | IO.476  |
|    3.3V |      |   | 17 || 18 | 1 | IN   | IO.477  |
|    MOSI |   IN | 1 | 19 || 20 |   |      | 0V      |
|    MISO |   IN | 1 | 21 || 22 | 1 | IN   | IO.478  |
|    SCLK |   IN | 1 | 23 || 24 | 1 | IN   | CE0     |
|      0V |      |   | 25 || 26 | 0 | IN   | IO.464  |
|   SDA.3 | ALT2 | 1 | 27 || 28 | 1 | ALT2 | SCL.3   |
|  IO.490 |   IN | 1 | 29 || 30 |   |      | 0V      |
|  IO.491 |   IN | 1 | 31 || 32 | 0 | IN   | IO.472  |
|  IO.481 |   IN | 1 | 33 || 34 |   |      | 0V      |
|  IO.482 |   IN | 0 | 35 || 36 | 0 | IN   | IO.495  |
|   AIN.3 |      |   | 37 || 38 |   |      | 1V8     |
|      0V |      |   | 39 || 40 |   |      | AIN.2   |
+---------+------+---+----++----+---+------+---------+
|   Name  | Mode | V | Physical | V | Mode |  Name   |
+---------+------+---+--- N2 ---+---+------+---------+

Ejemplo

Arduino IDE -> File -> Examples -> 01.Basics -> Blink

void setup() {
  pinMode(LED_BUILTIN, OUTPUT);
}
void loop() {
  digitalWrite(LED_BUILTIN, HIGH);
  delay(1000);
  digitalWrite(LED_BUILTIN, LOW);
  delay(1000);
}
Por defecto, el Arduino-UNO conecta el D13 al LED. Entonces la expresión constante: int LED_BUILTIN = 13; esta declarada. Conecta el LED a los 13 pines y carga el código de ejemplo y el LED parpadeará.

Tienes disponible un ejemplo adicional de ODROID I2C en https://medium.com/@hhk7734/how-to-use-i2c-lcd-on-odroid-eaf20d20966c. Para obtener más información, consulta la publicación del hilo del foro ODROID en  https://forum.odroid.com/viewtopic.php?f=180&t=37713.

Be the first to comment

Leave a Reply