The notebook

技术笔记

从芯片、固件到工具链,把实践中的问题拆开,留下可复用的答案。

01

Cortex-M 单片机启动流程

1. 硬件基础与地址空间 1.1 MCU 组成与存储特性 单片机简化模型为若干部件经总线连接: 部件 作用 掉电后 CPU 内核(Cortex-M4) 取指、译码、执行 —— Flash 存放代码与常量 内容保留 SRAM 存放运行时变量、栈、堆 内容 …

02

MCU 存储体系架构详解

1. 存储体系总体架构 MCU 的存储系统采用分层设计,以 CPU 核心为中心向外辐射,形成速度递减、容量递增、掉电保持特性各异的多级结构。该设计的核心目标是在访问速度、存储容量、成本与功耗之间取得平衡。

03

CAN 总线技术笔记

1. 总线架构与通信模型 1.1 多主架构 无主从之分,任意节点均可主动抢占总线发送数据。 广播式通信:所有节点接收总线上的全部帧,通过 ID 过滤决定是否处理。 1.2 与 SPI/I2C 的差异 维度 CAN SPI I2C 主从关系 多主, …

04

LIN 总线技术笔记

1. 总线架构与通信模型 1.1 单主多从架构 拓扑为单主多从:1 个主节点 + 最多 15 个从节点。 主节点负责总线调度,从节点仅在收到对应帧头后方可发送响应。 无主从竞争:不存在总线仲裁机制,通信时序由主节点完全控制。 主节点通常同时作为 CAN …

05

嵌入式通信总线与 OSI 层级对应关系

1. 网络通信分层框架 1.1 OSI 七层参考模型 OSI(Open Systems Interconnection)由 ISO 提出,描述网络通信的分层架构。每一层只与相邻层交互,通过接口提供服务。

06

Keil 中启用 FreeRTOS Component Viewer 调试的完整流程

1. 背景:.scvd 文件的作用 1.1 文件定义 .scvd(System Component Viewer Description)是 Keil 定义的 XML 格式描述文件,用于告知 Keil 调试器如何在目标内存中解析特定 RTOS 的内核数 …

07

FreeRTOS 手动移植 Keil 工程笔记(Week 3 Day 1-2)

1. 环境选择与前提 1.1 开发环境 组件 版本/型号 说明 芯片 STM32F407VET6 Cortex-M4F,含 FPU IDE Keil MDK 完整版 无 32KB 代码限制,支持 RTOS Plugin 编译器 ARM Compiler …

08

FreeRTOS 学习 Week 2 补充内容:高频未学概念与工程盲区

前置:已完成 Week 2 Day 1~Day 5(Queue、Semaphore、Mutex、Event Group) 1. 任务通知(Task Notification) 1.1 实验目标 将 Day 3 的"串口中断 + 二值信号量" …

09

FreeRTOS 核心概念与机制

1. 任务管理 (Task Management) FreeRTOS 不存在进程概念,仅提供任务抽象。所有任务运行于单一地址空间内,依赖任务优先级与调度器完成 CPU 时间分配。 1.1 任务控制块 (TCB) 每个任务对应一个 TCB(Task …

10

FreeRTOS 学习 Week 2:任务间通信(Queue、Semaphore、Mutex、Event Group)

Day 1:Queue 基础 1.1 实验目标 两个任务通过 Queue 传递数据,实现零拷贝通信: Task_Producer:每 1000ms 向 Queue 发送一个 uint32_t 计数 Task_Consumer:阻塞等待 Queue,收到 …