PRÁTICA 3 – ARDUÍNO COMO PORTA SERIAL USB
Objetivos:
- Conectar um Arduíno ao computador utilizando uma porta serial USB.
- Enviar comandos via porta serial para o Arduíno.
Tarefas:
- Montar o circuito.
- Executar o programa
- Abrir o Serial Monitor do Arduíno e testar. Quando você apertar o botão o Arduíno enviará “1” para o computador e quando não estiver apertando enviará “0”. Se você enviar “L” pelo serial monitor, o LED acenderá por 1 segundo.
Circuito:
Pinagem para o botão:
Programa 1 – Led e botão via serial
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 |
void setup() { // inicializa comunicação serial a 9600: Serial.begin(9600); pinMode(2, INPUT); //Pino 2 como input pinMode(3, OUTPUT); //Pino 3 como output } void loop() { int buttonState = digitalRead(2); // ler o pino 2 e colocar em uma variável Serial.println(buttonState); // imprimir a variável na porta serial delay(1); //Se não tiver este delay pode dar problemas! //Ler a porta serial, se enviar L maiúsculo acende o LED por um segundo if (Serial.read() == 'L') { digitalWrite(3,HIGH); delay(1000); } else digitalWrite(3,LOW); } |
Desafio: Modifique para que o LED pisque 2 vezes com 1s de intervalo e troque para enviar “pressionou” e “não pressionou”.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 |
void setup() { // inicializa comunicação serial a 9600: Serial.begin(9600); pinMode(2, INPUT); //Pino 2 como input pinMode(3, OUTPUT); //Pino 3 como output } void loop() { if (digitalRead(2) == 0) { Serial.println("Pressionou"); } else { Serial.println("Não Pressionou"); } delay(1); //Se não tiver este delay pode dar problemas! //Ler a porta serial, se enviar L maiúsculo acende o LED por um segundo if (Serial.read() == 'L') { digitalWrite(3,HIGH); delay(1000); digitalWrite(3,LOW); delay(1000); digitalWrite(3,HIGH); delay(1000); digitalWrite(3,LOW); delay(1000); } else digitalWrite(3,LOW); } |