嵌入式软件工程师是一种专门从事嵌入式系统软件开发的工程师。嵌入式系统是指嵌入到其他设备或系统中的计算机系统,它们通常具有特定的功能和任务,嵌入式软件工程师负责设计、开发、测试和维护这些嵌入式系统的软件部分1.编程技能:熟练掌握至少一种嵌入式系统常用的编程语言,如C、C++或汇编语言。熟悉嵌入式系统的底层编程和硬件接口,精通基于STM32的ADC,DMA,UART,SPI,TIMER,看门狗,RTC的配置及使用,熟悉HAL库基于STM32CUBE的图形化配置方法,熟悉标准库的配置与代码移植方法。2.系统架构和设计:能够进行系统级设计,包括软件架构、任务调度、内存管理和设备驱动程序等3.实时操作系统(RTOS):了解实时操作系统的原理和使用,能够进行任务调度、中断处理和资源管理,如前后台系统基于定时器中断的任务调度,UCOS或者FreeRTOS的应用架构开发。4.驱动程序开发:具备开发设备驱动程序的能力,与硬件进行交互并实现必要的功能,驱动程序包括断码屏的显示驱动,APP的串口协议交互,触摸屏的串口协议交互,PT1000温度采集驱动,热电偶温度采集驱动,各类电机马达如步进电机,有刷电机,无刷电机的驱动控制等。5.调试和故障排除:具备调试嵌入式系统的能力,使用调试工具如keil软件在线仿真,示波器探测及波形分析,和技术进行故障排除和性能优化。6.通信协议:熟悉常见的通信协议,如UART、SPI、I2C、CAN等,能够进行设备间的数据交换和通信。7.版本控制和团队合作:具备使用版本控制系统(如Git)进行代码管理和团队协作的能力。8.测试和验证:进行软件单元测试、集成测试和系统验证,确保软件的正确性和稳定性。9.领域知识:了解特定行业领域的相关知识,例如汽车电子、医疗设备或工业自动化等。嵌入式软件工程师在项目中与硬件工程师、系统工程师和软件团队密切合作,共同开发出符合要求的嵌入式系统。他们需要具备良好的问题解决能力、分析能力和团队合作能力,以应对嵌入式系统开发中的挑战。
联系我时,请说是在58同城上看到的,谢谢!