培训对象:嵌入式软件开发工程师、物联网终端研发人员、希望掌握多语言开发的物联网技术人员。
培训目标:
掌握基于C/C++的物联网终端开发方法,能够使用FreeRTOS或RT-Thread进行嵌入式应用开发。
掌握基于Python的物联网终端开发方法,能够在Linux网关或MicroPython设备上快速开发。
熟练使用调试工具(JTAG、串口、逻辑分析仪)进行终端设备的调试与性能优化。
培训内容介绍:
物联网终端硬件平台:介绍主流MCU(STM32、ESP32)与MPU(树莓派、RK3288)的特点,根据需求选择合适的硬件平台。
C语言开发环境:搭建Keil MDK或STM32CubeIDE开发环境,配置编译、下载与调试工具链。
RTOS基础:移植FreeRTOS或RT-Thread到目标硬件,掌握任务创建、任务调度、队列、信号量的使用。
外设驱动开发:编写GPIO、UART、I2C、SPI等外设的驱动程序,连接传感器与执行器。
网络协议栈:移植lwIP轻量级TCP/IP协议栈,实现TCP/UDP通信,配置DHCP与DNS。
MQTT客户端集成:移植MQTT客户端库(paho-mqtt、esp-mqtt),实现与云平台的双向通信。
低功耗设计:配置MCU的睡眠模式,控制外设电源,实现微安级的低功耗运行。
Python开发环境:在树莓派或Linux网关上搭建Python开发环境,使用GPIO库控制硬件。
MicroPython开发:在ESP32或Pyboard上运行MicroPython,快速实现传感器读取与网络通信。
调试工具使用:使用串口工具输出调试信息,使用逻辑分析仪分析I2C/SPI时序,使用JTAG进行断点调试。
性能分析:使用代码剖析工具分析CPU占用与内存使用,优化代码减少资源消耗。
综合实战:完成一个完整的终端设备开发,从硬件连接、驱动编写到云平台接入的全流程。