夜雨聆风学习资料网

ARTICLE · 1144499

华为嵌入式面经全流程|机考到主管面,真题+追问链一次讲透

华为嵌入式面经全流程|机考到主管面,真题+追问链一次讲透

华为嵌入式面经全流程|机考到主管面,真题+追问链一次讲透

先说结论:华为嵌入式岗不是题偏,是追问深。八股本身不难,难的是你每说一句话,面试官都会顺着往下挖——一直挖到你说不上来为止。本文把 2025–2026 届多位同学的真实面经拼成一条完整链路,从机考、综测、技术一面、技术二面到主管面,逐关给真题、给追问链、给接法。背完能直接用。

一、先看流程:华为嵌入式面几轮

华为研发岗(含嵌入式/硬件)的标准化流程是:

  1. 投递简历(官网 / 牛客 / 线下招聘会,也可走内推)
  2. 机考(上机编程,约 120 分钟)
  3. 综合测评(性格测试,无技术难度)
  4. 技术一面(约 45–75 分钟)
  5. 技术二面(约 45–60 分钟)
  6. 主管面 / HR 面(约 20–45 分钟)
  7. 保温电话 → 报批 → Offer

几条容易被忽略的实情:

  • 线下场可以一天走完一面、二面、主管面;线上则可能拖到两三周。
  • 有个别同学评级不一致会被加第三轮技术面。
  • 竞赛党 / 顶会论文党可申请免机考,但技术面照面,且不会因此放水。
  • 2026 届的一条真实时间线:5.13 投递 → 5.21 机考 → 5.22 综测 → 5.30 一天面完技术面+主管面,全程 17 天。

二、机考:和通用软件岗同一题库

别被"嵌入式"三个字骗了。 华为嵌入式软件与通用软件类的机考是同一题库出题,格式为 3 道编程题(总分 200)。题型集中在:数组、字符串、回溯、模拟、堆、滑动窗口、动态规划。

近年真题示例:

  • k 数之和(输出不重复的 k 元组个数)
  • 提取字符串中的合法 MAC 地址
  • 前 K 小子集和
  • 最大无重复子串长度
  • 根据身高重建队列
  • 复原 IP 地址

再给三道完整原题感受一下难度与坑:

题目 1 · 码流等分 有一段只含 0/1 的二进制码流,请把它切成 3 段,使每段的二进制值相同。做不到输出 -1;若码流全为 0,也视为做不到,输出 -1。 样例:输入 100101000001001010000100101 → 输出 100101 00000100101 0000100101(三段都是十进制 37)。 思路提示:先数 1 的总数,必须能被 3 整除;每段含 1 的个数相同,再按"第 1、2、3 段各自的起始 1"逐位比对尾部对齐。

题目 2 · 薪酬统计 N 名员工按职级由低到高给出薪酬数组 L,当"低职级薪酬 > 高职级薪酬 × 2"时该低职级员工需调整薪资,调整在统计完成后统一进行。求全公司需要调整的总数。 样例:[1,3,2,3,1] → 输出 2。

题目 3 · 佩奇和乔治能量豆大 PK 盒中若干能量豆,每轮取两块 PK:相等则双双消失,不等则放回差值的绝对值。多轮后最多剩一块,返回剩下能量豆的最小可能能量值,没有剩余则返回 0。 样例:2 7 4 1 8 1 → 输出 1。

机考经验(真实踩坑):

  • 输入可能只测部分情况,提交前一定要过边界(全 0、超长、重复值)。
  • 先做简单题快速拿分,把时间留给最后一题。
  • 题库不算太大,多刷相似题型;不少人前两题就是"刷到过类似的"。
  • 平时太依赖 IDE 补全的同学要小心:机考时连一个长度判断都要来回改,练无补全手写。

三、综合测评:不算分,但会卡人

性格测评没有技术难度,只记一条铁律:保持前后一致。选项贴近"积极向上、情绪稳定、能完成任务、重视团队协作"。真实作答,别前后矛盾。

四、技术一面:项目深挖是主战场

典型流程:自我介绍 → 简历挖项目 → 基础八股 → 手撕代码。八股反而问得很基础,真正的时间和分数都在项目上。

常见八股真题:

  • 栈 vs 堆的区别;内存泄漏如何避免
  • const int *p 与 int * const p 的区别
  • C 与 C++ 的区别,C++11 用得多吗
  • TCP / UDP 区别,粘包拆包怎么理解
  • 用过什么数据结构;哈希表键值冲突怎么处理
  • 树的 BFS 和 DFS
  • 手撕:提取合法 MAC 地址、快速选择排序、LeetCode 27 移除元素、无重复子串、环形缓冲区

一个经典的项目深挖追问链(同学讲"串口用 DMA 接收、降低 CPU 占用"后,面试官连问):

  1. 为什么用 DMA?不用串口中断行不行?
  2. DMA 接收不定长数据,怎么判断一帧结束?
  3. 空闲中断触发时,DMA 还在继续搬数据吗?
  4. 读取接收长度时新数据又进来了,怎么办?
  5. 如果连续来了两帧,上一帧还没处理完,会不会覆盖?
  6. 环形缓冲区由中断写、任务读,怎么保证并发安全?
  7. volatile 有什么作用?能不能保证原子性?
  8. 中断和主循环共享一个变量,只加 volatile 是否足够?
  9. static 修饰局部变量和全局变量分别有什么影响?头文件里定义 static 全局变量会发生什么?
  10. 结构体为什么要内存对齐?怎么算结构体大小?
  11. memcpy 遇到内存区域重叠会怎样?
  12. 指针数组和数组指针有什么区别?

面试官还会补一道综合排查题:设备运行中每隔几分钟少一帧,且不是稳定复现——怎么查? 高分接法不是立刻报一串猜测,而是先分层:用逻辑分析仪抓 RX 引脚,确认数据有没有到 MCU;线上就缺帧就往发送端/硬件链路查;再结合"只有负载高时才出现"这条线索,指向高优先级任务长期占用 CPU、接收任务来不及消费、缓冲区被撑满,或临界区太长导致中断响应延迟。

📖 嵌入式八股阅读原文:C 语言 / 单片机 / 通信协议 / RTOS 的完整八股整理,最下方阅读原文

五、技术二面:启动流程、RTOS、总线

二面继续深挖项目,同时压更底层的技术点。三块高频区域:

① 启动流程 / 链接脚本

  • .data 为什么要从 Flash 复制到 RAM?
  • .bss 为什么只需清零、不用存初始值?
  • 启动文件里的中断向量表放在哪里?
  • 程序能不能直接在 RAM 里运行?
  • 改了链接脚本,最容易出什么问题?

② RTOS(FreeRTOS 方向)

  • 互斥量和二值信号量有什么区别?为什么互斥量一般有优先级继承、信号量没有?
  • 优先级反转是怎么发生的?
  • 中断里为什么不能直接调用普通队列发送函数?
  • 任务栈溢出有哪些表现?怎么定位?
  • 一个高优先级任务不阻塞,会发生什么?

③ 总线协议

  • I2C 为什么要用开漏输出 + 上拉电阻?总线上两设备同时发不同电平会怎样?
  • SDA 被从机一直拉低,主机怎么恢复?
  • SPI 和 I2C 的对比与适用场景
  • I2C 通信画图:先传什么、为什么这样设计、应答位作用
  • I2C 死锁问题;Linux 下接入十几个传感器怎么处理(设备树角度)
  • flash / ROM / RAM / EEPROM 的区别与应用

手撕:快速选择排序(当场在 Clion 里写,需能跑通)。

二面经验:提前准备 1–2 个能深入讲的技术难点案例;遇到不会的先说思路、再补细节,比硬编更保命。

六、主管面 / HR 面:看的是"能不能融进来"

时长 20–45 分钟,风格差异极大:

  • 轻松型(约八成):聊职业规划、城市意向、团队合作。
  • 压力型:继续问技术,比如 Linux 内核源码、CPU 架构、嵌入式项目细节。

高频真题:

  • 了解华为的文化吗?能接受高强度加班吗?
  • 项目/实习里最难的问题是什么,怎么解决的?
  • 最大的一次挫折是什么,怎么调整的?
  • 和团队有分歧怎么办?你的想法被别人否定过吗?
  • 为什么想进华为?为什么选这个城市(东莞/珠三角等)?
  • 职业规划是什么?愿不愿意接受异地或海外派驻?
  • 期望薪资是多少?(本科会问"为什么不考研")
  • 英语不错,讲一段英语(内容自选)

应对要点:

  • 主管面更看综合素质与稳定性。加班态度别说"完全不能接受";城市意向要讲明白(产业链集中、机会多)。
  • 用 STAR 法则:难题 + 怎么做 + 结果。
  • 别只展示技术多强,也要让对方感到你好沟通、愿配合、能把事做成。

七、高频八股速查表

  • C 语言:volatile / static / const 指针 / 内存对齐 / memcpy 重叠 / 指针数组与数组指针 / 大小端
  • 内存与启动:.data/.bss/中断向量表 / 链接脚本 / 内存泄漏
  • 单片机与总线:GPIO、中断、DMA、定时器;UART / I2C / SPI / CAN;开漏上拉、应答位
  • RTOS:任务调度、信号量 vs 互斥量、优先级反转、上下文切换、栈溢出
  • 操作系统 / Linux:进程线程协程、IO 多路复用(select/epoll)、设备树、常用命令(ps/ls/top/grep/sed/awk/chmod/lsof/netstat)
  • 数据结构算法:链表、栈队列、树、哈希、位运算、滑动窗口、DP

八、面试官到底在追什么

把这位同学的话放在最后:

"八股背得再熟也没用,只要项目里有一句话说得含糊,后面就要被追到不会为止。"

所以真正要练的不是"背答案",而是两件事:

  1. 把简历上每一句话都问到第三层——你写了 DMA,就要能答到"中断与任务并发读写怎么保证安全"。
  2. 场景题先分层再给方案——先判断问题在硬件、驱动还是调度层,再设计验证手段,而不是一上来报一串可能性。

九、备考注意

  • 机考:LeetCode Hot 100 + 字符串/数组/链表/二叉树/基础 DP,重点练无补全手写与边界用例。
  • 八股:按上面第七节的模块逐条自测,答不出的记下来补。
  • 项目:挑 1–2 个最熟的,做"三层追问"演练,准备数据量、时序、异常处理的细节。
  • 主管面:准备 5 个 STAR 故事(难题、挫折、分歧、协作、成长),中英各一版。
  • 综测:真实作答,保持前后一致。

本文所有题目均来自公开分享的真实面经与笔试真题,已做去重与归类整理。具体部门、轮次与题目以你实际面试为准。


嵌入式面试八股合集见原文

评论区扣下你想看的公司,下一篇优先安排。

#嵌入式面试 #华为面经 #嵌入式软件开发 #秋招 #校招

相关学习资料