Reduza o brilho de um LED com PWM
Parte da seção Saídas do Journey de Arduino da Coddy. Lição 1 de 24.
digitalWrite() conhece dois níveis: ligado ou desligado. Para fazer um LED brilhar fracamente, a placa liga e desliga o pino centenas de vezes por segundo. Seus olhos não conseguem acompanhar a oscilação e percebem a média: um pino que fica ligado durante um quarto do tempo parece ter um quarto do brilho.
Esse truque é chamado de PWM, modulação por largura de pulso. A proporção do tempo em que o pino fica ligado é seu ciclo de trabalho.
analogWrite(pin, value) define isso com um número de 0 a 255:
analogWrite(9, 0); // sempre desligado
analogWrite(9, 64); // ligado durante um quarto do tempo
analogWrite(9, 127); // ligado durante cerca de metade do tempo
analogWrite(9, 255); // sempre ligadoDepois que você escreve um valor, a placa mantém o pino pulsando por conta própria, mesmo durante delay(), até que você escreva um novo valor. analogWrite() transforma o pino em uma saída por conta própria; pinMode(9, OUTPUT) em setup() ainda indica para que serve o pino.
Desafio
FácilO LED vermelho está no pino 9. Faça-o brilhar com um quarto do brilho máximo:
- um quarto de 255 é aproximadamente 64
- escreva esse valor com
analogWrite()
Pressione Run para observá-lo e, em seguida, Check.
Experimente você mesmo
const int ledPin = 9;
void setup() {
pinMode(ledPin, OUTPUT);
// ajuste o brilho do LED para um quarto aqui
}
void loop() {
// nada a repetir: o pino continua pulsando por conta própria
}
Esta lição inclui um quiz rápido. Comece a lição para respondê-lo e acompanhar seu progresso.
Todas as lições de Saídas
1Brilho
Reduza o brilho de um LED com PWMPinos PWM marcados com ~Aumente gradualmente o brilho de um LEDAumente e reduza o brilho gradualmenteDimmer com potenciômetroPratique por conta própria: Playground de Arduino