本票文章是有关嵌入式开发相关的内容,一般面试官会结合你个人项目负责内容进行相关知识点的提问。
目录
本票文章是有关嵌入式开发相关的内容,一般面试官会结合你个人项目负责内容进行相关知识点的提问。
你目前使用过的单片机操作系统有哪些(RTOS,uC/OS),谈谈你对他们的理解。
你为啥选F4作为主控芯片,而不是F1或者其他型号?
(1)F4是M4内核,主频高达168Mhz,在浮点运算方面F1没有硬件FPU.处理浮点数运算。
(2)F4外设比F1丰富且功能更强大,比如GPIO翻转速率,上下拉电阻配置,ADC精度等,并且内存大小。
(3)F1内部SRAM最大才64k,F4有192k。
(4)在F4的RAM和ROM:RAM192k,RoM大小2048k
(5)在内嵌操作RTOS系统学习上,才优先选择F4,考虑需要用到浮点运算。STM32的启动过程是怎么样的?
①复位向量表②处理器复位③系统初始化④C库初始化⑤主函数入口。
Linux嵌入式和单片机嵌入式区别。
复杂性:Linux嵌入式系统是基于Linux内核构建的,具有完整的操作系统功能,包含多任务处理,文件系统,网络协议等。
单片机嵌入式通常是裸机编程或者实时操作系统(RTOS),更具有简单的系统结构和功能。
处理能力:Linux嵌入式通常需要在强大的系统处理器上运行,例如ARM,x86等,具备较高的处理能力和存储容量。而单片机嵌入式系统使用单片机芯片,其处理能力和存储容量低。开发环境:Linux嵌入式系统使用标准的开发工具链和开发环境,可以使用高级编程语言C/C++,进行开发,并且具备广泛的软件支持和开发社区。单片机嵌入式系统的开发通常需要使用特定的单片机编程工具和汇编语言,开发资源相对较少。
系统定制性:Linux嵌入式系统具有很高的可定制性,可以根据应用需求选择所需的软件组件和功能,并且支持模块化的软件开发和更新。单片机嵌入式系统的定制相对较低,往往需要在设计阶段就确定所需要的功能和硬件配置。
成本和功耗:Linux嵌入式系统由于使用较高性能的处理器和较大容量的存储器,相对而言成本较高,并且功耗较高。单片机嵌入式系统由于采用低成本、低功耗的单片机芯片,成本低且功耗低。
你目前使用过的单片机操作系统有哪些(RTOS,uC/OS),谈谈你对他们的理解。
我使用最多的单片机操作系统是freeRTOS,它是一个免费且开源的RTOS,采用基于优先级的抢占式内核架构,支持多任务处理,时间片轮转调度和中断服务机制。它提供了一套轻便的内核函数和任务管理机制。
但是我也了解过uC/OS它也是基于优先级的抢占式内核,功能丰富,如事件标志、信号量、消息队列等,可以满足更复杂的应用需求。
在资源占用方面:freeRTOS支持多种处理器架构,例如ARM,MIPS,x86等,因此它适用于广泛的硬件平台。uC/OS也支持多种处理器架构,但支持的平台较少,且集中在微控制器和嵌入式系统上。
社区服务和生态系统:由于freeRTOS开源的性质,它的社区服务和生态系统比较强大,丰富的代码资源和开发工具,答疑等。uC/OS作为一个商用的RTOS,有专门的技术支持和服务,但是相对用户社区服务和生态系统就很小了。