0


手把手教你学ESP32开发-第一篇:ArduinoIDE+ESP32搭环境

前言废话,着急的人不用看:这是我的学习笔记,欢迎交流。现在的物联网行业比较流行使用乐鑫的芯片加上ESP32开发通信模组,同学们学点这个还是很有前景的。学学这个ESP32+乐鑫芯片+WIFI/BT双模的模组的开发

安装配置主要参考网站(Installing — Arduino-ESP32 2.0.0 documentation (espressif.com))

以上链接说了你得有Python3.8以上的环境:The Arduino ESP32 v1.0.6 still works on WIN32. You might want to install python 3.8.x because it is the latest release supported by Windows 7.

大家自行安装我就不说了。

第一步,下载ArduinoIDE和Git

ArduinoIDE是个编辑器,能编译和烧录代码到你的ESP32中。下载地址(Software | Arduino)

这没啥可说的,Windows电脑选这个就行了。ArduinoIDE还可以玩Arduino UNO/NANO/MEGA之类的开发板,加上一些传感器和小电机就可以搞个机器人了。

Git是个版本控制工具,是世界上最好用的分布式版本控制系统。Git相当于给ArduinoIDE编辑器开“Word修订”功能。Git工具在编程中被用到,通常是多个人同时协作一个项目,有可能出现两个人同时修改一个文件,这时,后提交的人会遇到冲突,需要解决冲突;git能够记录每个人的提交修改等形成日志,可以根据提交记录进行回滚;并且git支持分布式部署。学生可能不熟悉这个,到了企业中你们合伙开发个XX平台就熟悉了。

网上关于Git的教程有的是,这里不过多说明,只讲安装。有兴趣进一步了解的看这个链接((28条消息) 超详细的Git使用教程(图文)_kinggm的博客-CSDN博客_git使用教程)这个教程和本文无关。

一般人的电脑都是64位的吧,你用“电脑”右键“属性”查一下就知道是多少位的了。我们选择安装那个标准版的。一路默认,一路Next安装就行了,这里我就不多说了。你的Git安装好了后,在你桌面上空白处点击右键,就会发现有两个选项“Git gui here”和“Git bash here”那就说明你安装好了。

第二步,在ArduinoIDE编辑器路径下,新建个Git项目

在你电脑的这个目录下新建个Git库。

如果你的用户名是中文的,参考这个链接((28条消息) 如何改电脑用户名WIN10/WIN11_Smile_h_ahaha的博客-CSDN博客)来新建个管理员用户,如果是英文的用户名,那咱们继续。

C:/Users/你的用户名/Documents/Arduino

在上图所示的空白处右键,点击“Git gui here" ,选择”Clone Existing Repository“如下图所示:

然后在Source Location中填入:

https://github.com/espressif/arduino-esp32.git

在Target Directory中填入:

C:/Users/你的用户名/Documents/Arduino/hardware/espressif/esp32

就像下图这样:然后点击clone

Oh,shit 如果你出现如下”请求超时“的问题,说明咱们得翻墙,国内登不了GitHub

这里需要自备梯子,你成功爬梯后,再试试上面的。

发现桌面出现下图所示窗口,说明你安装成功:

自动弹出如下窗口

然后打开以下文件夹:

C:\Users\你的用户名\Documents\Arduino\hardware\espressif\esp32

/***********以下是补充不要操作/

开发过程中,经常会有一些通用的部分希望抽取出来做成一个公共库来提供给别的工程来使用,而公共代码库的版本管理是个麻烦的事情。git的git submodule命令可用来添加仓库地址,解决这个问题。

仓库地址是指子模块仓库地址,路径指将子模块放置在当前工程下的路径 注意:路径不能以 / 结尾(会造成修改不生效)、不能是现有工程已有的目录(不能顺利 Clone)

命令执行完成,会在当前工程根路径下生成一个名为“.gitmodules”的文件,其中记录了子模块的信息。添加完成以后,再将子模块所在的文件夹添加到工程中即可。

当使用git clone下来的工程中带有submodule时,初始的时候,submodule的内容并不会自动下载下来的,此时,只需执行如下命令:git submodule update --init --recursive

即可将子模块内容下载下来后工程才不会缺少相应的文件。

/****************************补充说明完毕继续操作/

在C:\Users\你的用户名\Documents\Arduino\hardware\espressif\esp32空白处点击右键选择“Git bash here”。出现如下窗口:

在命令行中输入:从上到下依次输入以下命令

git submodule update --init --recursive
git pull       #这是用来把大家的库合并的命令,详见https://www.jb51.net/article/193770.htm
git submodule update

/**************************上面命令的进一步解释/

你还可以把上面代码第二行的“git pull" 替换为”git fetch",fetch是用来同步库的。我理解pull和fetch的区别是,如果你队友坑,写的代码不对,你更新库的时候若用pull相当于你的也不对了,若用fetch,那不影响你的代码。感兴趣可进一步求知git命令的真正含义。 (git pull 与 git fetch 的区别_magic_kid_2010的专栏-CSDN博客)

/解释完了继续吧****/

然后到以下路径双击打开“get.exe",当你看到下面这一堆都出来的时候,说明上面的命令成功了。

然后就打开如下所示:

当上面这个窗口消失的时候说明,下载好了。

第三步,给ArduinoIDE编辑器装个ESP32的库和搭建开发环境

(全程会卡,需要自备梯子(加速器/翻墙/VPN),建议使用自己的5G手机开热点,不要用学校或公司的网)

打开你的ArduinoIDE>file>Preferences,把以下URLs链接复制到最下面圈中的位置

https://raw.githubusercontent.com/espressif/arduino-esp32/gh-pages/package_esp32_index.json

照着上图勾选,然后继续点OK,继续打开Tools>Boards Manager

如果你在ArduinoIDE>file>Preferences那步中有以下错误,说明你网速差,你要开手机热点翻墙再试试,不用管以下提示,直接按照上图所示的下载试试,那个下载完成了就大功告成了。

大功告成后,把ArduinoIDE关闭并重新打开。

第四步,链接你的ESP32试试WIFI配网---WIFI SMART CONFIG

如果你一步步按我说的做,相信到这步你已经成功了。现在打开ArduinoIDE,把你买的ESP32模组插上电脑。Tools>Port>勾选你的COM口(当你插上ESP32时出现的端口名)

然后去Tools>Board>Board Manager>选择ESP32s(我买的是ESP32s, ESP32不同的模组厂商会有不同的板子)

File>Examples>Wifi>WifiSmartConfig 我们试一下这个WIFI配网例程,看看若是配网成功,那说明设备和环境都没问题。

先点√编译,再点→烧录下载程序到模组。

点击下图所示的→后,当右下角进度条烧录完成时,长按你的ESP32右侧的黑色按键4秒后松手,ESP32就开始自动配置。

等上图所示的进度到达100%,你打开串口监视器 (右上角那个🔍)

这时候,打开你的手机,提前下载乐鑫的WIFI配置工具“EspTouch”网上搜一下,安卓手机能下,苹果手机没试过。(这个工具我上传CSDN了,大家去找一下)。注意你的手机要连上另一个手机或者你家的高速WIFI,不要用公司或学校的,太卡。我用的是另一部红米K30手机给我的手机热点。(注意!!!ESP32仅支持2.4Gwifi, 你开热点的时候把手机热点设置为2.4G的)。

配网成功是这样:

如果你上面配网失败,失败有两种可能,

一是你板子选的不对(不同的厂商生产不同的型号的ESP32)这时候你需要查Arduino IDE是否支持ESP32的型号:

Arduino IDE>file>Reference, 把下面这个复制到你的里面(复制的时候不要删除之前的,你点回车,然后粘贴就行)

https://raw.githubusercontent.com/espressif/arduino-esp32/gh-pages/package_esp32_index.json

** 第二种是你在ArduinoIDE中的Board选的不是Node32s,**

还要打开Arduino IDE选择Arduino>tools>core debug level >Verbose

内容来源(Core Debug Level in ESP32 - iotespresso.com)

选择 Partition Scheme分区方案>No OTA(large APP)

/***********补充说明/

这个是指芯片发Bootloader,把数据加载到内存中运行时(读取数据和存储有关),选择不按默认来读数据。例如OTA(固件空中升级)从D1-D16读用户数据,默认(Default选项)的话可能读不到数据(为啥读不到?进一步解释,例如你是16位,你要装入一个8位的数据,你是能读取的,16个座位的公交车当然能坐8个人,但是16人能坐8座的车吗?不能啊。呐,你还要让他默认给你一辆8座的公交车吗?)。选No OTA就是不用他的默认配置,全都读。

那问你,啥是Bootloader?

BootLoader是在操作系统内核运行之前运行的一段小程序。 其实Bootloader就相当于手机的bios ,通过这段小程序,进行硬件初始化,获取内存大小信息等,调整手机到适配状态。 所以Bootloader是很重要的,如果bootloader不能正常加载,手机就是砖头一个,无法正常启动和使用。

/***说明完了继续吧/

然后就配网成功了。

第五步,还可以试试下面这个 “GetChipID"例程。

你能在电脑的cmd下,ping 你模组ID,出数据也说明你都配置好了。

操作还是点→然后按下模组右边的黑色按钮4秒,等进度100%。打开你的串口监视器,会看到出数据了。

也可看到你的设备ID。

如果你在上面第一个WIFI例程看到了你的ID=192.168.X.X那个,你去电脑的控制面板CMD中,输入”ping 192.168.X.X"就会出一堆数据,那说明你成功配置好了。

那么,这就完事了,祝大家玩的愉快,有问题下面留言交流。

这是我的笔记,未完待续。

标签: 物联网 ESP32 WIFI

本文转载自: https://blog.csdn.net/Smile_h_ahaha/article/details/122596422
版权归原作者 Smile_h_ahaha 所有, 如有侵权,请联系我们删除。

“手把手教你学ESP32开发-第一篇:ArduinoIDE+ESP32搭环境”的评论:

还没有评论