经过前面的mpy简单体验,现在是时候进入到esp32官方原生cSDK的学习了。因为之前体验过评测乐鑫官方esp32模组的Dev-kit开发板,香蕉派bpi leaf-S3开发板也是使用乐鑫官方的cSDK,所以有关cSDK的细节信息仍然可以参考以前写过的帖子https://bbs.elecfans.com/jishu_1962160_1_1.html。 在上面帖子中,当时选择利用code来集成乐鑫官方的cSDK和相关工具链,其实code或者其他的IDE如clion,eclipse CDT,arduino IDE等等都不是必须的,完全可以用纯粹的命令行环境来开发cSDK,这里就命令行有关环境的搭建和体验做点补充。 关于乐鑫官方cSDK的入门手册,还是参考官方文档的链接地址如下https://docs.espressif.com/projects/esp-idf/en/latest/esp32/get-started/windows-setup.html。这里是特别指出了Windows系统的有关步骤介绍,因为众所周知的原因乐鑫cSDK在Windows上比较麻烦点,至于Linux平台上有关操作更加简单和容易理解,本帖子就不再画蛇添足了。 有关步骤也和上述帖子中差不多,我依然采用离线安装方式。 1 下载并解压缩ESP-IDF-V4.4.2 首先找到乐鑫官网页面地址https://www.espressif.com.cn/zh-hans/support/download/all下载其中的RTOS SDK V4.4,然后解压缩到你需要的目录下。这个版本也是官方目前推荐的版本,虽然GitHub上也已经有了v5.0和v5.1分支,但都不够完善,应该只是为了同时并行开发和支持多个新系列IC如h2等,而开的分支。 2 下载并安装esp-idf-tools2.1.6 然后我们找到这个页面地址https://dl.espressif.cn/dl/esp-idf/?idf=4.4去下载并安装一个esp-idf-tools2.1.6的安装器软件,我的选择是下载第一个绿色按钮也就是代表着4MB大小的在线安装器软件。这个安装器运行后会帮我们安装需要的一切,感觉是比以前esp32刚出来时候的版本好像要智能些,如下图所示。
3 运行esp-idf-tools2.1.6安装器软件的几点提示
首先,安装器会自己检测当前的Windows系统环境,如下图所示。
然后,安装器会选择和下载安装指定版本的SDK,这里我们是第一步就已经下载过了,所以选择已经存在的SDK目录,如下图所示。
然后,选择相关工具链的安装目录,如下图所示。
然后,选择需要被安装的工具链有关的组件,如下图所示。
可以看到,IDE选项里头esp-IDE,rust等等我都不需要,就不选它们,因为只想体验下命令行有关的操作方法。然后把列表框拉到最下面,把Gitee那个选项勾选上,如下图所示。
因为众所周知的原因,GitHub下载有时候可能会引起极度舒适,所以这里需要勾选国内的Gitee作为备用仓库。准备好一切安装的设置后,就可以开始安装了,如下图所示。
安装器软件在安装完成的最后步骤时,记得执行export.bat批处理脚本文件,会自动运行powershell和cmd两个命令行的环境配置脚本,如下图所示。
到这里终于看到那个done!提示信息,安装的步骤才算是全部搞定。然后就可以把examples目录的例程复制到cSDK以外的你指定的目录中,进行有关的设置,编译,链接等操作,如下图所示。
可以看到,我设置的target是香蕉派leaf-S3开发板的IC-------esp32s3芯片。如果例程是比较复杂的代码,可能还需要用idf.py menuconfig命令来设置用到的cSDK中用到的软件模块和组件等,这里只是hello工程就没必要了。
然后就可以build了。如下图所示。
最后就是flash,如上图中最后的提示信息命令为idf.py -p (PORT) flash,并把开发板接上PC的USB接口,上传固件到开发板esp32s3芯片中,如下图所示。
刷完固件后,可以用putty,xshell之类的工具软件,连接串口来看看打印日志,如下图所示。
以上,就是Windows系统中命令行的操作和体验,这里只是使用了hello这个example例程,cSDK中的其他例程,操作方法均与此类似。也就可以在这些官方的例程基础上,进行自己的APP开发和测试了。
例如可以在你复制例程hello的目录下,右键菜单打开code作为编辑器,开始编码或者修改源码,如下图所示。
修改完后,保存一下文件,就可以回到先前的命令行环境下,再次编译,链接和flash上传固件等等单片机开发的常规操作,那么有关乐鑫esp32s3官方cSDK的介绍就到此为止。 当然以上所述都是未曾修改整个hello工程结构的前提下,如果有增添,删除文件或者目录等等,则需要修改相应的Makefile文件,或者在cmake的设置文件CMakeList.txt里指定对应的选项。 Makefile和cmake等工具相对复杂,而且都是通用技术解决方案并非专门针对esp32及其工程,这里不再赘述,有需要请自行寻找有关资料和学习。
PS:顺便说一句,Windows系统下的代码编辑器还是可以用code,或者其他任何你熟悉的工具软件,至于Linux平台选择就更多了,如vim,EMACS,Nano等等,任取所需。
|