经纬恒润首先是自我介绍,介绍你的家乡,学校,项目等。然后面试官会根据你的项目问问题,从项目中拓展8股,8股主要问单片机,C语言,如果会C++的话也会问C++。面试官人不错,大家不用紧张,慢慢来就行,因为最后会有一个面试官的评分。
面试官问的面试题: 我的项目中有RTOS系统,这个系统问的比较多。FreeRTOS的时间片轮转调度是如何工作的?- 时间片轮转的目标是通过定时中断(通常由系统滴答定时器产生的时钟中断)强制切换任务,确保每个任务在有限的时间内执行,然后切换到下一个任务。
- 时间片的长度由系统滴答时钟频率决定。滴答时钟频率可以通过配置 `configTICK_RATE_HZ` 参数来调整,该参数通常定义在 `FreeRTOSConfig.h` 中。它表示每秒产生多少个系统滴答中断。多看基础。
整体面试比较顺利,大概45分钟。有3个面试官,轮流提问问题。都是一些比较基础的问题,主要是操作系统,中断,内存,通信等等,基本上都是常见的问题。我问了一些问题也详细解答了。
面试官问的面试题: 在嵌入式系统中,中断处理的关键步骤是什么?请举例说明。
解释嵌入式系统中内存管理的常见技术,如静态分配、动态分配和堆管理,并说明它们的适用场景。
谈谈您对嵌入式实时操作系统的理解,以及它与通用操作系统的主要区别。例如,在任务调度方面。
在嵌入式系统开发中,如何优化代码以减少功耗?请给出具体的方法和示例。
描述一下嵌入式系统中常见的通信接口(如 UART、SPI、I2C 等),并比较它们的特点和应用场景。
假设在一个资源受限的嵌入式设备中,需要实现一个简单的文件系统,您会考虑哪些因素?
解释嵌入式系统中看门狗定时器的作用和工作原理。如果看门狗定时器超时会发生什么?
对于一个基于微控制器的嵌入式项目,如何进行硬件和软件的协同调试?举例说明可能遇到的问题和解决方法。
谈谈您对嵌入式系统中 Bootloader 的理解,以及它的主要功能是什么?
在嵌入式系统中,如何处理异步事件和同步事件?给出实际的例子。