# [Programa] LED a piscar
#### Objetivo:
Utilizar o *ESP32-WROOM-32E DevKitC v4* \[1\] para alimentar um LED e obter um piscar controlado de forma programática.
#### Lista de material:
- *ESP32-WROOM-32E DevKitC v4*
- Breadboards
- Resistência de 330 ohm (Ω)
- Díodo emissor de luz (LED) vermelho
- Fios de ligação
- Cabo USB micro
[](https://kb.deec.uc.pt/uploads/images/gallery/2023-08/aaa.png)
#### Contextualização:
Em eletrónica, um circuito LED é um circuito usado para alimentar um díodo emissor de luz (LED). O circuito deve fornecer corrente suficiente para acender o LED e evitar danos ao mesmo. O circuito mais simples para acionar um LED é através de uma resistência em série \[5\].
##### ESP32-WROOM-32E DevKitC v4
Apesar de se aconselhar a consulta da página do fabricante sobre o kit *ESP32-WROOM-32E DevKitC v4* \[1\] para mais detalhe, disponibilizam-se de seguida duas figuras com os componentes principais do kit bem como o esquema de terminais para referência.
##### [](https://kb.deec.uc.pt/uploads/images/gallery/2023-08/esp32-devkitc-functional-overview.jpg)
##### [](https://kb.deec.uc.pt/uploads/images/gallery/2023-08/esp32-devkitc-v4-pinout.png)
##### Breadboard
Uma breadboard ou placa de ensaio ou matriz de contactos é uma placa com furos e conexões condutoras tipicamente utilizada para a montagem de protótipos e projetos em estado inicial \[3\].
Deve ser tido em consideração que internamente a breadboard também é composta por contactos metálicos, tipicamente organizados como se ilustra na figura em baixo. As linhas a azul e verde simbolizam ligações metálicas internas, ou seja, e por exemplo, tal como esquematizado, deve considerar-se que o orifício a1 está ligado internamente aos orifícios b1, c1, d1 e e1.
[](https://kb.deec.uc.pt/uploads/images/gallery/2023-08/breadboard.png)
##### Resistência
Uma resistência é um componente elétrico passivo de dois terminais que implementa resistência elétrica como um elemento de circuito \[6\]. Ainda que não seja do âmbito do presente documento detalhar este conceito, disponibiliza-se de seguida o esquema de quatro bandas e tabela de referência \[4\], tipicamente usados para indicar os valores associados, neste caso, as resistências.
[](https://kb.deec.uc.pt/uploads/images/gallery/2023-08/resistor-b.png)
##### Díodo emissor de luz (LED)
Um díodo emissor de luz (LED) é um dispositivo semicondutor que emite luz quando uma corrente flui através deste \[5\]. Destacar da figura seguinte a distinção entre ânodo e cátodo, tipicamente materializada por um comprimento diferente dos terminais de ligação (terminal do ânodo mais longo que o do cátodo), e um chanfro (ou superfície plana) no lado do cátodo.
[](https://kb.deec.uc.pt/uploads/images/gallery/2023-08/led-cat-an.png)
#### Procedimento:
As saídas digitais do *ESP32-WROOM-32E DevKitC v4* (ESP32) podem ser programas para assumir determinados valores de tensão como 0V (GND) ou 3.3V (VCC). Fazendo uso desta possibilidade, e ligando o LED ao ESP32, deverá então ser possível obter um piscar do LED controlado de forma programática.
Escolhendo os terminais 17 e GND do ESP32 como referência deve considerar-se o seguinte circuito LED:
[](https://kb.deec.uc.pt/uploads/images/gallery/2023-08/4HNpisca1.png) | [](https://kb.deec.uc.pt/uploads/images/gallery/2023-08/BPgpisca2aa.png) |
##### Instruções:
(para uma primeira utilização do ESP32, sugere-se o tutorial *Primeiro Programa* \[2\])
- Montar o circuito esquematizado anteriormente (ver Secção **Montagem exemplificativa** , para mais detalhe)
- Ligar a placa ESP32 ao computador por via de cabo USB micro
- Abrir o IDE Arduino
- Selecionar o dispositivo ESP32 adequado
- Copiar o seguinte código
```C
/*
Pisca-pisca
Liga o LED por um segundo, desliga por um segundo e assim sucessivamente.
*/
// a função setup é executada pontualmente quando o botão reset é premido ou a placa é alimentada
void setup() {
// inicializa o pino digital 17 como saída.
pinMode(17, OUTPUT);
}
// a função loop é executada sucessivamente, uma e outra vez, e por aí em diante
void loop() {
digitalWrite(17, HIGH); // liga o LED
delay(1000); // espera por um segundo
digitalWrite(17, LOW); // desliga o LED
delay(1000); // espera por um segundo
}
```
- Compilar e carregar o código para a placa ESP32
[](https://kb.deec.uc.pt/uploads/images/gallery/2023-08/piscapisca.png)
- Verificar o resultado
[](https://kb.deec.uc.pt/uploads/images/gallery/2023-08/ii.png)
| [](https://kb.deec.uc.pt/uploads/images/gallery/2023-08/jj.png) |
#### Montagem exemplificativa:
[](https://kb.deec.uc.pt/uploads/images/gallery/2023-08/mY3asdasd.png)
[](https://kb.deec.uc.pt/uploads/images/gallery/2023-08/a1.png)
[](https://kb.deec.uc.pt/uploads/images/gallery/2023-08/b1.png) | [](https://kb.deec.uc.pt/uploads/images/gallery/2023-08/b2.png) |
[](https://kb.deec.uc.pt/uploads/images/gallery/2023-08/c1.png) | [](https://kb.deec.uc.pt/uploads/images/gallery/2023-08/c2.png) |
[](https://kb.deec.uc.pt/uploads/images/gallery/2023-08/d1.png)
| [](https://kb.deec.uc.pt/uploads/images/gallery/2023-08/d2.png)
| [](https://kb.deec.uc.pt/uploads/images/gallery/2023-08/d3.png) |
#### Referências
\[1\] Ltd. Espressif Systems Co. ESP32-DevKitC V4 Getting Started Guide. url: [https://docs.espressif.com/projects/esp-idf/en/latest/esp32/hw-reference/esp32/get-started-devkitc.html](https://docs.espressif.com/projects/esp-idf/en/latest/esp32/hw-reference/esp32/get-started-devkitc.html) (acedido em 18/08/2023).
\[2\] Paulo Menezes. Artigos de Suporte - DEEC - Kit Eletrónica - Primeiro Programa. url: [https://kb.deec.uc.pt/books/deec/page/primeiro-programa](https://kb.deec.uc.pt/books/deec/page/primeiro-programa) (acedido em17/08/2023).
\[3\] Wikipedia. Breadboard. url: [https://en.wikipedia.org/wiki/Breadboard](https://en.wikipedia.org/wiki/Breadboard) (acedido em 18/08/2023).
\[4\] Wikipedia. Electronic color code. url: [https://en.wikipedia.org/wiki/Electronic\_color\_code](https://en.wikipedia.org/wiki/Electronic_color_code) (acedido em 18/08/2023).
\[5\] Wikipedia. LED circuit. url: [https://en.wikipedia.org/wiki/LED\_circuit](https://en.wikipedia.org/wiki/LED_circuit) (acedido em 18/08/2023).
\[6\] Wikipedia. Resistor. url: [https://en.wikipedia.org/wiki/Resistor](https://en.wikipedia.org/wiki/Resistor) (acedido em 18/08/2023).