淘宝买了一块 ESP32S 的板子,刚到就迫不及待的心情准备搞波大的,准备搞一下 NanoFramework 框架,也就是.Net 的嵌入式系统,支持 C#语言的嵌入式开发,当然也支持(C,C++,Lua,js,At 指令,C#)等等吧,语言种类很多,但是,支持 C#,我感觉就很开心,因为熟悉啊。
基于此,我就写写 ESP32 NanoFramework 框架的简单使用的例子。当然,后期为了对底层进行修改,我这里进行的是官方案例,根据官方的来的,所以,想搞简单方案的可以参考 VsCode 的相关例程。当然,后期我也会出一个。
关于买板子,其实都是根据一个模子出来的,型号选好即可。我这边的型号是 ESP32S,当然其他型号也可以,但是基本是 ESP32 开头。要不然,你自己就得多操心一下板子型号的相关问题。
ESP32 SoC 芯片支持以下功能:
ESP32 采用 40 nm 工艺制成,具有最佳的功耗性能、射频性能、稳定性、通用性和可靠性,适用于各种应用场景和不同功耗需求。
乐鑫为用户提供完整的软、硬件资源,进行 ESP32 硬件设备的开发。其中,乐鑫的软件开发环境 ESP-IDF 旨在协助用户快速开发物联网 (IoT) 应用,可满足用户对 Wi-Fi、蓝牙、低功耗等方面的要求。
可以参考这篇文章
https://docs.espressif.com/projects/esp-idf/zh_CN/latest/esp32/get-started/index.html
当然,我也是参考这篇文章过来的。
本文档旨在指导用户搭建 ESP32 硬件开发的软件环境,通过一个简单的示例展示如何使用 ESP-IDF (Espressif IoT Development Framework) 配置菜单,并编译、下载固件至 ESP32 开发板等步骤。
显示COM5 (不一定非得是5,可能是其他数字)才是正常的,如果不正常,需要下载驱动,我这个板子需要的驱动可以从
https://www.silabs.com/developers/usb-to-uart-bridge-vcp-drivers
下载 CP210x 通用 Windows 驱动程序,里面有 64.exe ,双击就OK,然后,插拔一下开发板即可。
地址:
https://dl.espressif.com/dl/esp-idf/?idf=4.4
我下载的是这个,看着相对小点(下载速度不是很快)
就简单了。直接双击运行
直接下一步,这个地方有环境变量,需要注意,另外会开启 windows 的防御机制,我后边又给关了,太耗性能了
我一般都选 D 盘,C 盘大的,就直接 C 盘了
全选,直接下一步
最后,桌面生成了我们需要的。
至此,安装是完毕了。
这两个是必须安装的,先安装了先。
在 D:\Espressif\frameworks\esp-idf-v4.3.3 目录下(其他目录下的 对应即可)
执行
export.ps1
再执行
install.ps1 all
执行完之后,用户的环境变量里已经有数据了
idf.py 命令包含了以下相应的功能
构建的时候,我们使用的命令是
idf.py set-target esp32
idf.py menuconfig
会如下图所示
可以通过此菜单设置项目的具体变量,包括 Wi-Fi 网络名称、密码和处理器速度等. hello_world 示例项目会以默认配置运行,因此可以跳过使用 menuconfig 进行项目配置这一步骤。
idf.py build
idf.py -p COM5 -b 115200 flash
命令很简单,com5就是我这边的串口名,你可以改成你自己的
115200就是我设置的串口的波特率,你也可以设置成一样的,或者其他都可以。
idf.py clean
idf.py fullclean
我试了两个命令都可以起到重新编译项目的目的。
复制
D:\Espressif\frameworks\esp-idf-v4.3.3\examples\get-started\hello_world
项目到
H:\hello_world
我这边是这样的目录,你那边可以随意。
启动任意一个,我启动powershell的
它会自动输出一堆,不用管。
直接到刚才复制的项目目录下
PS D:\Espressif\frameworks\esp-idf-v4.3.3> cd H:\hello_world
PS H:\hello_world>
PS H:\hello_world> idf.py build
它会自己输出很多,还有 编译的过程,链接的过程。
就等待它自己编译完。
编译完输出上面那句话。
D:\Espressif\python_env\idf4.3_py3.8_env\Scripts\python.exe D:\Espressif\frameworks\esp-idf-v4.3.3\components\esptool_py\esptool\esptool.py -p (PORT) -b 460800 --before default_reset --after hard_reset --chip esp32 write_flash --flash_mode dio --flash_size detect --flash_freq 40m 0x1000 build\bootloader\bootloader.bin 0x8000 build\partition_table\partition-table.bin 0x10000 build\hello-world.bin
or run 'idf.py -p (PORT) flash'
这句话的意思里面有一个重点,重点是它其实是生成了三个bin文件
这三个bin文件分别是: bootloader,分区表,应用程序 三个文件,后边应该就是它们存储的内部Flash地址了。
为啥是这样的结构呢,且听以后分解(有些大佬肯定是知道的)。
idf.py -p COM5 -b 115200 flash
执行后,如下图所示:
然后,可以通过串口助手查看一下(需要注意串口占用的问题,尽量只有一方在使用)。
其中,原示例代码,我已经改了。暂时没有支持中文的串口助手,以后再说。
通过串口助手,我们已经看到,结果跟我们想的一样。
我们已经基于 ESP32官方的 ESP-IDF工具来完成了ESP32的项目逻辑修改,编译,生成,和下载。官方示例很多,也可以多试几个,学习一下。
接下来会把 NanoFramework 给烧成并生成出来,这个时候,才可以用C#。目前还是C。一步一步来。
https://docs.espressif.com/projects/esp-idf/zh_CN/latest/esp32/get-started/index.html
一键三连呦!,感谢大佬的支持,您的支持就是我的动力!