ESP32-一个简单的LED闪烁实验
原创不易,转载需注明来源:https://blog.****.net/qq_32955031
经过上篇文章的学习,我初步了解下这款片子的程序结构预计GPIO的使用,翻阅GPIO篇的文档发现还有个别API是没有使用,查阅了一些Github后,参考一些源码做了一个不同于上篇文章的GPIO - LED闪烁实验,内容、代码都不多,详细内容不多解释了,有问题可以联系本人QQ。下面放出源码,有问题的部分望包含,也希望能评论提醒我,大家一起学习啊。
/**
* 这是一个LED闪烁的实验
* 实验硬件连接方式: GPIO18 ---> LED
* 本人联系方式QQ:1737410733
* 本人****博客:https://blog.****.net/qq_32955031
*
*/
#include <stdio.h>
#include "freertos/FreeRTOS.h"
#include "freertos/task.h"
#include "driver/gpio.h"
#include "sdkconfig.h"
//定义输出管脚
#define LED 18
void LED_Task(void *pvParameter)
{
//选择芯片管脚
gpio_pad_select_gpio(LED);
//设置该管脚为输出模式
gpio_set_direction(LED, GPIO_MODE_OUTPUT);
while(1) {
//电平为低
gpio_set_level(LED, 0);
//延迟1S
vTaskDelay(1000 / portTICK_PERIOD_MS);
//电平为高
gpio_set_level(LED, 1);
//延迟1S
vTaskDelay(1000 / portTICK_PERIOD_MS);
}
}
//主函数
void app_main()
{
//新建一个任务
xTaskCreate(&LED_Task, "LED_Task", configMINIMAL_STACK_SIZE, NULL, 5, NULL);
}
原理图:
实验效果图: