我是靠谱客的博主 迷路金针菇,最近开发中收集的这篇文章主要介绍ESP32S3 LED 灯实验,觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

函数介绍

ESP32S3 的 ESP-IDF 编程指南可以从官网上查询:

ESP-IDF 编程指南 - ESP32 - — ESP-IDF 编程指南 latest 文档

在这个实验里,实际上就是要设置 IO 口为输出功能,然后拉高拉低就可以了,分三步:选择 IO 口、 设置为输出功能和控制高低。

(1)   选择 IO 口

选择 IO 口是通过函数 gpio_pad_select_gpio()来实现的,这个函数只有一个参数,即 IO 口的序号。 比如选择 IO32,可以这样写:

                                gpio_pad_select_gpio(32);                                 

(2)   设置为输出功能

设置 IO 口方向是通过函数 gpio_set_direction()来实现的,这个函数有二个参数,第一个参数是 IO 口的序号,第二个参数是方向(输出:GPIO_MODE_OUTPUT,输入:GPIO_MODE_INPUT),比如设置 IO32 为输出功能,可以这样写:

                                gpio_set_direction(32,GPIO_MODE_OUTPUT);                  

(3)   控制高低

控制 IO 口的电平是通过函数 gpio_set_level 来实现,这个函数有二个参数,第一个参数是 IO 口的 序号,第二个参数是高或者低(也就是 0 和 1),比如设置 IO32 输出高电平,可以这样写:

                                gpio_set_level(32,1);                                     

(4)   任务睡眠函数

为了实现 LED 闪烁功能,我们在这里引入了任务睡眠函数,定义如下:

                       void vTaskDelay(portTickType xTicksToDelay); 

该函数目的在于告诉操作系统,现在无任务在做,请告诉 kernel 将时间分配给其他任务,并在某 个时间点将该任务唤醒。这个时间点就是函数的入参,一般都是以 tick 为单位。

vTaskDelay(1)约等于 10 毫秒,如果要延时 1 秒可以写 vTaskDelay(100)。

 实验结果

按下开发板的复位键,观察板子上的灯变化。

禾木科技自营店 (yuewei.online)

最后

以上就是迷路金针菇为你收集整理的ESP32S3 LED 灯实验的全部内容,希望文章能够帮你解决ESP32S3 LED 灯实验所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(49)

评论列表共有 0 条评论

立即
投稿
返回
顶部