STM32学习笔记
文章平均质量分 94
时光の尘
这个作者很懒,什么都没留下…
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
【STM32】配置VS Code + Claude Code辅助Keil开发STM32环境搭建指南
对于嵌入式开发者来说,Keil MDK-ARM(Keil5)长期以来都是STM32开发的主流工具。但它的编辑器功能简陋、界面陈旧,与现代开发工具相比显得格格不入。而Visual Studio Code(VS Code)凭借其轻量级、高扩展性和丰富的插件生态,正成为越来越多开发者的首选。本文将带你一步步将STM32开发环境迁移到VS Code原创 2026-06-08 06:00:00 · 1002 阅读 · 0 评论 -
【STM32实战】ESP8266 通过 MQTT 协议对接 OneNET 云平台实现数据上传与下发(源码可直接移植)
内含源码,可直接移植。本文介绍了ESP8266-01S WiFi模块的使用方法,包括硬件连接、AT指令操作、固件烧录以及通过MQTT协议连接OneNET物联网平台的完整流程。文章详细讲解了ESP-01S的引脚功能、AT指令分类及使用方法,并提供了固件升级步骤。重点阐述了如何通过AT指令配置MQTT参数、订阅主题、上传传感器数据(如温湿度)和接收云端下发的控制指令(如LED开关)。原创 2026-05-27 06:00:00 · 513 阅读 · 0 评论 -
【LoRa】速通LoRa相关知识点名词
本文系统介绍了LoRa低功耗广域网技术。首先对比了各类通信技术的优缺点,指出LoRa兼具远距离和低功耗的优势。详细解析了LoRa的物理层调制技术(Chirp扩频)和系统架构(终端-网关-服务器),重点阐述了三大核心参数:扩频因子(SF)、带宽(BW)和编码率(CR)对性能的影响。文章还分析了接收灵敏度、通信距离等关键指标,并介绍了LoRaWAN的三种工作模式(Class A/B/C)及其适用场景。通过参数优化组合,LoRa可实现10km+通信距离和10年以上的电池寿命,特别适合智能表计、环境监测等物联网应用原创 2026-05-25 23:00:00 · 534 阅读 · 0 评论 -
【OTA】手把手写BootLoader程序·通过串口IAP实现加载外部Flash芯片程序到STM32的A区
内含源码可直接移植,本文详细介绍了基于STM32的BootLoader程序开发过程,重点实现了OTA(空中升级)功能。主要内容包括: OTA升级控制机制、 串口命令行交互、Xmodem协议实现以及固件更新流程,设计7个功能菜单,包括擦除分区、固件下载、版本管理等,通过SecureCRT工具实现交互, 实现从指定区块读取固件并写入内部Flash的功能,包含地址计算和进度显示。原创 2026-05-25 06:00:00 · 634 阅读 · 0 评论 -
STM32学习·HAL库速通篇(十二)·通用定时器(TIM2、TIM3、TIM4、TIM5)
本文详细介绍了STM32定时器(TIM)的功能特性与使用方法。主要内容包括:TIM的分类及特点,分为基本定时器(TIM6/7)、通用定时器(TIM2-5)和高级定时器(TIM1/8);定时器核心工作原理,重点解析预分频器、计数器和自动重装载寄存器的时序关系;工程配置步骤,包括时钟设置、中断配置等;4) 实际应用示例,通过HAL库函数实现按键控制LED闪烁频率变化功能。文章深入浅出地讲解了定时器从原理到实践的全过程,为STM32定时器开发提供了实用指导。原创 2026-03-09 06:00:00 · 676 阅读 · 0 评论 -
STM32学习·HAL库速通篇(十一)·ADC电压采集
本文介绍了STM32中ADC(模数转换器)的基本原理与配置方法。主要内容包括:1)ADC工作原理,重点讲解了逐次逼近型ADC0809的结构与STM32内部ADC框图;2)ADC基本结构配置,详细说明GPIO口设置、转换器配置、采样时钟选择(最大14MHz)、四种转换模式(单次/连续、扫描/非扫描)以及数据对齐方式;3)实际工程应用,通过STM32CubeMX配置PA6引脚为ADC输入通道,实现单次转换模式的电压采集,并配合串口打印ADC原始值(0-4095)和转换后的电压值(0-3.3V)。原创 2026-03-05 23:00:00 · 861 阅读 · 0 评论 -
STM32学习·HAL库速通篇(十)·串口(USART)通过DMA收发不定长数据
本文详细介绍了STM32中DMA(直接存储器访问)的基本原理与应用实现。首先阐述了DMA的概念、存储器映像和基本结构,包括触发源选择、数据宽度与对齐等关键技术点。接着讲解了在STM32CubeMX中的工程配置方法,重点说明DMA通道、传输方向、优先级等参数的设置。文章还分析了HAL库中关键的DMA函数,如HAL_UARTEx_ReceiveToIdle_DMA()等的工作原理。最后通过实例演示了如何使用DMA实现串口数据收发,包括printf重定向、缓冲区初始化及回调函数处理等完整实现过程。原创 2026-03-05 06:00:00 · 1211 阅读 · 0 评论 -
STM32学习·HAL库速通篇(九)·串口(USART)接收数据运用
本文详细介绍了STM32串口通信的实现方法,包括物理层和协议层的概念解析。物理层区分了TTL和RS-232电平标准,协议层说明了数据包格式。文章重点讲解了三种接收方式:阻塞式接收定长数据,通过HAL_UART_Receive()实现;中断式接收定长数据,使用HAL_UART_Receive_IT()和回调函数处理;中断式接收不定长数据,利用HAL_UARTEx_ReceiveToIdle_IT()和空闲中断检测。每种方法都配有工程配置说明、代码示例和实际测试结果,完整工程资源可通过CSDN下载。原创 2026-03-04 23:00:00 · 1074 阅读 · 0 评论 -
STM32学习·HAL库速通篇(八)·串口发送运用(USART)
本文介绍了STM32串口通信的基本原理与HAL库实现方法。主要内容包括:1)串口通信分层模型(物理层与协议层),物理层涉及TTL与RS-232电平标准转换;2)协议层数据包格式(起始位、数据位、校验位和停止位);3)通过STM32CubeMX配置USART1为异步模式,设置波特率115200;4)使用HAL_UART_Transmit()函数实现单字节和字符串发送;5)通过重写fputc()函数实现printf()重定向到串口输出。文章提供了完整的工程配置步骤和代码示例,适合STM32初学者快速掌握串口通信原创 2026-03-04 06:00:00 · 1314 阅读 · 0 评论 -
STM32学习·HAL库速通篇(七)·外部中断——EXTI
本文介绍了STM32的EXTI外部中断模块,详细讲解了其工作原理和配置方法。主要内容包括:1) EXTI支持的四种触发方式(上升沿、下降沿、双边沿和软件触发);2) EXTI的基本结构和工作流程,说明如何通过AFIO模块选择GPIO引脚;3) 中断优先级的设置规则;4) 通过STM32CubeMX进行工程配置的具体步骤;5) 关键代码实现,包括中断服务函数和回调函数的编写。最后提供了一个完整的工程实例,演示如何通过按键触发外部中断来控制LED灯状态。原创 2026-03-03 22:00:00 · 891 阅读 · 0 评论 -
STM32学习·HAL库速通篇(六)·系统定时器——SysTick
本文介绍了STM32中SysTick系统定时器的原理与应用。SysTick是CM3内核内置的24位递减计数器,通过系统时钟驱动实现精确计时,具有跨芯片型号的通用性。文章详细讲解了其工作原理:从重装载值开始递减,归零时触发中断并自动重载,形成周期性定时。通过HAL库配置SysTick为1ms时基源,并在中断服务函数中实现500msLED翻转功能。实验展示了如何利用SysTick中断构建系统时基,完成周期性任务调度。原创 2026-03-03 06:00:00 · 1290 阅读 · 0 评论 -
STM32学习·HAL库速通篇(五)·GPIO输入与按键控制LED灯开关
本文介绍了STM32中GPIO输入功能的应用,重点讲解按键检测的实现方法。首先概述了GPIO的基本功能,包括输入检测外部电平和输出控制设备状态。然后详细说明了按键消抖原理,并通过原理图展示了硬件连接方式。在工程创建部分,演示了如何配置GPIO引脚为输入模式并设置下拉电阻。文章重点讲解了HAL_GPIO_ReadPin函数的工作原理,该函数用于读取GPIO引脚状态。最后给出了完整的代码示例,实现通过两个按键分别控制三颗LED灯的亮灭功能。原创 2026-03-02 23:00:00 · 1849 阅读 · 0 评论 -
STM32学习·HAL库速通篇(四)·GPIO输出与点灯实验
本文介绍了基于STM32的GPIO输出功能实现LED流水灯实验。首先概述了GPIO的基本概念和输入输出功能,重点讲解了输出模式的控制原理。通过原理图分析LED连接方式,详细说明了在STM32CubeMX中配置GPIO引脚为输出模式的步骤。文章重点解析了两个关键函数:HAL_GPIO_WritePin()用于控制引脚电平,HAL_Delay()实现毫秒级延时。最后展示了主函数中实现三色LED交替点亮的代码逻辑,通过500ms延时实现流水灯效果。实验完整展示了GPIO输出功能的基本应用方法。原创 2026-03-02 06:00:00 · 1116 阅读 · 0 评论 -
【OTA】手把手写BootLoader程序·无OTA事件B区跳转到A区
系列文章,内含源码和跳转链接,可自行移植,本文主要介绍了STM32 OTA升级中内存分区的设计与实现。通过标志位判断实现无OTA事件时从B区跳转到A区;详细阐述了跳转过程的实现方法,包括栈指针切换、外设复位等关键步骤;使用DMA环形缓冲区优化串口通信。这种分区设计避免了OTA升级过程中设备变砖的风险,确保即使升级失败也能通过B区恢复。原创 2026-02-02 06:00:00 · 1032 阅读 · 0 评论 -
【STM32】两万字详解SD卡移植最新版本FatFs文件系统(ff16)
本文介绍了在STM32平台上移植FatFs文件系统到SD卡的全过程。首先概述了SD卡的基本原理和FatFs文件系统的特性,然后详细讲解了移植步骤:包括修改ffconf.h配置文件、实现diskio.c底层驱动接口(初始化、读写扇区等),以及主函数中对文件系统的挂载、格式化、文件读写等操作。重点分析了SD卡读写对齐处理、扇区大小配置等关键技术点,并提供了完整的测试代码。最终实现了在SD卡上创建FAT32文件系统,完成文件读写功能。原创 2026-01-19 22:00:00 · 2399 阅读 · 0 评论 -
【STM32】吃透 SDIO 驱动,八万字详解 SD 卡底层原理与实战开发
本文阐述 STM32 通过 SDIO 接口读写 SD 卡的实现方案。首先介绍 SD 卡物理结构、工作原理及 SPI/SDIO 通信模式,说明卡识别(CMD0、CMD8 等命令初始化)与数据传输两阶段流程;随后描述 STM32 SDIO 外设功能及 DMA 传输支持。重点解析 SD_Init () 初始化、SD_ReadBlock ()/SD_WriteBlock () 读写、SD_Erase () 擦除等核心函数逻辑,介绍擦除测试、单块 / 多块读写测试等验证方法及辅助函数。原创 2026-01-19 06:00:00 · 1577 阅读 · 0 评论 -
【STM32】四万字详解最新版本(ff16)FatFs文件系统移植(库函数版本)
本文详细介绍了FatFs文件系统的移植与应用过程。首先阐述了文件系统的基本概念及其优势,包括数据定位、空间管理和格式解析等功能。随后重点讲解了FatFs文件系统的特点、配置方法和移植步骤,包括ffconf.h的参数配置和diskio.c的驱动实现。通过实际案例演示了在STM32平台上对W25Q64 Flash芯片的文件系统初始化、格式化、文件读写等操作。文章提供了完整的代码实现和详细的参数说明,特别强调了扇区大小设置、对齐方式等关键配置项。最后通过串口输出验证了文件系统的成功移植。原创 2025-12-29 22:00:00 · 5078 阅读 · 6 评论 -
【OTA】手把手写BootLoader程序·读写内部FLASH
本文详细介绍了STM32内部FLASH存储器的操作与应用。详细介绍了 FLASH存储器结构解析,包含程序存储器、系统存储器和选项字节的功能说明;FLASH写入操作流程,涵盖解锁、擦除(页擦除和整片擦除)及数据写入的具体步骤;工程空间分布查看方法,通过Utility软件和.map文件分析存储占用情况;代码实现部分,提供了从读取到编程的完整函数实现,包括32位字、16位半字和8位字节操作;掉电数据保存方案,通过标志位检测和SRAM数据同步实现数据持久化。最后通过主函数验证了FLA原创 2025-12-11 22:44:02 · 1256 阅读 · 0 评论 -
【OTA】手把手写BootLoader程序·硬件SPI读写Flash芯片(W25Q64)
本文详细介绍了SPI协议及其在STM32上的实现,重点讲解了W25Q64 Flash存储器的操作。主要内容包括:SPI协议基础:四线制通信、主从模式、四种工作模式(CPOL/CPHA组合), STM32 SPI外设配置:引脚定义、时钟控制、数据收发机制;W25Q64特性:8MB容量、页/扇区结构、指令集(擦除、读写等);关键代码实现:SPI初始化、页编程、扇区擦除、跨页写入等操作。通过实际示例演示了非对齐地址的数据读写,为嵌入式存储开发提供了完整解决方案。原创 2025-12-11 06:00:00 · 2436 阅读 · 0 评论 -
【OTA】手把手写BootLoader程序·软件IIC读写EEPROM(AT24C02)
本文详细介绍了STM32中I2C总线协议的原理与应用,展示了基于STM32的I2C编程实践,涵盖GPIO初始化、模式配置、单字节/多字节读写等核心功能的代码实现,概述了I2C的基本特性,包括其同步半双工通信方式、带应答机制和支持多设备挂载的特点。接着深入讲解了I2C的物理层设计要点,如开漏输出模式和上拉电阻的选择,最后以AT24C02 EEPROM为例,详细说明了设备地址设置、读写时序控制等具体应用技巧,并提供了完整的测试验证方案。原创 2025-12-10 22:00:00 · 1904 阅读 · 0 评论 -
【OTA】手把手写BootLoader程序·串口(USART)通过DMA环形缓冲区接收数据
本文介绍了STM32中DMA(直接存储器访问)的应用实现,重点阐述了USART1的DMA收发设计。文章首先概述DMA的基本原理和优势,然后详细讲解两种设计思路:无缓冲区直接处理和环形缓冲区异步处理。在代码实现部分,依次说明了GPIO引脚初始化、USART工作模式配置、DMA发送/接收设置、NVIC中断配置等关键步骤。特别对环形缓冲区管理进行了深入分析,包括缓冲区结构设计、空闲中断处理、数据拷贝机制和DMA重置流程。最后通过主函数示例展示了数据接收和回显功能,验证了缓冲区设计的有效性。原创 2025-12-10 06:00:00 · 1124 阅读 · 0 评论 -
【STM32】一文详解硬件SPI读写Flash芯片W25Q64
本文详细介绍了SPI协议及其在STM32上的应用实现。主要内容包括:1. SPI协议层详解,包括四种工作模式、起始/终止条件和时序;2. STM32 SPI外设架构,涵盖引脚配置、时钟控制、数据收发流程;3. W25Q64 Flash存储器的特性、指令集和操作原理;4. 完整的代码实现方案,包括SPI初始化、数据读写、Flash设备ID读取、扇区擦除、页编程等核心功能。文章通过理论分析与代码示例相结合的方式,系统阐述了如何利用STM32的SPI接口驱动W25Q64 Flash存储器,为嵌入式存储应用开发提供原创 2025-12-09 21:30:00 · 2672 阅读 · 1 评论 -
非易失性存储器·W25Q64使用手册解读
本文介绍了W25Qxx系列NorFlash存储器的技术特性与应用方法。阐述了W25Q64控制逻辑中的状态寄存器机制和存储逻辑的分区管理(页/扇区/块);4. 核心指令:重点介绍了写使能(06h)、写禁止(04h)、读写状态寄存器(05h/01h)和读数据(03h)等关键指令的使用方法。原创 2025-11-15 22:14:52 · 1985 阅读 · 0 评论 -
【STM32】SPI通讯协议入门解析
本文详细介绍了SPI(串行外设接口)协议及其在STM32中的应用。主要内容包括SPI协议层(四种工作模式、起始/终止条件)、STM32的SPI外设结构(通讯引脚、时钟/数据控制逻辑)以及相关库函数(初始化结构体、数据收发函数等)。SPI作为全双工同步总线,采用主从架构和片选信号机制,支持最高36Mbps通信速率。文章还阐述了STM32中SPI的配置方法,包括工作模式选择、时钟极性和相位设置等关键参数,为开发者提供了详细的SPI接口使用指南。原创 2025-11-15 22:15:31 · 1542 阅读 · 0 评论 -
【STM32】I2C协议使用浅析·硬件I2C代码编写
本文详细介绍了STM32的I2C总线接口,包括其物理层、协议层和硬件实现。主要内容涵盖I2C的基本特性(两根通信线SCL和SDA、同步半双工通信、支持多设备挂载)、物理层连接方式(开漏输出模式、上拉电阻的选取)、协议层组成(起始/终止信号、字节收发流程)、以及STM32的I2C硬件架构(时钟控制、数据收发逻辑等)。文章还详细解析了I2C的库函数配置方法,包括初始化结构体参数设置,并提供了完整的I2C引脚初始化和模式配置代码示例,最后给出了基于STM32的硬件I2C实现工程下载链接。原创 2025-11-12 05:00:00 · 2016 阅读 · 0 评论 -
【STM32】轻松搞懂推挽和开漏输出怎么用
本文详细解析了STM32 GPIO的推挽输出和开漏输出模式。通过分析MOS管开关状态,解释了推挽输出如何通过交替导通P-MOS和N-MOS实现电流"推挽",而开漏输出则保持P-MOS关闭。重点阐述了开漏输出的电平匹配特性,可通过外接电源实现不同电压芯片间的控制,并支持线与逻辑。最后对比了普通GPIO与复用功能模式的差异,指出复用模式下输出信号直接来自片上外设。原创 2025-11-10 23:00:00 · 3406 阅读 · 0 评论 -
【STM32】DMA超详细解析·入门级教程
本文介绍了STM32中DMA(直接存储器访问)的基本原理及其在USART数据传输中的应用,概述了DMA的功能特点,讲解了DMA的初始化流程,逐步讲解代码构成,内含源码可直接移植。原创 2025-11-10 06:00:00 · 6907 阅读 · 2 评论 -
STM32外设面试速通:UART、I2C、SPI、DMA、RAM/FLASH与ADC/DAC
文章系统性地梳理了嵌入式系统中最为关键的几种串行通信协议和核心外设/存储器(UART, I2C, SPI, DMA, ADC/DAC, RAM/FLASH),重点阐述了它们的工作原理、特性,尤其是它们之间的区别与联系。原创 2025-10-27 20:33:41 · 1548 阅读 · 3 评论 -
STM32F1之内部FLASH存储
STM32F1系列的FLASH包含程序存储器、系统存储器和选项字节三个部分,通过闪存存储器接口(外设)可以对程序存储器和选项字节进行擦除和编程。类型起始地址存储器用途ROM程序存储器Flash存储C语言编译后的程序代码系统存储器存储C语言编译后的程序代码选项字节存储一些独立于程序代码的配置参数RAM运行内存SRAM存储运行过程中的临时变量运行内存SRAM存储各个外设的配置参数内核外设寄存器存储内核各个外设的配置参数。原创 2025-10-22 06:00:00 · 1010 阅读 · 0 评论 -
基于Modbus-RTU通信协议读取RS485温湿度传感器主机功能(源码可直接移植)
Modbus主机代码,可直接移植使用,通过RS485实现温湿度传感器数据的采集原创 2025-08-11 07:00:00 · 1708 阅读 · 0 评论 -
基于Modbus-RTU通信协议实现RS485设备之间的通信(源码可直接移植)
两万字详解,基于STM32通过MODBUS-RTU通信协议实现RS485通信,内含源码可直接移植使用,内含详细的验证过程原创 2025-08-11 06:00:00 · 5404 阅读 · 3 评论 -
KEIL5软件使用技巧·debug仿真功能解析
本文详细介绍了STM32开发中的仿真调试配置与使用方法,详细说明了调试界面功能,包括寄存器窗口、汇编窗口、断点设置以及各种执行控制按钮的使用方法,文章提供了完整的操作流程和参数设置说明,适合STM32开发者参考使用。原创 2025-07-22 05:00:00 · 8431 阅读 · 1 评论 -
STM32学习·HAL库速通篇(三)·如何在STM32CubeMX新建工程
CMSIS (微控制器软件接口标准):Cortex Microcontroller Software Interface Standard,是由ARM和与其合作的芯片厂商、软件工具厂商,共同制定的标准。ST 为了方便用户开发 STM32芯片开发提供了三种库:标准外设库 (Standard Peripheral Libraries)HAL库(硬件抽象层):Hardware Abstraction LayerLL库:Low Layer我先随便找一个文件夹,后续会告诉如何生成:文件夹名称作用。原创 2025-02-11 04:00:00 · 1816 阅读 · 0 评论 -
STM32学习·HAL库速通篇(二)·STM32存储器与寄存器映射
寄存器是单片机内部一种特殊的内存,可以实现对单片机各个功能的控制。寄存器是特殊的存储器,给寄存器地址命名的过程,就叫寄存器映射。(1)32位的单片机可以有32根地址线(每根地址线有两种状态:导通或不导通)(2)单片机内存地址访问的存储单元是按字节编址的(而不是bit)(2)外设基于总线基地址的偏移量(PERIPH_OFFSET)STM32寻址大小:2^32= 4G(字节)(3)寄存器相对外设基地址的偏移量(REG_OFFSET)(1)总线基地址(BUS_BASE_ADDR)选项字节,配置读保护等。原创 2025-02-10 05:00:00 · 1297 阅读 · 0 评论 -
STM32学习·HAL库速通篇(一)·初始STM32以及C语言基础知识复习
stdint.h 是从 C99 中引进的一个标准 C 库的文件路径:D:\MDK5.34\ARM\ARMCC\include宏定义可以:提高效率、可读性、易改性,核心是替换#define 标识符 字符串标识符:宏定义的名字字符串:常数、表达式、格式串等}while(0)建议大家使用 do{ ... }while(0) 来 构造宏定义。这样不会受到大括号、分号、运算符优先级等的影响,总是会按你期望的方式调用运行。原创 2025-02-10 03:00:00 · 1477 阅读 · 0 评论 -
STM32F1之内部FLASH存储
STM32F1系列的FLASH包含程序存储器、系统存储器和选项字节三个部分,通过闪存存储器接口(外设)可以对程序存储器和选项字节进行擦除和编程。类型起始地址存储器用途ROM程序存储器Flash存储C语言编译后的程序代码系统存储器存储C语言编译后的程序代码选项字节存储一些独立于程序代码的配置参数RAM运行内存SRAM存储运行过程中的临时变量运行内存SRAM存储各个外设的配置参数内核外设寄存器存储内核各个外设的配置参数。原创 2025-01-16 08:59:20 · 1369 阅读 · 0 评论 -
STM32F1之RS485通讯协议·MODBUS-RTU超详细解析
Modbus 是一种串 行通信协议,是Modicon 于 1979年,为使用可编程逻辑控制器(PLC)而发表的。Modbus是工业领域通信协议的业界标准,并且现在是工业电子设备之间相当常用的连接方式。Modbus 比其他通信协议使用的更广泛的主要原因有:(1)公开发表并且无版税要求;(2)相对容易的工业网络部署;(3)对供应商来说,修改移动原生的位元或字节限制较少。原创 2024-05-21 04:00:00 · 6948 阅读 · 9 评论 -
基于STM32的Printf重定向(串口输出配置)
MicroLIB 是 STM32 的一个轻量级 C 库,它对内存和资源使用进行了优化。它使得 printf 等标准库函数能够在嵌入式系统中正常工作,若是不勾选可能会出现卡死的情况。在标准 C 库中, 定义了与输入输出相关的函数。在这里声明的作用是告诉编译器:在程序中会使用一个名为 printf 的函数,并且该函数的定义将会在其他地方提供。注意到这里重定向已经完成了,下面是一些拓展。原创 2024-11-19 05:00:00 · 3400 阅读 · 0 评论 -
七万字解析CAN总线协议·从入门到实战保姆级教学(源码可直接移植使用)
CAN总线(Controller Area Network Bus)控制器局域网总线,是由BOSCH公司开发的一种简洁易用、传输速度快、易扩展、可靠性高的串行通信总线,广泛应用于汽车、嵌入式、工业控制等领域。文章带你一步一步了解CAN总线,直到STM32上实战。原创 2024-11-18 06:00:00 · 19345 阅读 · 14 评论 -
五万字逐步解析CAN总线在STM32F1系列的使用(代码可直接移植)
从物理层逐层解析STM32F103C8T6的CAN外设,以及其如何使用,通过不同模式进行代码的编写,内附源码可直接移植使用原创 2024-11-14 06:00:00 · 2153 阅读 · 0 评论
分享