无线WiFi+蓝牙ESP32-C3乐鑫携手FerrousSystems推出基于ESP32-C3的Rust培训项目,乐鑫和FerrousSystems为ESP32-C3开发者推出了一个Rust培训项目,旨在通过ESPRustBoard开发板和相关培训材料,指导开发者使用Rust语言进行物联网开发。
目前,Rust编程语言在嵌入式系统中越来越受欢迎,乐鑫也正在与Rust社区一起开发实现乐鑫芯片对Rust的支持。FerrousSystems 是一家一站式Rust解决方案提供商,以其在Rust编程语言方面先进的专业知识为基础,为企业提供咨询、培训和量身定制的Rust解决方案。乐鑫和FerrousSystems为使用 ESP32-C3 的开发者推出了一个完整的培训项目,旨在以简单易懂的方式,指导新手和有基础的嵌入式开发者使用Rust语言进行物联网应用开发。
培训内容
项目以一本在线培训手册为培训材料,既可以用于小组培训,也可以自学。它还包含了一些编程练习,提供解决问题的提示、步骤和示例,帮助开发者在课程结束后快速开启自己的个人开发项目。此外,手册的“Troubleshooting”部分也能够帮助开发者解决在设置中出现的问题。培训手册根据内容难度和开发者的经验水平,分为“入门”和“高级”两部分。
入门部分面向那些对探索无线WiFi蓝牙ESP32-C3功能,或嵌入式编程和嵌入式Rust感兴趣的开发者,指导用户基于HTTP和MQTT,以及嵌入式设备上的Rust标准库进行开发,使其开发板对命令做出反应并发送传感器数据,与外界实现交互。入门部分包含以下内容:
1.用cargogenerate建立项目;
2.编写HTTP客户端;
3.编写HTTP服务器;
4.编写MQTT客户端,用于:
发布传感器数据;
接收订阅的命令。
高级部分面向那些对学习外设访问、读写寄存器和ESP32-C3上的嵌入式Rust中断处理感兴趣,且拥有嵌入式编程基础(有一定编写[no_std]Rust和驱动程序的经验)的开发者。高级部分包含以下内容:
1.通过I2C读取温度和湿度传感器;
2.通过同一I2C总线读取IMU;
3.I2C驱动的介绍;
4.用按钮处理中断。
这一部分将会在ESPRustBoard开发板发布之后对开发者完全开放。
参与培训的条件和所需材料
1.掌握基础的Rust知识(如 RustBook 前6章。注意:第4章"Ownership"无需完全理解。)
2.学习高级部分之前,建议先学习有关嵌入式系统的基础知识。
3.硬件准备:内置无线WiFi蓝牙ESP32-C3的ESPRustBoard或ESP32-C3-DevKit-02。
培训使用的硬件:ESPRustBoard
乐鑫和Rust社区共同开发了一个用于Rust培训和开发的ESPRustBoard开发板。开发板基于乐鑫无线WiFi蓝牙ESP32-C3 单核RISC-VMCU,支持2.4GHzWi-Fi和Bluetooth5(LE)。它板载一个 ESP32-C3-MINI-1 模组、一个6DoFIMU、温度和湿度传感器、锂离子电池充电器和USB(Type-C)接口,并采用AdafruitFeather外形尺寸,对面包板十分友好。
ESPRustBoard在设计时着重考虑了培训使用的便捷性。用户无需处理电线,就能用开发板的板载外设演示Rust的性能,防止接线过程中容易出现的各类问题。开发板的设计也支持开发者在PCB上印制美观的丝印和信息。ESPRustBoard项目获得了CERN开放式硬件许可证,在 ESP-RS GitHub仓库中完全开源。您可以访问代码库了解更多开发板详情。