#include <stdio.h>
#include "pico/stdlib.h"
//#include "pico/cyw43_arch.h"
#include "hardware/gpio.h"
void gpio_callback(uint gpio, uint32_t events){
printf("botao no pino %d ", gpio);
if(events & GPIO_IRQ_EDGE_RISE){
printf("disparou o evento na borda de subida\n");
}else if(events & GPIO_IRQ_EDGE_FALL){
printf("disparou o evento na borda de descida\n");
}
}
int main() {
// cria uma constante com o pino padrão do led
const uint LED_PIN = PICO_DEFAULT_LED_PIN;
stdio_init_all();
// cyw43_arch_init();
//Inicia o Pino de GPIO e o configura como saída
gpio_init(LED_PIN);
gpio_set_dir(LED_PIN, GPIO_OUT);
for(int i=0; i<4;i++)
{
gpio_init(i);
gpio_set_dir(i, GPIO_IN);
gpio_set_pulls(i,true,false);
gpio_set_irq_enable_with_callback(i, GPIO_IRQ_EDGE_RISE | GPIO_IRQ_EDGE_ALL, true, @gpio_callback)
}
// Loop infinito para o funcionamento do pisca pisca
while (true) {
gpio_put(LED_PIN, 1);
sleep_ms(250);
gpio_put(LED_PIN, 0);
sleep_ms(250);
}
}