# [Programa] LED a piscar #### Objetivo: Utilizar o *ESP32-C6-DevKitM-1* para alimentar um LED e obter um piscar controlado de forma programática. #### Lista de material: - *ESP32-C6-DevKitM-1* - Breadboard - Resistência de 330 ohm (Ω) - Díodo emissor de luz (LED) vermelho - Cabo USB C - Fios de ligação [![aaa.png](https://i.imgur.com/X2wHncm.jpeg)](https://i.imgur.com/X2wHncm.jpeg) #### 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 \[3\]. ##### ESP32-C6-DevKitM-1 Apesar de se aconselhar a consulta da página do fabricante sobre o kit *ESP32-C6-DevKitM-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. ##### [![esp32-devkitc-functional-overview.jpg](https://docs.espressif.com/projects/esp-dev-kits/en/latest/_images/esp32-c6-devkitm-1-v1-annotated-photo.png)](https://docs.espressif.com/projects/esp-dev-kits/en/latest/_images/esp32-c6-devkitm-1-v1-annotated-photo.png) ##### [![esp32-devkitC-v4-pinout.png](https://docs.espressif.com/projects/esp-dev-kits/en/latest/_images/esp32-c6-devkitm-1-pin-layout.png)](https://docs.espressif.com/projects/esp-dev-kits/en/latest/_images/esp32-c6-devkitm-1-pin-layout.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 \[1\]. 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. [![breadboard.png](https://kb.deec.uc.pt/uploads/images/gallery/2023-08/scaled-1680-/breadboard.png)](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 \[4\]. 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 \[2\], tipicamente usados para indicar os valores associados, neste caso, as resistências. [![resistor_b.png](https://kb.deec.uc.pt/uploads/images/gallery/2023-08/scaled-1680-/resistor-b.png)](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 \[3\]. 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. [![led_cat_an.png](https://kb.deec.uc.pt/uploads/images/gallery/2023-08/scaled-1680-/led-cat-an.png)](https://kb.deec.uc.pt/uploads/images/gallery/2023-08/led-cat-an.png) #### Procedimento: As saídas digitais do *ESP32-C6-DevKitM-1* 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 5 e GND do ESP32 como referência deve considerar-se a seguinte montagem:
[![pisca1.png](https://i.imgur.com/yTAKcas.jpeg)](https://i.imgur.com/yTAKcas.jpeg)[![pisca2aa.png](https://i.imgur.com/14Xnzpm.png)](https://i.imgur.com/14Xnzpm.png)
##### Instruções: - Montar o circuito representado anteriormente - Ligar a placa ESP32 ao computador por via de cabo USB C - Abrir o IDE Arduino - Selecionar o dispositivo ESP32 adequado ( *ESP32C6 Dev Module* ) - 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 5 como saída. pinMode(5, OUTPUT); } // a função loop é executada sucessivamente, uma e outra vez, e por aí em diante void loop() { digitalWrite(5, HIGH); // liga o LED delay(1000); // espera por um segundo digitalWrite(5, LOW); // desliga o LED delay(1000); // espera por um segundo } ``` - Compilar e carregar o código para a placa ESP32 - Verificar o resultado
[![blink](https://s11.gifyu.com/images/SoCie.gif)](https://s11.gifyu.com/images/SoCie.gif)
#### Referências \[1\] Wikipedia. Breadboard. url: [https://en.wikipedia.org/wiki/Breadboard](https://en.wikipedia.org/wiki/Breadboard) (acedido em 18/08/2023). \[2\] 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). \[3\] Wikipedia. LED circuit. url: [https://en.wikipedia.org/wiki/LED\_circuit](https://en.wikipedia.org/wiki/LED_circuit) (acedido em 18/08/2023). \[4\] Wikipedia. Resistor. url: [https://en.wikipedia.org/wiki/Resistor](https://en.wikipedia.org/wiki/Resistor) (acedido em 18/08/2023).