职位要求
基本编程技术:
1,具备扎实C语言编程功底、编程技巧和调试排错能力,掌握常用的数据结构,结构体、链表、队列、堆栈和指针。
2,对C言语程序运行机制有实质性认识,如运行时堆栈。
3,理解实时内核原理,掌握基于实时内核的程序设计,如 RT-thread,FreeRTOS,uc/OS等。(有实际应用者优先考虑)
4,熟悉多任务编程技术,任务间通讯、同步机制,如互斥锁、信号量等,熟悉临界资源的操作方法以及在具体软/硬件平台上的实现原理。
5,基本数电模电知识,看懂电路原理图,能根据电路原理设计实现软件功能。
6,良好的英文阅读基础,看懂各种英文技术文档和芯片datasheet。
7,熟悉常用开发工具Keil MDK,IAR,GNU/GCC(不限制)等,有良好的编码风格和习惯。
相关硬件平台:
1,熟悉单片机系统,如51单片机,熟悉常用的各种片上资源,如ADC,定时器,看门狗,实际使用2款以上。
2,熟悉STM32,EFM32等基于Cortext-M系列的微处理器以及相应的芯片资源。(掌握其他ARM平台也可,但需要能快速上手)
3,对微处理器中断机制有比较深刻的认识,能根据具体平台编写中断处理函数,完成软件功能。
4,能够针对一款ARM微处理器,独立进行嵌入式软件移植或者编写调试工作。(要求必须有实际应用经验)
5,了解微处理器低功耗相关技术。
常用接口及外设:
1,熟练使用UART,I2C,SPI等硬件接口以及通讯协议。
2,熟悉E2PROM, LCD, OLED,Tp,温度传感器,3轴重力传感器等。
3, 熟悉TCP/IP协议栈原理,了解wifi,蓝牙(ble 4.0),GPRS等无线通讯技术。
4,欢迎优秀应届毕业生