岗位职责:
1、硬件驱动开发与调试
负责基于STM32/ESP32的硬件驱动开发,包括GPIO、ADC、DMA、I²C、SPI、UART等外设配置与优化。
解决系统稳定性问题(如死机、通信丢包),设计看门狗机制及异常恢复策略。
2、实时操作系统(RTOS)集成
基于FreeRTOS实现多任务调度与资源管理,优化任务优先级及堆栈分配,确保系统高效运行。
处理多模块并发冲突(如相同名称模块切换导致的系统崩溃问题)。
3、通信协议与物联网开发
实现MQTT、CAN/CAN-FD等通信协议,模拟丢包场景并优化数据传输可靠性。
支持远程升级(OTA)功能,设计Bootloader与应用程序分区方案。
4、低功耗优化与系统设计
针对电池供电设备,优化STM32低功耗模式(Stop/Standby)及唤醒机制(RTC/外部中断)。
设计硬件端功耗控制策略(如GPIO上下拉配置、动态时钟切换)。
5、代码管理与工程部署
整合大型代码库,管理模块化功能和算法。
完成代码编译、链接、烧录及硬件调试,适配不同芯片型号(如STM32F4/H7、ESP32)。
任职要求:
1、核心技术能力
精通C/C++语言,熟悉STM32/ESP32开发环境(Keil、IAR、ESP-IDF)。
深入理解FreeRTOS或类似RTOS内核机制,具备多任务调试经验。
掌握硬件调试工具(示波器、逻辑分析仪)及通信协议分析技能。
2、项目经验
10年以上嵌入式开发经验,主导或参与过完整产品开发周期(从需求到量产)。
有物联网设备、车载ECU或工业控制设备开发经验者优先。
3、问题解决能力
能快速定位系统级问题(如死机、内存溢出),并提出可靠解决方案。
熟悉双核通信(如STM32H7的Cortex-M7/M4协同)及硬件冗余设计。
4、软性素质
具备良好的文档编写习惯,能清晰记录设计逻辑及调试过程。
较强的团队协作能力,能与硬件工程师、测试团队高效沟通。