首页
题库
公司真题
专项练习
面试题库
在线编程
面试
面试经验
AI 模拟面试
简历
求职
学习
基础学习课
实战项目课
求职辅导课
专栏&文章
竞赛
我要招人
发布职位
发布职位、邀约牛人
更多企业解决方案
AI面试、笔试、校招、雇品
HR免费试用AI面试
最新面试提效必备
登录
/
注册
Ximhiog
门头沟学院 嵌入式工程师
发布于广东
关注
已关注
取消关注
m
@sagima:
嵌入式模拟面试拷打【1】
1. 请解释如何在STM32中生成PWM波,以及如何计算其频率和占空比。 解答: 在STM32中,PWM(脉宽调制)波形的生成依赖于定时器模块。PWM的频率和占空比的计算涉及定时器的时钟频率、预分频器(Prescaler)、自动重装载寄存器(ARR,Auto-Reload Register)和捕获比较寄存器(CCR,Capture/Compare Register)的值。 PWM频率:PWM的频率由定时器的时钟频率和自动重装载寄存器的值决定。公式如下:[PWM_Frequency = \frac{Timer_Clock}{(ARR + 1)}]其中,Timer_Clock 是定时器的输入时钟频率,ARR 是自动重装载寄存器的值。 PWM占空比:占空比由捕获比较寄存器(CCR)的值与自动重装载寄存器(ARR)的值确定。公式如下:[Duty_Cycle (%) = \frac{CCR}{ARR + 1} \times 100%]通过改变 ARR 和 CCR 的值,可以调整PWM的频率和占空比。 2. FreeRTOS和RT-Thread两个实时操作系统有何主要区别?请从系统架构、任务管理、内存管理、和应用场景等方面进行比较。 解答: FreeRTOS和RT-Thread都是广泛使用的嵌入式实时操作系统,但在系统架构、功能设计和应用场景上存在一定区别: 系统架构:FreeRTOS: 轻量级,内核非常小巧,核心代码量少,设计简单,适合资源有限的系统。RT-Thread: 更为丰富的功能模块,包含完整的组件和软件包管理器,扩展性更强,但相应的占用资源也更多。 任务管理:FreeRTOS: 采用基于优先级的抢占式调度,支持静态和动态任务创建。RT-Thread: 支持优先级调度,时间片轮转等,且内置更多的任务管理特性,如信号量、消息队列等。 内存管理:FreeRTOS: 提供简单的内存分配方式,通常采用静态分配或者小块动态分配。RT-Thread: 支持动态内存管理,提供了更复杂的内存管理机制,如堆和栈的管理。 应用场景:FreeRTOS: 适用于内存和资源非常有限的小型嵌入式系统。RT-Thread: 适用于需要丰富功能支持的嵌入式应用,如需要GUI、网络等功能的系统。 3. 在过往项目中,哪部分工作让你感到最困难?请描述该问题的背景,分析遇到的挑战,以及最终的解决方案。 解答: 在项目开发中,挑战通常来自于硬件兼容性问题、实时性要求高的任务调度、或资源受限的系统优化。以硬件兼容性为例: 背景: 在一个项目中,我们使用了多种传感器,这些传感器在不同温度和湿度环境下表现不一致,导致采集的数据精度波动较大。 挑战: 由于项目的时间紧迫性,我们无法对所有传感器进行逐一标定,也无法更换硬件。 解决方案: 我们分析了各传感器的数据特性,发现其波动具有一定的模式,于是通过在软件层面加入数据滤波算法和校准曲线,减少了外界环境对传感器数据的影响。同时,调整了传感器采集的频率,以减少由环境因素引入的噪声。 4. 在嵌入式系统中,如何在串口中断中有效处理接收的数据?请详细描述典型的处理流程。 解答: 在串口中断处理中,通常的步骤如下: 中断触发: 串口接收到数据时触发中断。 读取数据: 在中断服务程序(ISR)中,从串口数据寄存器(如USART_DR)读取接收到的数据。 存储数据: 将读取到的数据存储在一个环形缓冲区或FIFO中,以便后续处理。这样可以避免在中断中执行耗时操作。 信号通知: 通过设置标志位或发送信号量,通知主循环或任务有新的数据可处理。 退出中断: 确保在中断中处理的时间尽量短,以减少中断延迟对系统的影响。 5. 如何在嵌入式系统中接收并解析一个大数据包(如1K字节以上,带帧头、帧长和校验码)?请描述详细的处理流程。 解答: 处理大数据包的流程通常如下: 初始化环形缓冲区: 使用一个足够大的环形缓冲区来存储接收到的数据。 分段接收: 在串口中断服务程序中,将接收到的数据段存入缓冲区,并持续检测是否收到完整帧头和帧长字段。 帧校验: 当数据接收完成后,根据帧长字段提取完整数据帧,使用校验码(如CRC或校验和)验证数据的完整性。 数据解析: 对校验通过的数据帧,解析出实际数据内容(如数据段、命令等)。 错误处理: 如果校验失败或接收超时,丢弃当前帧并重置缓冲区状态。 6. 请解释IIC(I²C)协议的工作原理及其典型应用场景。 解答: IIC(I²C,Inter-Integrated Circuit)是一种串行通信协议,主要用于低速设备之间的短距离通信。IIC是半双工的,多主多从设计,具有以下特性: 物理层: 使用两根信号线,分别是SCL(时钟线)和SDA(数据线),通过上拉电阻连接。 通信过程: 起始条件: 主设备通过拉低SDA线并保持SCL线高电平,发出起始信号。数据传输: 在时钟信号SCL的引导下,数据位按高位在前的顺序通过SDA线传输。数据每传输8位后,接收方需要发送应答信号(ACK)。停止条件: 主设备拉高SDA线并保持SCL线高电平,发出停止信号,结束通信。 应用场景: 适用于芯片间短距离通信,如MCU与EEPROM、传感器、实时钟(RTC)等器件之间的通信。 7. 请解释SPI(Serial Peripheral Interface)协议的基本原理及其在嵌入式系统中的典型应用。 解答: SPI(Serial Peripheral Interface)是一种全双工的同步串行通信协议,通常用于微控制器和外围设备之间的高速通信。 物理层: SPI通常使用四根线,分别是SCLK(串行时钟)、MOSI(主设备输出从设备输入)、MISO(主设备输入从设备输出)和SS/CS(从设备选择)。 通信过程:时钟信号: 由主设备生成SCLK时钟信号,控制数据传输速率。数据传输: 数据在时钟边沿上同步传输,MOSI用于主设备向从设备发送数据,MISO用于从设备向主设备回传数据。从设备选择: 通过SS/CS信号选择相应的从设备。 应用场景: 常用于高速数据传输的场景,如连接闪存、LCD显示屏、传感器、SD卡等外设。 8. 请简要解释CAN(Controller Area Network)协议的基本工作原理及其应用场景。 解答: CAN(Controller Area Network)是一种串行通信协议,广泛用于汽车
点赞 79
评论 7
全部评论
推荐
最新
楼层
暂无评论,快来抢首评~
相关推荐
昨天 20:39
沈阳工业大学 Java
HashMap底层原理
HashMap底层原理1.什么是HashMap?是基于Map接口实现的存储键值对数据的集合其最多允许一个为null的key值,且HashMap存储的数据是无序的2.HashMap的组成其底层是由 数组 + 链表/红黑树 组成当链表长度大于8 且数组长度 超过 64 将链表转换为红黑树结构当链表长度大于8 但数组长度小于 64 则不会转成红黑树,数组继续扩容。3. HashMap put方法流程1.判断数组是否为空? 空 ==> 执行resize()方法对数组进行初始化2.根据key值计算hash值,得到该节点对应的数组存储下标3.若没发生hash冲突,直接将该节点存储对应的数组下标中4....
点赞
评论
收藏
分享
10-20 12:21
联想_算法工程师(准入职员工)
联想内推,联想内推码
优点:wlb 真的不加班,假期也很多年假15天,平时请假也很简单,有的时候和领导说一下都不用走请假流程。领导和同事都很nice,不存在PUA,领导也懂技术,交流起来很顺畅,领导也支持新技术探索,我就在联想的时候开始写技术博客和开源项目。上下班不用打卡,平时项目也不急,下班基本不找你。福利好,12病假,有房补餐补,能排户口(最吸引我的点,但不一定) 🔻联想的福利 五险一金、企业年金、员工内购股票 节假日的各种礼盒 旅游补贴:工作满五年,1.5w/年的旅游补贴 带薪病假和生育假:很体贴员工,尊重女性! 🔻团队氛围超级nice 部门的同事都超级好,定期团建聚餐以及旅游 联想就是家文化,和其他部...
联想公司福利 1461人发布
点赞
评论
收藏
分享
09-19 10:01
中南大学 算法工程师
得物——工作时间最长的企业
工作环境&福利待遇个人感觉就是实习生基本上都留不住,大部分实习几个月就跑了,得物加班真的很严重,某些程度赶得上pdd了,但是得物的工资真的很低,待遇不是很好,零售和一些基础设施还是很到位的,但是发放的工作电脑真的又破又旧,得物是不想要产出了吗。工作强度得物10105真的是常态,遇见不好的mt,周六基本上没有休息时间,夸张一点说平时上班都没有摸鱼时间,真的很恐怖,继pdd之后又一个卖命的企业。部门氛围感觉部门氛围还是可以的,大家都是打工人,对于加班真的很厌恶,我们都有共同的敌人:资本业务前景感觉真的没有去得物的必要,除非你实在找不到工作,然后只有得物给你发了offer,不然真的别考虑得物,大部分职工在得物工作的时间不是很久,每隔一段时间都会有部分员工辞职或者跳槽,因为工作压力真的很大,日常被push,遇见不好的mt还会被pua。
投递上海得物信息集团有限公司等公司10个岗位
点赞
评论
收藏
分享
09-21 21:14
门头沟学院
又有素材了
后悔把简历发过去了。。
否极泰来来来来:
和他说:这里不好骂你,我们加个微信聊
点赞
评论
收藏
分享
10-21 21:39
门头沟学院 Java
别再让家人问 “你到底干啥的”!码农解释工作小诀窍
1. 先给工作定个 “通俗人设”:不是 “写代码的”,是软件开发工程师(提高一个逼格档次)别一上来就说 “我写代码”,家人可能会联想到 “修电脑的” 或者 “打游戏的”。可以直接用他们懂的职业类比,一句话拉近距离,感觉你工作有点low。对爸妈说:“我就像家里装修时的木工 + 电工,不过我装的不是房子,是手机里的 APP、你用的购物软件。软件里点一下就能付款、刷视频不卡,背后都是我和同事们‘搭框架、接线路’弄好的。”对爷爷奶奶说:“您平时用微信发语音、看天气预报,这些功能能正常用,就像家里的电视能正常看节目一样。我就是负责‘保养’这些功能的人,要是哪里点不开、用着卡,我就去‘修’好它。”2. 把...
投递大连飞创信息技术有限公司等公司10个岗位
点赞
评论
收藏
分享
评论
点赞成功,聊一聊 >
点赞
收藏
分享
评论
提到的真题
返回内容
全站热榜
更多
1
...
这个实习生我要给他转正
1.6W
2
...
「潜力作者交流2群」开放报名啦!
1.2W
3
...
双非鼠鼠的秋招精神状态
6824
4
...
求职低谷期我是怎么度过的
6344
5
...
27四非本,字节后端实习OC
6260
6
...
以Mentor视角,说说我最喜欢什么样的实习生
4624
7
...
没有家庭的托举,我只能靠自己
4193
8
...
如何做好汇报:让努力被看见、让成果更有价值
3990
9
...
学长,我得休息了,明天要面软*动力
3534
10
...
卓望秋招一面
3286
创作者周榜
更多
正在热议
更多
#
你的mentor是什么样的人?
#
8004次浏览
66人参与
#
投递几十家公司,到现在0offer,大家都一样吗
#
266760次浏览
1859人参与
#
平安产险科技校招
#
2529次浏览
0人参与
#
怎么给家人解释你的工作?
#
4438次浏览
41人参与
#
26届秋招公司红黑榜
#
19378次浏览
68人参与
#
帮我看看,领导说这话什么意思?
#
10196次浏览
56人参与
#
未岚大陆求职进展汇总
#
38594次浏览
117人参与
#
你觉得面试是靠实力还是靠运气
#
23620次浏览
279人参与
#
校招泡的最久的公司是哪家?
#
7705次浏览
44人参与
#
牛客树洞,我想对你说
#
2708次浏览
50人参与
#
求职低谷期你是怎么度过的
#
8063次浏览
150人参与
#
实习必须要去大厂吗?
#
148322次浏览
1551人参与
#
度小满求职进展汇总
#
11202次浏览
58人参与
#
你觉得mentor喜欢什么样的实习生
#
13493次浏览
352人参与
#
你觉得多少薪资算SSP?
#
113042次浏览
416人参与
#
没有家庭托举的我是怎么找工作的
#
15872次浏览
191人参与
#
你遇到过哪些神仙同事
#
117561次浏览
750人参与
#
同bg的你秋招战况如何?
#
159142次浏览
927人参与
#
从哪些方向判断这个offer值不值得去?
#
8859次浏览
104人参与
#
职场新人体验
#
101142次浏览
666人参与
#
职场破防瞬间
#
343631次浏览
2819人参与
#
面试紧张时你会有什么表现?
#
2332次浏览
23人参与
牛客网
牛客网在线编程
牛客网题解
牛客企业服务