BSP工程师是 负责板级支持包(Board Support Package,简称BSP)的开发、调试和维护的专业技术人员。BSP是介于主板硬件和操作系统之间的一层,主要实现对操作系统的支持,并为上层的驱动程序提供访问硬件设备寄存器的函数包,使之能够更好地运行于硬件主板。
BSP工程师的主要职责包括:
开发、调试和维护板级支持包:
BSP工程师负责开发、调试和维护嵌入式硬件所需的软件支持,确保板子能够正常稳定地工作,并为应用软件提供基础。
驱动开发:
包括各种硬件设备的驱动程序开发,如I2C、SPI、UART、ADC、CAN、USB、Camera、IMU、Ethernet、bootloader等。
操作系统定制开发:
根据项目需求,进行Linux等操作系统的定制开发,包括驱动移植、调试和性能优化。
系统软件开发:
负责视觉AI芯片的系统软件开发,包括OS内核、BSP、设备驱动、中间件、SDK和相关平台工具链等。
测试与验证:
进行功耗自动化和手动测试,输出测试报告,并跟踪测试结果,确保硬件和软件的质量。
BSP工程师需要具备扎实的嵌入式编程能力,熟悉C/C++编程语言,并具备良好的编程习惯和代码规范。此外,他们还需要对硬件设计、PCB制作和SMT过程有一定的了解,并能解决相关技术问题。