📖 技术文库

STM32 / Arduino / RTOS / 嵌入式 知识文章
展开全部分类 (54)
ESP32 入门:WiFi、蓝牙与 Arduino 开发实战
ESP32 WiFi · 👁 33 阅读
ESP32 凭借双核处理、内置 WiFi 与蓝牙模块,成为物联网开发的明星芯片。本文面向有嵌入式基础的开发者,详解如何在 Arduino IDE 下配置 ESP32 开发环境,深入解析 WiFi 的 AP/STA 工作模式、经典蓝牙与 BLE 的编程要点,并给出可直接运行的代码示例与工程注意事项,助你快速从零构建无线应用。
Arduino 进阶:定时器中断、PWM 与 PID 控制的深度融合
Arduino 进阶 · 👁 111 阅读
本文面向具备一定基础的嵌入式开发者,深入探讨 Arduino 平台上的定时器中断、硬件 PWM 以及 PID 控制算法的协同设计。通过剖析 AVR 内核定时器工作原理,演示如何配置 CTC 模式产生精确中断,并利用 PWM 输出驱动执行器,最后结合增量式 PID 实现闭环控制。文章提供完整代码示例与工程注意事项,帮助读者摆脱 delay() 阻塞式编程,掌握实时控制系统的核心技巧。
STM32 掉电保存数据:Flash 写入与 EEPROM 模拟
STM32 存储 · 👁 41 阅读
STM32 内置 Flash 不仅用于存储代码,也可在掉电时保存关键数据。本文从 STM32 Flash 硬件特性出发,讲解扇区擦除、编程操作及常见陷阱,并实现一套轻量级的 EEPROM 模拟方案,适用于无外部 EEPROM 的嵌入式系统。通过固件库/LL 库代码示例,帮助开发者安全、高效地管理掉电存储。
STM32 串口接收不定长数据:空闲中断 + DMA 方案详解
STM32 串口 · 👁 25 阅读
在嵌入式开发中,串口接收不定长数据是常见需求,如接收AT指令、传感器数据等。传统中断逐字节接收方式CPU负担重,且难以处理帧边界。本文基于STM32 HAL库,介绍利用空闲中断(IDLE)结合DMA实现高效、可靠的不定长数据接收方案,包括原理剖析、CubeMX配置步骤、完整代码示例及关键注意事项,帮助你彻底掌握这一实用技巧。
STM32 系统时钟树:PLL 倍频与 RCC 配置深度解析
STM32 时钟 · 👁 25 阅读
时钟是 STM32 运行的心脏,而系统时钟树决定了 CPU 与外设的时序基础。本文深入讲解 STM32 时钟树结构、PLL 倍频原理,并通过 RCC 寄存器配置示例,演示如何将 HSE 经 PLL 倍频到 72MHz(以 STM32F1 为例),帮助你绕过时钟配置的常见坑,打造稳定可靠的嵌入式系统。
STM32 外部中断 EXTI 配置实战:边沿触发与中断优先级详解
STM32 中断 · 👁 39 阅读
外部中断(EXTI)是 STM32 实现 GPIO 快速响应的核心机制,广泛应用于按键检测、编码器信号、报警输入等场景。本文抛开 HAL 库的封装,从寄存器与 Cortex-M3 NVIC 层面剖析 EXTI 的边沿触发选择、中断/事件区分以及优先级分组策略,并给出基于标准外设库的完整配置示例,帮助你彻底理清外部中断的配置脉络,写出高效可靠的响应代码。
STM32 SPI 通信详解:主从模式、时序与 Flash 读写实战
STM32 SPI · 👁 25 阅读
SPI 是嵌入式系统中常用的高速同步串行接口。本文将深入解析 SPI 协议的主从模式与四种时序配置,结合 STM32 HAL 库给出完整配置流程,并以 W25Q64 Flash 为例演示如何通过 SPI 进行设备 ID 读取、数据写入与读取,帮助开发者快速掌握 STM32 SPI 通信的实战技能。
单片机按键消抖:硬件与软件方案对比与嵌入式IO最佳实践
嵌入式 IO · 👁 28 阅读
按键是嵌入式系统最基础的输入设备,但机械触点的抖动会导致IO电平在数毫秒内多次跳变,轻则误触发,重则系统逻辑混乱。本文从抖动产生的物理机理出发,深入对比RC硬件消抖、施密特触发器、软件延时消抖与状态机消抖的优缺点,并结合实际代码给出不同场景下的选型建议,帮助嵌入式开发者构建稳定可靠的按键输入方案。
STM32 PWM 输出全解析:从舵机控制到电机调速与LED调光
STM32 PWM · 👁 33 阅读
PWM(脉冲宽度调制)是嵌入式系统中最常用的输出手段之一,通过调节占空比和频率,可以精确控制舵机角度、电机转速和LED亮度。本文以STM32定时器为核心,深入讲解PWM的工作原理、定时器配置方法,并给出基于HAL库和标准库的完整代码示例,帮助开发者快速掌握PWM应用的核心技巧。
FreeRTOS 在 STM32 上的移植与任务调度机制详解
RTOS RTOS · 👁 45 阅读
本文以STM32F103为例,系统讲解FreeRTOS的移植流程与任务调度原理。从下载源码、配置内核、修改中断到编写多任务Demo,逐步演示如何让RTOS在Cortex-M3上高效运行,并深入剖析基于优先级抢占式调度与时间片轮转的协同机制,帮助嵌入式开发者快速上手FreeRTOS。
编码器与 STM32:正交解码测速实战指南
STM32 编码器 · 👁 40 阅读
增量式编码器通过正交信号精确反馈电机位置与速度,而 STM32 的定时器正交解码器(Encoder Interface)可直接对 AB 相脉冲进行硬件计数,极大降低 CPU 负载。本文从正交信号原理出发,讲解 STM32 定时器编码器模式的配置流程,并给出完整的 CubeMX 初始化代码与测速换算方法,帮助开发者快速实现高精度测速。
STM32 低功耗模式深度解析:睡眠、停止与待机的原理与实战
STM32 低功耗 · 👁 37 阅读
在电池供电的物联网设备中,功耗控制是产品成败的关键。STM32 提供了多种低功耗模式,其中睡眠、停止和待机是最常用的三种。本文将从内核时钟、电压调节器和唤醒源三个维度剖析这三种模式的本质差异,并结合实际代码演示如何通过 HAL 库快速配置和切换,同时给出 PCB 设计与软件层面的避坑指南。