上海网站平台建设,网站后台添加东西不能粘贴,做网站开发考什么研,wordpress大气摄影主题摘要#xff1a;本文更深入的讲述了GPIO的相关知识#xff0c;并完成了导线连接工作#xff0c;为下一步的软件开发做好了准备。 通用输入输出端口#xff08;GPIO#xff1a;General Purpose Input/Output Port#xff09;#xff0c;在前面已经有了初步的介绍#xf…摘要本文更深入的讲述了GPIO的相关知识并完成了导线连接工作为下一步的软件开发做好了准备。 通用输入输出端口GPIOGeneral Purpose Input/Output Port在前面已经有了初步的介绍本篇将进行更详细的阐述希望大家能够了解GPIO端口是如何工作的。
通用输入输出端口的基本功能是当GPIO工作在输入状态时可以读取外部设备电平信号的高低从而获得外部设备的工作状态当GPIO工作在输出状态时可以对外输出高低电平从而实现对外部设备的控制。GPIO接口作为一种被广泛应用于嵌入式系统的接口技术。通常有以下一些特点。
1.可配置性GPIO可以配置为输入或输出模式以适应不同的应用需求。
2.可编程性GPIO可以通过特定的编程语言(如C语言、Python等进行编程实现对外部设备的控制和数据处理。
3.高可靠性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/1GPIO6-11和GPIO16-17通常连接到模组内集成的SPI flash和PSRAM因此不能用于其他用途。JTAGGPIO12-15通常用于在线调试。GPIGPIO34-39只能设置为输入模式不具备软件使能的上拉或下拉功能。TXD RXDGPIO1和GPIO3通常用于烧录和调试。
接下来我们继续完成之前未完成的接线工作然后再利用程序来控制小车的电动机运动起来。
我们首先要接的线就是从L298N模块引出的GND线将其插入到ESP32扩展板上的GND排针上。因为在调试阶段我们的L298N模块和电机使用的是锂电池供电而ESP32开发板则直接使用USB供电只有将这两种供电的地连接起来我们ESP32的GPIO口输出的信号才有回路才能够起到控制的作用。所以这根导线千万不要忘记接否则你的电动机是不会运动起来的。
然后将IN1~IN8依次插入到ESP32模组可用GPIO对应的排针上。接好后的样子如下图所示。 我具体的连接方法如下表所示 轮子 L298NOUT 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
后边的开发都是依据这个表的配置来进行的。配置不一致的请在开发中做适当的调整。