通用输入输出端口的基本功能是:当GPIO事情在输入状态时,可以读取外部设备电平旗子暗记的高低,从而得到外部设备的事情状态,当GPIO事情在输出状态时,可以对外输出高低电平,从而实现对外部设备的掌握。
GPIO接口作为一种被广泛运用于嵌入式系统的接口技能。
常日有以下一些特点。

1.可配置性:GPIO可以配置为输入或输出模式,以适应不同的运用需求。

2.可编程性:GPIO可以通过特定的编程措辞(如C措辞、Python等)进行编程,实现对外部设备的掌握和数据处理。

3.高可靠性:GPIO具有较低的故障率和较高的抗滋扰能力,适用于各种恶劣环境下的运用。

物联网人工智能小车基于ESP32的GPIO控制智能小车一

4.易于扩展:GPIO可以根据须要扩展更多的输入输出通道,知足不同规模的系统需求。

总的来说,GPIO具有通用性、数字旗子暗记、多功能、可编程性等特点,在嵌入式系统中发挥着重要浸染。

对付嵌入式系统来说,每个芯片引脚都非常的宝贵,因此大部分的引脚都采取了端口复用技能,也便是除了上面所列举的基本的GPIO功能外,还可以用作其他功能,这在前面的引脚功能图中已经看到过了。
ESP32的多路复用器,使设计职员可以灵巧地变动芯片内部的GPIO引脚连接并将其路由到任何旗子暗记,这样在硬件设计、布线上会方便的多。

ESP32为每个GPIO端供词给了多种事情模式,以是在利用GPIO端口之前,必须要对端口进行必要的配置。
须要配置的参数包括一下几个:

GPIO的事情模式设置是否须要上拉设置是否须要下拉设置GPIO中断的类型

在这里我们重点的关注一下GPIO的事情模式,其他几个参数暂时不做讲解,后边碰着的时候再详细的解释。
GPIO的事情模式包括以下几个:

GPIO_MODE_INPUT:输入模式GPIO_MODE_OUTPUT:输出模式GPIO_MODE_OUTPUT_OD:开漏输出模式(如果外部或者内部不上拉电阻则无法输出高电平)GPIO_MODE_INPUT_OUTPUT_OD:开漏输入输出模式GPIO_MODE_INPUT_OUTPUT:输入输出模式

我们用得最多的是输入模式和输出模式,这两种模式是对标准的数字旗子暗记进行读取和输出,输入用来获取外部设备的状态旗子暗记,输出则将自己的引脚设置成指定状态,是用来“关照”外部设备。
输入模式可以用来检测按键是否按下,而输出模式则可以掌握LED是否点亮,我们本日掌握电动机是否旋转,以及旋转的方向,便是利用了GPIO最基本的输出模式。

在理解了GPIO的事情事理和事情模式之后,还要再次的强调那些分外的引脚,一定要确保安全再用,只管即便不要利用:

Strapping管脚:GPIO0、GPIO2、GPIO5、GPIO12(MTDI)和GPIO15 (MTDO)是Strapping管脚。
SPI0/1:GPIO6-11和GPIO16-17常日连接到模组内集成的SPI flash和PSRAM,因此不能用于其他用场。
JTAG:GPIO12-15常日用于在线调试。
GPI:GPIO34-39只能设置为输入模式,不具备软件使能的上拉或下拉功能。
TXD & RXD:GPIO1和GPIO3常日用于烧录和调试。

接下来我们连续完成之前未完成的接线事情,然后再利用程序来掌握小车的电动机运动起来。

我们首先要接的线便是从L298N模块引出的GND线,将其插入到ESP32扩展板上的GND排针上。
由于在调试阶段,我们的L298N模块和电机利用的是锂电池供电,而ESP32开拓板则直策应用USB供电,只有将这两种供电的地连接起来,我们ESP32的GPIO口输出的旗子暗记才有回路,才能够起到掌握的浸染。
以是,这根导线千万不要忘却接,否则你的电动机是不会运动起来的。

然后,将IN1~IN8依次插入到ESP32模组可用GPIO对应的排针上。
接好后的样子如下图所示。

我详细的连接方法如下表所示:

轮子

L298N(OUT)

L298N端口(IN)

ESP32引脚

左前轮

OUT3

IN3

P26

OUT4

IN4

P27

左后轮

OUT1

IN1

P32

OUT2

IN2

P33

右前轮

OUT5

IN5

P25

OUT6

IN6

P23

右后轮

OUT7

IN7

P22

OUT8

IN8

P21

后边的开拓都是依据这个表的配置来进行的。
配置不一致的请在开拓中做适当的调度。

完全代码可进群免费领取!


嵌入式物联网的学习之路非常漫长,不少人由于学习路线不对或者学习内容不足专业而错失落高薪offer。
不过别担心,我为大家整理了一份150多G的学习资源,基本上涵盖了嵌入式物联网学习的所有内容。
点击下方链接,0元领取学习资源,让你的学习之路更加顺畅!
记得点赞、关注、收藏、转发哦!

点击这里找小助理0元领取:扫码进群领资料