Tabla de contenido
Introducción a las luces tricolores RGB
El modo de color RGB incluye tres colores: rojo, verde y azul. Al controlar los cambios de los tres colores, rojo (R), verde (B) y azul (G), se superponen entre sí para producir colores elegantes. . La salida de su valor de color está controlada por PWM. Los tres colores primarios de RGB se agregan en diferentes proporciones para formar colores mezclados, lo que se denomina mezcla de colores aditiva. Además del método de mezcla de colores aditivo, también existe el método de mezcla de colores sustractivo.
control pwm
PWM, es decir, modulación de ancho de pulso, es la abreviatura de "Pulse Ancho Modulación" en inglés. Según el cambio de la carga correspondiente, la polarización de la base del transistor o de la puerta del tubo MOS se modula para cambiar el tiempo de conducción del transistor o del tubo MOS, cambiando así la salida de la fuente de alimentación regulada por conmutación. Este método puede mantener constante el voltaje de salida de la fuente de alimentación cuando cambian las condiciones de trabajo. Es una tecnología muy eficaz para utilizar la señal digital del microprocesador para controlar el circuito analógico.
Introducción a las funciones PWM
PWM se controla principalmente a través de analogWrite (). Se escribe un valor analógico en los puertos digitales 3, 5, 6, 9, 10 y 11 con "~" en la placa Arudino UNO para notificar la duración del nivel alto y bajo. La relación controla el cambio de brillo del LED o la velocidad del motor.
Por ejemplo: si desea que el brillo del LED en el Arudino UNO incorporado vuelva a la normalidad, simplemente escriba analogWrite (13,127). Un circuito permite que un puerto emita cíclicamente voltajes de 2,5 V, 3 V y 5 V. Es difícil usar solo circuitos de hardware. Este es el momento para que PWM muestre sus talentos.
Ciclo de trabajo : la relación entre la duración del nivel alto y el nivel bajo.
Conexión del circuito de hardware
clavija arduino | LED RGB (cátodo común) |
---|---|
D11 | R |
D10 | B |
D9 | GRAMO |
Tierra | Tierra |
Componentes necesarios
nombre | cantidad |
---|---|
resistencia | 3 |
luz LED RGB | 1 |
Placa de desarrollo Arduino UNO | 1 |
código de control
El código RGB de control es el siguiente
/*运行环境:Arduino 1.8.19*/
#define GREEN 9
#define BLUE 10
#define RED 11
int redValue;
int greenValue;
int blueValue;
void setup(){
pinMode(GREEN, OUTPUT);
pinMode(BLUE, OUTPUT);
digitalWrite(RED, HIGH);
digitalWrite(GREEN, LOW);
digitalWrite(BLUE, LOW);
}
void loop(){
#define delayTime 1
redValue = 255;
greenValue = 0;
blueValue = 0;
for(int i = 0; i < 255; i += 1){
redValue -= 1;
greenValue += 1;
analogWrite(RED, redValue);
analogWrite(GREEN, greenValue);
delay(delayTime);
}
redValue = 0;
greenValue = 255;
blueValue = 0;
for(int i = 0; i < 255; i += 1){
greenValue -= 1;
blueValue += 1;
analogWrite(GREEN, greenValue);
analogWrite(BLUE, blueValue);
delay(delayTime);
}
redValue = 0;
greenValue = 0;
blueValue = 255;
for(int i = 0; i < 255; i += 1){
blueValue -= 1;
redValue += 1;
analogWrite(BLUE, blueValue);
analogWrite(RED, redValue);
delay(delayTime);
}
}