Neste tutorial, iremos aprender a fazer o Arduino se comunicar com o PC através de texto enviado pela porta serial.

 
1. Introdução

O Arduino UNO (e vários outros modelos) consegue se comunicar com o PC através da porta USB. Essa comunicação se dá através de um processo chamado “serial”, que podemos acessar pelo “Monitor Serial” na IDE do Arduino. Além disso, essa comunicação pode ser feita em duas vias, ou seja, enviando e recebendo dados.

 
2. Componentes e materiais

  • Um Arduino UNO.
  • Um Cabo USB.

 
3. Montagem

Conecte o Arduino no PC usando o cabo USB, abra a IDE, selecione a placa e a porta. Caso não lembre como fazer, clique aqui.

 
4. Serial.begin

Dentro do setup, o comando Serial.begin(9600);, significa exatamente “inicie a (porta) Serial em 9600 (de velocidade)”. Ele é necessário para informar que vamos usar a porta serial e que a comunicação será em determinada velocidade. O valor dessa velocidade pode ser escolhido, conforme a página de referência do arduino. Usamos a velocidade de 9600, pois é reconhecida por muitos equipamentos.

O comando while(!Serial){;} é usado para garantir que a placa está conectada e inicializada corretamente antes que se faça qualquer comunicação. Sua interpretação é: “enquanto Serial não for verdade, faça nada”. Em um próximo tutorial explicaremos melhor o while.

Isso é tudo que é necessário para configurar a porta serial. Em outros programas, podemos reaproveitar essa parte do código dentro do setup para ter acesso à este tipo de comunicação.

 
5. Serial.println

Dentro do loop, o comando Serial.println(“…”); serve para “imprimir/enviar” (“print”) na porta serial a mensagem que está entre as aspas. Em seguida, temos delay(1000);, que serve para fazer o Arduino esperar um segundo antes de voltar a executar comandos.

 
6. Monitor Serial

Após fazer “Upload” do código, podemos visualizar o resultado abrindo o Monitor Serial:

 

Abrir o monitor serial

Abrir o Monitor Serial

 

O Monitor Serial tem a seguinte aparência:

Monitor Serial

Monitor Serial

 

A cada segundo, uma nova linha da frase do elefante aparece. Note, que na parte de baixo da tela está selecionada a mesma velocidade do setup do programa.

 
7. Serial.print

Depois de mostrar “um elefante”, iremos contar até 99 elefantes!

O resultado no monitor serial é assim:

 

Mais elefantes

Mais elefantes

 

Existem algumas coisas novas nesta versão do programa. A primeira delas é o comando Serial.print. Anteriormente, usamos o Serial.println, que, além de enviar o texto, já avançava para a próxima linha e por isso tem as letras ln no final (significa “linha”). O comando Serial.print envia o texto, porém permite que mais coisas sejam acrescentadas na mesma linha. Também não usamos aspas dentro do comando, isto faz com que o valor da variável seja impresso, por isso aparecem os números de 2 a 99 no começo das frases.

Outra novidade é int quantos; que avisa a IDE que vamos usar uma variável chamada quantos que pode receber números inteiros (int). Ela será usada para saber quantos elefantes estamos contando.

Em seguida, temos o for(…) que é usado para repetir um bloco de comandos e contar quantas vezes essa repetição acontece. Dentro dele, entre parênteses, temos três partes: quantos = 2, indica que a contagem começa em 2; quantos < 100, indica que vamos contar enquanto for menos que 100, ou seja, 99; quantos = quantos + 1, que diz quanto a contagem muda ao final do bloco, nesse caso a contagem aumenta 1 a cada vez.

 
8. Estrutura do programa

Fizemos algumas alterações para que o programa repita a palavra “incomodam” várias vezes dentro da frase. Tente entender o funcionamento dos dois comandos for um dentro do outro.

 

incomodam incomodam incomodam incomodam incomodam incomodam

incomodam incomodam incomodam incomodam incomodam incomodam

 

No próximo tutorial, iremos aprender a fazer o Math Game, jogo de perguntas e respostas com operações matemáticas (multiplicação e divisão), usando o Monitor Serial.

Produtos
Promoção!
Arduino UnoArduino Uno

Uno SMD – Arduino compatível

R$59,90 R$54,90

Ideal para iniciantes, o Uno é um Arduino compatível bem capaz, barato e com diversos shields e sensores compatíveis disponíveis. Se você está começando a aprender sobre microcontroladores e Arduinos, esta é a placa perfeita! Ela é a nossa placa principal nos nossos tutoriais de Arduino.

6 Comentários

    • Muito obrigado!!

      Ficamos muito felizes com o elogio, pois nossa intenção é fazer conteúdos de qualidade! E melhorar sempre, portanto, críticas construtivas são bem-vindas também

  1. Olá Mauricio,
    Muito Bacana o passo a passo, estou querendo implementar um controle de acesso ao restaurante de minha Instituição e acredito que o arduino possa me ajudar nisso. Vi que participou do projeto Orpas no FabLab, e gostaria de saber se existe previsão de divulgação do programa feito em processing para este projeto no github.
    Desde já agradeço.

    • Ricardo, bom dia!

      Acho que já conversamos pelo facebook.com/MauMaker.
      Vou divulgar o programa em Processing nos próximos 15 dias. Estou atualizando os comentários no código para facilitar o entendimento. Somente não poderemos divulgar a parte de criptografia por motivos de segurança do sistema da ORPAS, porém se eu puder te ajudar, basta dizer!
      Se você tiver alguma experiência com Processing posso enviar o código mesmo sem os comentários, para adiantar suas coisas!

  2. Ola, quero fazer um sistema que mostra a temperatura do PC usando um sensor, mas quero que ao passar certa temperatura, o arduino execute um programa .bat para desligar automaticamante o PC, é possivel?

Deixe uma resposta

Seu endereço de e-mail não será publicado. Campos obrigatórios estão marcados *

limpar formulárioPostar Comentário