Em telecomunicações e ciência da computação, comunicação série é o processo de enviar dados um bit de cada vez, sequencialmente, num canal de comunicação ou barramento. Para ocorrer uma transmissão é necessário que o receptor e o transmissor estejam sincronizados, ou seja, o emissor deve definir uma taxa de transmissão e acordar essa taxa com o receptor para que os bits transmitidos sejam interpretados corretamente pelo receptor. A figura 1 mostra a transmissão da sequência numérica 00111011 através de uma comunicação serial onde cada bit tem um tempo bem definido.
![]() |
Figura 1. Representação da transmissão serial do bit 00111011 |
Quando usamos o Arduino para uma comunicação serial é necessário configurar essa taxa de Transmissão conhecida com Baud rate que indica o número de bits transmitidos por Segundo. Por exemplo, 9600 baud equivale a 9600 bits por Segundo.
Para configurar o uso da serial no Arduino e definir o baud rate basta usar o comando Serial.begin na função void setup conforme mostra o trecho do código abaixo.
void setup()
{
Serial.begin(9600); // inicializando comunicação serial com Baud rate de 9600
}
Para realizar os primeiros programas usando a serial, vamos usar os comandos print e read:
Função Serial.print
Função Serial.print é usada para envio de informações do Arduino para o PC e a sintaxe é dada por:
Serial.print(Argumento);
onde argumento pode ser um texto (sempre enviado entre "") ou uma variavel.
Exemplo1: Envia de texto do Arduino via porta serial
Exemplo1: Envia de texto do Arduino via porta serial
void setup()
{
Serial.begin(9600); // inicializando comunicação serial com Baud rate de 9600
}
void loop()
{
........
void loop()
void loop()
{
int x;
Serial.print(x);
int x;
Serial.print(x);
}
Função Serial.read
Função Serial.readé usada para envio de informações do PC para o Arduino onde a sintaxe é dada por:
Serial.read();
onde o valor enviado pelo PC deve ser armazenado numa variavel.
Exemplo3: Envia uma variável do Arduino via porta serial
Exemplo3: Envia uma variável do Arduino via porta serial
void setup()
{
Serial.begin(9600); // inicializando comunicação serial com Baud rate de 9600
}
void loo()
{
int x;
Serial.print(x);
int x;
Serial.print(x);
}
Alem dos comando basicos comentados acima, o Arduino possui diversas funções utilizadas em porta serial que podem ser estudadas diretamente na pagina do Arduino clicando aqui.
Com base nessa breve introdução faça os exercícios propostos....
Exercício 1- Faça um programa faça o LED piscar com uma frequência de 0,5 Hz., cada vez que o LED piscar, uma mensagem deve ser enviada para a serial informando "LED ligado" ou LED desligado". O LED deve ser polarizado como mostrando na postagem anterior. Não lembra? Clique aqui.
![]() |
Figura 3. Circuito ligando 1 LED atraves da porta serial |
Exercício 2- Usando o mesmo circuito da figura 3, faça um programa de acenda um LED via porta serial. Para acender o LED, o usuário deve digitar a letra "A" no monitor serial.
Exercício 3- Usando o mesmo circuito da figura 3, faça um programa de acenda e apague um LED via porta serial. Para acender o LED, o usuário deve digitar a letra "A" e para apagar o LED, o usuário deverá digitar "B" no monitor serial.
Exercício 4- Agora faça um programa que controle 3 Led's via porta serial onde as letras "a","b" e "c" irão ligar os Led's (cada Led será aceso por uma letra) e as letras "z", "x" e "c" irão apagar os Led's.
Exercício 4- Agora faça um programa que controle 3 Led's via porta serial onde as letras "a","b" e "c" irão ligar os Led's (cada Led será aceso por uma letra) e as letras "z", "x" e "c" irão apagar os Led's.
Desafio: Agora faça um programa que controle 3 Led's via porta serial onde as letras "a","b" e "c" irão ligar os Led's (cada Led será aceso por uma letra) e as letras "x", "y" e "z" irão apagar os Led's.
Cada vez que um led foi ligado ou desligado o programa deve informar via serial
![]() |
Figura 4. Circuito que deve ser implementado no desafio através da porta serial |
Desafio 2: Agora além de avisar qual Led esta sendo ligado ou desligado, o Arduino deve informar quantos Led's estão ligados naquele momento.
Obs.Não considerar que o usuário tentará acender um Led já aceso ou apagar um Led já apagado.
Desafio 3: Agora além de avisar qual Led esta sendo ligado ou desligado, o Arduino deve informar quantos Led's estão ligados naquele momento. O sistema deve ser inteligente o suficiente para não mostrar o numero de Led's ligado errado quando um usuário enviar um comando para apagar um Led que já está apagado.
Ainda ta com duvida, ou que saber a resposta do desafio, curta nossa pagina no facebook no link abaixo e poste sua duvida lá.
Nenhum comentário:
Postar um comentário