我嘞个豆,嵌入式?嵌入式面经

从事嵌入式,纯技术涉及到的内容主要是C语言、arm、STM32驱动、FreeRTOS、Lwip等等。电子电气方向涉及到的主要是:485、232、串口、DCDC\ACDC、网络通信、数据处理。
C语言:
1.static 关键字的作用、使用方式:
全局静态变量:
全局静态变量使用范围是该.c文件所有位置。
局部静态变量:
局部静态变量使用范围是该函数,且只会在初始化时申明一次,后续变化只能通过赋值。
静态函数:
函数调用范围只限制于该.c。
2.volatile关键字的作用:

笼统的讲,volatile关键字就是让程序每次都去寄存器中获取该字段的值,保证了数据变量的准确性。
什么时候用到该关键字?
1.变量是全局变量,且多个线程同时操作该变量的时候。
2.中断中处理的数据变量。
3.硬件寄存器中的数据。
3.const关键字的作用:
4.main函数之前进行了什么操作?
简单来说就是各种初始化操作。
5.堆和栈有什么区别?
什么是堆?什么是栈?他们之间有什么区别和联系? -
STM32:

1.串口数据接收是怎么处理的?

串口数据处理有两种方式:
1.通过串口中断接收到数据后,将数据放置环形缓存或队列中,待数据处理函数进行处理时进行处理。(RTOS)
2.通过轮询,时间片方式调度串口寄存器判断是否有数据,有数据则放入缓存待处理。(裸机)
FreeRTOS:
1.简述一下什么是RTOS系统

FreeRTOS为例,RTOS系统是以抢占优先级为主,时间片为辅实现任务调度的操作系统,主要核心上实现的是任务调度的功能,使任务具有实时性。

2.在任务中怎么进行数据传输?什么方式?

任务间数据传输一共有三种形式,用的最多的是消息队列,其次是全局变量和信号量。
1.消息队列发送数据的方式可以是发送数据本身和发送数据的地址指针。
2.全局变量使用供所有任务获取和处理,但全局变量占用内存较多,而且不好管理。
3.信号量一般作为标志位使用。
最后呢问题还有很多,我都整理到我的面经里去了,可以关注我更新最新的嵌入式面经
全部评论
感谢博主的分享
点赞 回复 分享
发布于 2023-10-20 15:41 北京

相关推荐

点赞 评论 收藏
分享
头像
08-13 14:20
已编辑
门头沟学院 Java
之前在学校的时候,舍友老是熬夜打游戏,周末还喜欢早起打游戏😅,吵得没法睡到自然醒现在出来实习独居后,想干嘛就干嘛,打游戏刷视频,没有任何顾虑,学习工作,也没有人能打扰我🦌就这个独居爽
天才无敌小土豆:之前在学校 宿舍一个巨瘦的哥们天天熬夜打游戏 呼噜声还巨大 我睡觉超级敏感 天天睡不着 我睡他下铺 半夜踹他床板让他飞起来 就那一会不会打呼噜 然后继续 那段时间我感觉我都yw了 后来我换了个远一点的床铺 买了新的那种可以捏小的耳塞 老子睡觉爽死了 后悔大三才发现这种耳塞 老子yw又好了 天天夜里上厕所都梆硬
独居后,你的生活是更好了...
点赞 评论 收藏
分享
评论
16
108
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务