#include <stdio.h>
#include <inttypes.h>
#include "sdkconfig.h"
#include "freertos/FreeRTOS.h"
#include "freertos/task.h"
#include "esp_chip_info.h"
#include "esp_flash.h"
#include "esp_system.h"
#include "driver/gpio.h"
volatile int valor=0;
void INTERRUPCAO (void *)
{
valor++;
}
void app_main(void)
{
gpio_num_t gpio_num = GPIO_NUM_0;
/* Set the GPIO as a input */
gpio_install_isr_service(1);
gpio_set_direction(gpio_num, GPIO_MODE_INPUT);
/* Set the GPIO pull */
gpio_set_pull_mode(gpio_num, GPIO_PULLUP_ONLY);
gpio_set_intr_type(gpio_num, GPIO_INTR_NEGEDGE);
gpio_isr_handler_add(gpio_num, INTERRUPCAO, (void*) gpio_num);
int valor_old;
valor_old = valor;
while (1)
{
if (valor != valor_old)
{
valor_old = valor;
printf("Oi mundo %d\n",valor);
}
}
}