🧠 智能传感器 · 算法移植与优化
⭐
📘 30章 从入门到实战
01
课程导论与芯片选型
传感器芯片概述
STM32/ESP32/ARM
算法移植挑战
02
开发环境搭建
Keil/IAR/CubeIDE
交叉编译链
J-Link/ST-Link
03
C语言基础回顾 (上)
指针与内存
结构体联合体
位运算技巧
04
C语言基础回顾 (下)
函数指针回调
volatile
中断服务函数
05
传感器数据采集基础
I2C/SPI/UART
寄存器读写
数据手册阅读
06
算法原型与浮点运算
FPU配置
软/硬浮点
Q格式定点数
07
算法移植第一步
数据类型映射
内存对齐
堆栈估算
08
定点数优化实战
Q格式详解
浮点转定点
精度补偿
09
内存优化策略
SRAM/Flash布局
静态/动态分配
内存池技术
10
代码优化基础
编译器优化等级
循环展开
内联函数
11
算法加速之查表法
三角函数查表
滤波器系数查表
查表+插值
12
算法加速之DSP指令集
CMSIS-DSP库
FIR/FFT/矩阵
函数调用
13
算法加速之并行计算
SIMD/NEON
数据级并行
循环向量化
14
实时操作系统RTOS基础
FreeRTOS任务
信号量与队列
任务间通信
15
RTOS下的算法任务设计
优先级分配
时间片管理
看门狗监控
16
低功耗算法设计
睡眠/唤醒源
DVFS
事件驱动架构
17
传感器数据预处理
滑动平均滤波
中值滤波
卡尔曼滤波
18
特征提取算法移植
时域特征
频域特征
FFT/能量谱
19
机器学习算法移植 (上)
决策树/KNN
朴素贝叶斯
模型参数导出
20
机器学习算法移植 (下)
TinyML
TensorFlow Lite Micro
模型推理优化
21
神经网络量化
INT8量化原理
量化感知训练
反量化操作
22
算法性能剖析
DWT计时
Cycle计数
Profiling工具
23
代码尺寸优化
链接脚本定制
函数重定位
LTO优化
24
多核与异构计算
双核通信
Mailbox/共享内存
M4/M7任务分配
25
安全与可靠性
看门狗定时器
CRC校验
固件加密/安全启动
26
调试与日志系统
SWO调试
RTT日志
断言与错误处理
27
单元测试与持续集成
Unity/CMock
Jenkins/GitHub Actions
自动化测试
28
实战项目一:手势识别
加速度计
MATLAB→STM32
算法移植
29
实战项目二:声源定位
麦克风阵列
定点化+NEON
算法优化
30
课程总结与进阶方向
RISC-V架构
NPU硬件加速
边缘AI趋势