一、开发板
ESP32-S3-DevKitC-1
管脚布局
由于这个程序控制比较简单,就不赘述了,直接看程序。
二、程序
#include "freertos/FreeRTOS.h"
#include "freertos/task.h"
#include "driver/ledc.h"
#define LED_PIN 6
#define LED_PIN_SEL (1ULL<<LED_PIN)
/**
* @brief 配置引脚功能
*/
void bsp_led_init(void)
{
gpio_config_t io_conf = {}; // 初始化结构体
io_conf.intr_type = GPIO_INTR_DISABLE; // 禁用中断
io_conf.mode = GPIO_MODE_OUTPUT; // 设置为输出模式
io_conf.pin_bit_mask = LED_PIN_SEL; // 要设置的引脚的位掩码
io_conf.pull_down_en = 0; // 禁用下拉模式
io_conf.pull_up_en = 0; // 禁用下拉模式
gpio_config(&io_conf); // 配置GPIO结构体参数
}
/**
* @brief ESP32 入口函数
*/
void app_main(void)
{
uint32_t count = 0;
bsp_led_init();
while(1)
{
if(count % 2 == 0)
{
gpio_set_level(LED_PIN, 0);
}
else
{
gpio_set_level(LED_PIN, 1);
}
count++;
printf("count: %d\n", count);
vTaskDelay(20000 / portTICK_PERIOD_MS );
}
}