/*
* LAB Name: Raspberry Pi Pico W C/C++ SDK (Project Blink Alterado RGB)
* Author: Ricardo Ferraro based on Khaled Magdy template (www.DeepBlueMbedded.com)
*/
#include <stdio.h>
#include "pico/stdlib.h"
#include "hardware/gpio.h"
// Define os pinos GPIO para as cores do LED RGB
#define LEDR 3 // vermelho
#define LEDG 4 // verde
#define LEDB 5 // azul
// Controla os estados dos LEDs RGB (liga ou desliga cada cor).
void led_rgb_put (bool r, bool g, bool b) {
gpio_put(LEDR, r); // Define o estado do LED vermelho
gpio_put(LEDG, g); // Define o estado do LED verde
gpio_put(LEDB, b); // Define o estado do LED azul
}
int main ()
{
stdio_init_all(); // Inicializa os pinos GPIO
gpio_init(LEDR); // Inicializa o pino
gpio_init(LEDG); // Inicializa o pino
gpio_init(LEDB); // Inicializa o pino
gpio_set_dir(LEDR, true); // Configura o pino GPIO Azul como saida
gpio_set_dir(LEDG, true); // Configura o pino GPIO Azul como saida
gpio_set_dir(LEDB, true); // Configura o pino GPIO Azul como saida
while (true) {
// Liga o LED vermelho por 500 ms
led_rgb_put(true,false,false);
sleep_ms(500); // espera 500 ms
// Liga o LED verde por 500 ms
led_rgb_put(false,true,false);
sleep_ms(500); // espera 500 ms
// Liga o LED azul por 500 ms
led_rgb_put(false,false,true);
sleep_ms(500); // espera 500 ms
// Liga o LED "branco" = todas as cores, por 500 ms
led_rgb_put(true,true,true);
sleep_ms(500); // espera 500 ms
}
return 0;
}