MIPS

Comunicação serial entre Omega2 e Dock Arduino

Omega2 e dock Arduino

Omega2 e Dock Arduino

Como explicado no artigo anterior, o dock Arduino do Omega possui um ATmega328P onboard e os slots para acoplamento de shields. A comunicação entre o Omega e esse “Arduino onboard” pode ser feita por UART (a UART1 do Omega, mais especificamente). Nesse breve artigo pretendo mostrar o quão simples é essa comunicação.

UART no Omega2

O Onion Omega possui 2 UARTs, tendo uma delas conexão direta com a UART do ATmega328P, quando conectado à dock Arduino. Para interagir com seus sketches, não há outra forma mais simples que esta, sendo possível fazê-lo por linha de comando e se desejar, um shell script.

Como ler e escrever na serial do ATmega328P




A UART1 do Omega responde no arquivo descritor do dispositivo /dev/ttyS1 no Linux. Tudo o que precisamos fazer para escrever nessa serial é enviar um comando echo seguido da mensagem para o dispositivo /dev/ttyS1:

E para ler, tão simples quanto, utilizando o comando cat, que ficará aguardando por dados na serial:

Vejamos como seria uma comunicação bi-direcional utilizando shell script no Linux e um sketch simples para acender e apagar o LED azul onboard da dock Arduino.

Fazendo uma comunicação bi-direcional entre a dock e o Omega

O mais coerente é definir algumas macros para enviar apenas 1 byte na comunicação ou, quando necessário, definir um protocolo. Apenas para figurar o funcionamento, o exemplo será o ligamento e desligamento do LED onboard da dock Omega utilizando os comandos 1 para ON e 0 para OFF. A velocidade da comunicação está por padrão 9600, então o sketch para o Arduino ficou assim:

Depois foi só enviar o valor:

Omega2 e dock Arduino
Omega2 e dock Arduino

Para ler, basta utilizar o comando cat. Vejamos um exemplo. Suba esse sketch no ATmega328P:

Abra o terminal do Omega2 pelo browser. Execute o comando e veja o resultado:

Omega2 e dock Arduino
Omega2 e dock Arduino

Se quisermos programar diretamente no Omega, basta escolher a linguagem e abrir o dispositivo /dev/ttyS1 para leitura e escrita, na velocidade de 9600kbauds. É pura diversão!

Onde comprar

Não é fácil achar no Brasil, mas por sorte a UsinaInfo tem ambos, a dock Arduino e o Omega2.

Inscreva-se no nosso newsletter, alí em cima à direita e receba novos posts por email.

Siga-nos no Do bit Ao Byte no Facebook.

Prefere twitter? @DobitAoByte.

Inscreva-se no nosso canal Do bit Ao Byte Brasil no YouTube.

Nossos grupos:

Arduino BR – https://www.facebook.com/groups/microcontroladorarduinobr/
Raspberry Pi BR – https://www.facebook.com/groups/raspberrybr/
Orange Pi BR – https://www.facebook.com/groups/OrangePiBR/
Odroid BR – https://www.facebook.com/groups/odroidBR/
Sistemas Embarcados BR – https://www.facebook.com/groups/SistemasEmbarcadosBR/
MIPS BR – https://www.facebook.com/groups/MIPSBR/
Do Bit ao Byte – https://www.facebook.com/groups/dobitaobyte/

Próximo post a caminho!