#include <stdio.h>
#include "esp_system.h"
#include "freertos/FreeRTOS.h"
#include "freertos/task.h"
#include "nvs_flash.h"
#include "esp_log.h"
#include "driver/gpio.h"
const static char *TAG = "GPIO";
static void System_Init(void);
void delay(int cnt)
{
int cnt0 = 0xffffff;
while(cnt0--)
{
while(cnt--);
}
}
void app_main(){
//配置GPIO16为输出
gpio_config_t gpio = {
.intr_type = GPIO_INTR_DISABLE, //关闭中断
.mode = GPIO_MODE_OUTPUT, //输出模式
.pin_bit_mask = 1ULL << GPIO_NUM_16, //16引脚
.pull_down_en = GPIO_PULLDOWN_DISABLE, //关闭下拉
.pull_up_en = GPIO_PULLUP_ENABLE //开启上拉
};
gpio_config(&gpio);
//配置GPIO为输入
gpio_config_t gpio_two = {
.intr_type=GPIO_INTR_DISABLE,
.mode=GPIO_MODE_INPUT,
.pin_bit_mask = 1ULL << GPIO_NUM_21,
.pull_down_en = GPIO_PULLDOWN_ENABLE,
.pull_up_en =GPIO_PULLUP_DISABLE
};
gpio_config(&gpio_two);
int temp;
while (1){
//设置输出
printf("输出是高\n");
gpio_set_level(GPIO_NUM_16,1);
vTaskDelay(1000 / portTICK_PERIOD_MS);
vTaskDelay(500 / portTICK_PERIOD_MS); //延时
printf("输出是低\n");
gpio_set_level(GPIO_NUM_16,0);
vTaskDelay(1000 / portTICK_PERIOD_MS);
}
}