拓竹科技是国内一家专注于消费级3D打印技术的公司,我之前公司的领导离开后就是去了拓竹做项目经理,也从他的朋友圈了解到了这家公司。
今天分享的是一份拓竹科技秋招一面面经,还是有一定难度的。
自我介绍
请阐述堆(Heap)与栈(Stack)的基本概念及其区别。
在裸机系统或实时操作系统(RTOS)中,有哪些高效且准确的方法可用于测定任务或系统运行时栈的最大使用深度?在实际运行一段时间后,应如何检测栈的实际使用量?
栈内容通常在哪些情况下会发生改变?
CPU在执行现场保存(如函数嵌套调用或中断发生时)时,具体会保存哪些上下文信息?
当系统发生异常(如触发HardFault)时,应如何定位异常产生的根本原因?
请简述MCU从上电启动到开始执行main函数的完整流程。
全局变量在哪个阶段完成初始化?
注意到你在项目中频繁使用串口,请介绍你所采用的串口通信实现方式(如是否使用DMA、缓冲区设计、中断机制等)。
当DMA传输完成中断(Full)与串口空闲中断(Idle)的触发条件同时满足时,两者的中断标志位是否会同时置位并触发中断?
如果想系统学习更多嵌入式开发的核心知识,欢迎了解下我的《嵌入式工程师练级之路》专栏,寓教于乐,带你入门高薪技术开发方向
END
你好,我是Allen康哥,CSDN嵌入式领域博客专家,知乎嵌入式领域优质答主,嵌入式技术领域粉丝15万。现任世界500强外企高级软件开发工程师,有多年国企和外企嵌入式行业工作经验,擅长嵌入式行业学习规划,单片机和嵌入式Linux学习规划,嵌入式硬件转软件学习规划,简历及offer咨询,报考/考研咨询等,欢迎留言交流!
1393