Hub 005 - Acender leds por comunicação serial - Arduino
- Detalhes
- angelo
- Acessos: 629
Básico - Hub 005
Ative o led correspondente ao valor lido no monitor serial
Sugerido por: Nathália Lima Celso
Objetivo
Elaborar um código necessário para acender um led correspondente ao valor lido no Monitor Serial do IDE do Arduino. O projeto deverá ter 10 leds conectados com valores de 0 a 9.
Componentes necessários
Referência |
Componente |
Quantidade |
Imagem |
Observação |
Protoboard | Protoboard 830 pontos | 1 | ![]() |
No mínimo utilizar protoboard com 830 pontos |
Jumpers | Kit cabos ligação macho / macho | 1 | ||
Led 5mm |
LED 5mm |
10 |
No projeto utilizamos 10 leds vermelhos Você também poderá utilizar LEDs de 5 ou 3 mm nas cores que desejar, alto brilho ou difuso. |
|
Resistor |
Resistor |
10 |
10 Resistores 150Ω (ou superiores) Se precisar usar outros valores, calcule o resistor apropriado para o led utilizado - Calcular Resistor ou use a Tabela Resistor para Leds |
|
Arduino UNO R3 | Arduino UNO | 1 | ![]() |
Você poderá utilizar uma placa Arduino UNO original ou similar |
Montagem do Circuito - Simulação
Referências
Projeto 62 - Comunicação serial com um display de 7 segmentos - Arduino
Funções de Comunicação - Serial.parseInt - Documentação de Referência do Arduino
Código do Projeto (Sketch)
Faça o dowload e abra o arquivo hub005.ino no IDE do Arduino:
Ou se preferir, copie e cole o código abaixo no IDE do Arduino:
/*******************************************************************************
*
* HB 05 - Led acende por comunicação serial
* Sugerido por Nathália Lima Celso
* http://squids.com.br/arduino
*
******************************************************************************/
int pinLed[] = {12,11,10,9,8,7,6,5,4,3}; //define o array c/ 10 elementos
void setup() {
Serial.begin(9600);
// put your setup code here, to run once:
for (byte i = 0; i<10; i++) {
pinMode(pinLed[i], OUTPUT);
}
Serial.println("Digite um numero de 0 a 9");
} // end setup
void loop() {
// put your main code here, to run repeatedly:
if (Serial.available()) {
for (byte i = 0; i<10; i++) {
digitalWrite(pinLed[i], LOW);
}
int number = Serial.parseInt();
digitalWrite(pinLed[number], HIGH);
Serial.print("Received: ");
Serial.println(number);
}
} // end loop
Obs. Ao abrir o monitor serial do IDE do Arduino visualizaremos os valores digitados:
Simulação