我是靠谱客的博主 潇洒纸鹤,最近开发中收集的这篇文章主要介绍ESP32学习-GPIO的使用与配置1 参考资料2 添加头文件3 GPIO初始化的两种方法4 示例教程,觉得挺不错的,现在分享给大家,希望可以做个参考。
概述
1 参考资料
官方API手册
官方源码
2 添加头文件
#include "drive/gpio.h"
3 GPIO初始化的两种方法
3.1 单一函数设置方案
直接通过函数设置GPIO的模式:
// 设置gpio3为输出模式:
gpio_set_direction(GPIO_NUM_3, GPIO_MODE_OUTPUT);
// 设置gpio3输出低电平:
gpio_set_level(GPIO_NUM_3, 0);
// 设置gpio9为输入模式:
gpio_set_direction(GPIO_NUM_9,GPIO_MODE_INPUT);
// 获取gpio9的io状态:
ret = gpio_get_level(GPIO_NUM_9);
上面就是单一函数下gpio最简单的操作,其他单一设置函数还有:
// 设置gpio的上下拉模式:
gpio_set_pull_mode(gpio_num_t gpio_num, gpio_pull_mode_t pull);
// 使能上拉:
gpio_pullup_en(gpio_num_t gpio_num);
// 失能上拉:
gpio_pullup_dis(gpio_num_t gpio_num);
3.2 结构体形式初始化GPIO
// 定义一个gpio结构体变量:
#define LED_GPIO (1ULL << 3)
gpio_config_t led_conf;
led_conf.mode = GPIO_MODE_OUTPUT; // 配置gpio的模式
led_conf.intr_type = GPIO_PIN_INTR_DISABLE; // 失能中断
led_conf.pin_bit_mask = LED_GPIO; // 配置GPIO_IN寄存器,选择初始化的GPIO3口为led控制
led_conf.pull_down_en = 0; // 下拉失能
led_conf.pull_up_en = 0; // 上拉失能
gpio_config(&led_conf); // 配置gpio参数,并使能
// gpio的使用和单一模式一致
// 设置gpio3输出高电平:
gpio_set_level(LED_GPIO, 1);
4 示例教程
最后
以上就是潇洒纸鹤为你收集整理的ESP32学习-GPIO的使用与配置1 参考资料2 添加头文件3 GPIO初始化的两种方法4 示例教程的全部内容,希望文章能够帮你解决ESP32学习-GPIO的使用与配置1 参考资料2 添加头文件3 GPIO初始化的两种方法4 示例教程所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
发表评论 取消回复