基于ESP32的硬件项目教程(三)ESP32的引脚说明及数字信号读写操作

引脚说明

以下图为例
在这里插入图片描述图片下方的英文部分已经有了介绍,本文将进行一次简述。
此型号开发板一共38个引脚,除去电源引脚外,可用IO引脚为34个,在图中有GPIO6~GPIO11等6个引脚标注有红色“!”,这6个引脚常作为读写闪存,一般情况下不使用。
开发板上还具有EN和BOOT两个按键,其功能如下:
1、按下EN键,ESP32重启;
2、先按下BOOT键再按下EN键,ESP32重启并进入编程模式。
所以该开发板除去6个FLASH、2个按键及UART0引脚外,实际可用引脚为23个,其为:GPIO2、4、5、12、13、14、15、16、17、18、19、21、22、23、25、26、27、32、33、34、35、36、39。

数字信号读写操作

ESP32的数字信号读写函数为:pinMode()、digitalRead()、digitalWrite()。
详解:

pinMode(pin,mode);
//功能:设置引脚工作方式;
//pin:开发板上23个引脚均可以作为数字输入引脚,除34、35、36、39外均可以作为数字输出引脚,并且34、35、36、39作为数字输入引脚时,不能设置上拉及下拉模式;
//mode:INPUT:输入模式;
// OUTPUT:输出模式;
// INPUT_PULLUP:内部上拉模式;
// INPUT_PULLDOWN:内部下拉模式;
digitalRead(pin);
//功能:读取引脚输入的数字信号;
//返回值:高电平1,低电平0;
//pin:23个引脚均可,当34、35、36、39作为输入引脚时,如果模式为上拉或者下拉,则无返回值;
digitalWrite(pin,value);
//功能:向指定引脚输出高低电平;
//pin:除34、35、36、39外的引脚;
//value:HIGH或LOW,HIGH高电平,值为1,LOW低电平,值为0.

示例

由此可进行摁键控制LED灯
代码如下:

const int key = 12;     //按键引脚GPIO12
const int led = 4;      //led引脚GPIO4
void setup(){
pinMode(key,INPUT_PULLDOWN);     //设置下拉输入
pinMode(led,OUTPUT);            //设置输出
Serial.begin(115200);           //串口波特率
}
void loop(){
int val=digitalRead(key);       //获取按键值
Serial.println(val);            //串口打印
if(val == 1)       //按键连接GPIO12与3V3;LED连接GPIO4与GND
  digitalWrite(led,HIGH);
else
  digitalWrite(led,LOW);    //开关按下LED点亮,否则熄灭
}
  • 8
    点赞
  • 50
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

方圆工作室

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值