3.5. A classe LED¶
A peça de hardware mais simples da câmera são seus LEDs embarcados. A maioria das placas tem um LED RGB (vermelho, verde, azul). machine.LED é a classe dedicada para controlá-los; sem número de pino, sem resistor, sem circuito – a busca, a limitação de corrente e a fiação são tratadas pela própria câmera.
import time
from machine import LED
red = LED("LED_RED")
red.on()
time.sleep(5)
red.off()
Um “hello world” completo de hardware: importe a classe, construa uma instância com o nome da cor, ligue-a, espere, desligue-a. O LED fica visivelmente aceso durante a pausa de cinco segundos.
O red.off() final é simétrico ao red.on() inicial e torna a limpeza explícita. Os LEDs embarcados também são reiniciados automaticamente quando o script termina. À medida que os scripts crescem, depender da limpeza no encerramento do script fica frágil; fazer cada .on() ter seu .off() explícito é o hábito que mantém scripts longos previsíveis.
3.5.1. Construtor e métodos¶
O construtor recebe um de "LED_RED", "LED_GREEN" ou "LED_BLUE". Cada instância expõe quatro métodos:
on()– liga-o.off()– desliga-o.toggle()– inverte o estado atual.value()– sem argumentos, retorna o estado atual (0ou1); com um argumento, define-o.
Um pisca-pisca, usando o padrão de laço principal:
import time
from machine import LED
led = LED("LED_RED")
while True:
led.toggle()
time.sleep_ms(500)
Use os LEDs embarcados para fins de indicação e status: um heartbeat que pisca a cada segundo, um flash vermelho em caso de erro, um pulso verde quando uma leitura de sensor está dentro da faixa.