我嘞个豆,会了这些是不是就无敌了
从事嵌入式,纯技术涉及到的内容主要是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.信号量一般作为标志位使用。
附面经
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.信号量一般作为标志位使用。
附面经
c++/嵌入式面经专栏-牛客网
https://gw-c.nowcoder.com/api/sparta/jump/link?link=https%3A%2F%2Fwww.nowcoder.com%2Fcreation%2Fmanager%2FcolumnDetail%2FMJNwoM
全部评论
相关推荐
点赞 评论 收藏
分享
06-26 22:13
华北理工大学 人力资源专员/助理 
点赞 评论 收藏
分享
牛客刘北:两个缺爱的人是没有办法好好在一起的,但世界上哪有什么是非对错?你后悔你们在一起了,但是刚刚在一起的美好也是真的呀,因为其他人的出现,你开始想要了最开始的自己,你的确对不起自己,21岁的你望高物远,你完全可以不谈恋爱,去过你想要的生活,你向往自由,在一起之后,你要想的不是一个人,而是两个人,你不是变心了,就像你说的,你受够了,你不想包容了,冷静几天是你最优的选择,爱人先爱己。
点赞 评论 收藏
分享