嵌入式

4 阅读1分钟

单片机硬件 → ARM 架构 → Linux 内核 → 设备树 → 驱动开发

真正的底层 = 硬件原理 + 寄存器 + 总线 + 时钟 + 中断 + Linux 内核 + 驱动

第 1 层:单片机底层(硬件根基)

只学硬件本质,不学业务

  • GPIO / 引脚复用
  • 寄存器操作(必须懂)
  • 时钟树、分频、锁相环
  • 中断原理、优先级
  • UART / I2C / SPI 总线时序
  • DMA 原理
  • 看门狗、电源管理

目标:懂硬件怎么工作,而不是会写业务。


第 2 层:ARM 架构底层(真正的芯片底子)

  • Cortex-A 与 Cortex-M 区别
  • MMU(内存管理单元)
  • 地址映射、虚拟地址、物理地址
  • 异常、中断控制器(GIC)
  • 缓存机制
  • 启动流程(Bootloader 本质)

这是 Linux 能跑起来的前提。


第 3 层:Linux 内核底层(系统核心)

  • 内核启动流程
  • 进程管理、调度
  • 内存管理(malloc 底层)
  • 中断子系统
  • 内核同步(自旋锁、信号量)
  • 内核调试手段(printk、strace、pstore)

懂内核,才算真正懂 Linux。


第 4 层:设备树 + 驱动框架(纯底层核心)

这就是你吃饭的铁饭碗

  • 设备树(DTS)语法与原理
  • 平台总线(platform bus)
  • 字符设备驱动
  • I2C / SPI 子系统
  • V4L2 摄像头驱动
  • ALSA 音频驱动
  • MIPI、CSI、DSI 底层
  • 时钟、电源、复位驱动

驱动 = 嵌入式底层的天花板。