嵌入式笔试面试专栏
文章平均质量分 69
2021年应届嵌入式笔试、面试准备的一些笔记(包括项目、笔试题)
阿波罗啦啦啦啦
粮厂嵌入式工程师 Android底层音视频开发 曲折中上升,实践中领悟
展开
-
小米面经(2021春招)
3月31日投的,本来是想投嵌入式工程师的,看了一下发现没有了,后来得知C/C++有一部分也是嵌入式的,赶紧投递,4月21日接到一面邀请,4月26日接到二面邀请,4月28日接到HR电话。面试官也很专业。效率非常高。一面(60分钟)1、简单介绍一下自己ARM、单片机部分2、讲一下ARM里面LR寄存器是什么?是做什么用的?ARM的硬件结构有哪些组成?这题没答出来,忘记了。好尴尬 简历上还写的熟悉ARM 惭愧。3、讲一下你们比赛用的哪些芯片?芯片都有哪些模块(这里应该指IIC、SPI这些)?原创 2021-05-01 11:08:41 · 3522 阅读 · 8 评论 -
嵌入式笔试——常考知识点(二)C语言关键字
一、static 关键字的作用答:作用域方面:1.限制变量的作用域(static全局变量);2.设置变量的存储域(static局部变量)。static 最主要功能是隐藏,其次因为 static 变量存放在静态存储区,具备持久性和默认值为 0①隐藏作用,可以在不同的文件中定义同名变量和同名函数。②对于变量来说,保持变量持久,静态数据区的变量会在程序刚刚运行时就完成初始化,也是唯一一次初始化;储存在静态数据区,静态存储区只有两种变量(全局变量和 static 静态变量)。③默认初始化为 0x00转载 2021-03-14 13:00:10 · 339 阅读 · 0 评论 -
嵌入式笔试——常考知识点(三)宏定义函数
宏函数编写一、用宏定义写出swap(x,y),即交换两数 #define swap(x, y) (x)=(x)+(y);(y)=(x)–(y);(x)=(x)–(y);二、写一个“标准”宏,这个宏输入两个参数并返回较小的一个。#define Min(X, Y) ((X)>(Y)?(Y):(X))//结尾没有;用预处理指令#define 声明一个常数,用以表明1年中有多少秒(忽略闰年问题)#define SECONDS_PER_YEAR (60 * 60 * 24 * 365)UL转载 2021-03-14 12:59:25 · 434 阅读 · 0 评论 -
嵌入式笔试——常考知识点(四)循环相关
一、说出下列两个循环的优缺点,并说明原因。答:左侧程序优点:程序简洁缺点:多执行了N-1次逻辑判断,并且打断了循环“循环流水线”作业,使得编译器不能对循环进行优化处理,降低了效率。右侧程序优点:循环的效率高缺点:程序不简洁二、语句for( ;1 ;)有什么问题?它是什么意思?答:死循环,和while(1)相同。三、do……while和while……do有什么区别?答:前一个循环一遍再判断,后一个判断以后再循环。四、嵌入式系统中经常要用到无限循环,你怎么用C编写死循环。while(1转载 2021-03-14 12:57:58 · 320 阅读 · 0 评论 -
嵌入式笔试——常考知识点(一)liunx文件的权限
一、liunx下查看文件权限ls -l如果是想查看单个文件权限:ls -l xxx.xxx (xxx.xxx是文件名)查看的是xxx文件之中的文件权限一共有十位数,其中:最前面那个 - 代表的是类型( - 代表的是文件,d 代表的是文件夹)除去最前面的类型符,后面3位一组第一组三个 rwx 代表的是所有者(user)拥有的权限第二组三个 rw- 代表的是组群(group)拥有的权限第三组三个 rw- 代表的是其他人(other)拥有的权限rwx分别代表:r 表示文件可以被读(rea原创 2021-03-09 11:24:25 · 450 阅读 · 0 评论 -
嵌入式面试—项目篇(二)全国大学生智能汽车竞赛(团队项目)
2019.3一2019.7 基于MK60DN512ZVLQ10 的室外自动寻迹智能越野车(集体项目) 2020.3一2020.7 基于NXP i.MX RT1064的电磁AI寻迹智能小车(集体项目)软件环境:keil5 IDE、Altium Designer 17硬件环境:NXP MK60DN512ZVLQ10 MCU(2019)、NXP i.MX RT1064 MCU(2020)项目描述:此项目为第十四届、第十五届全国大学生恩智浦杯智能汽车竞赛室外越野竞速项目,依照组委会公布的比赛规则,原创 2021-03-02 10:06:40 · 4610 阅读 · 6 评论 -
嵌入式笔试(1)—海康威视试题
单选(15题)第一题栈简介栈由操作系统自动分配释放 ,用于存放函数的参数值、局部变量等,其操作方式类似于数据结构中的栈。堆简介堆由开发人员分配和释放, 若开发人员不释放,程序结束时由 OS(操作系统) 回收,分配方式类似于链表。堆与栈区别堆与栈实际上是操作系统对进程占用的内存空间的两种管理方式,主要有如下几种区别:(1)管理方式不同。栈由操作系统自动分配释放,无需我们手动控制;堆的申请和释放工作由程序员控制,容易产生内存泄漏;(2)空间大小不同。每个进程拥有的栈的大小要远远小于堆的大小。原创 2021-02-25 14:52:05 · 6883 阅读 · 10 评论 -
嵌入式面试—Liunx常考基础知识(二)—Linux 进程和线程的区别
进程:进程是程序执行时的一个实例,是担当分配系统资源(CPU时间、内存等)的基本单位。在面向线程设计的系统中,进程本身不是基本运行单位,而是线程的容器。程序本身只是指令、数据及其组织形式的描述。进程才是程序(那些指令和数据)的真正运行实例。典型的UNIX/Linux进程可以看成只有一个控制线程:一个进程在同一时刻只做一件事情。有了多个控制线程后,在程序设计时可以把进程设计成在同一时刻做不止一件事,每个线程各自处理独立的任务。线程:线程是操作系统能够进行运算调度的最小单位。它被包含在进程之中原创 2021-02-23 19:58:00 · 463 阅读 · 0 评论 -
嵌入式面试—Liunx常考基础知识(一)—liunx系统常用指令,15个常用的gcc 命令选项
一、文件1、Ls :显示当前文件的所有内容。2、Cd :切换当前目录。3、Pwd :显示当前工作路径。4、Tree :显示文件和目录(由根目录开始的树形结构)。5、 Mkdir :创建目录。6、Rm :删除文件。7、Rmdir :删除目录。8、Cp :复制文件/mul.9、Touch :创建一个文件夹。二、其他1、find :文件寻找2、Mount :挂载文件系统3、Useradd :创建一个新用户4、Cat :在命令行中显示文件的内容5、Ps -aux| grep :显示当前原创 2021-02-23 15:49:34 · 295 阅读 · 0 评论