自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(411)
  • 资源 (1)
  • 收藏
  • 关注

原创 【STM32】四万字详解最新版本(ff16)FatFs文件系统移植(库函数版本)

本文详细介绍了FatFs文件系统的移植与应用过程。首先阐述了文件系统的基本概念及其优势,包括数据定位、空间管理和格式解析等功能。随后重点讲解了FatFs文件系统的特点、配置方法和移植步骤,包括ffconf.h的参数配置和diskio.c的驱动实现。通过实际案例演示了在STM32平台上对W25Q64 Flash芯片的文件系统初始化、格式化、文件读写等操作。文章提供了完整的代码实现和详细的参数说明,特别强调了扇区大小设置、对齐方式等关键配置项。最后通过串口输出验证了文件系统的成功移植。

2025-12-29 22:00:00 505

原创 【代码为墨,深耕不辍】我的2025嵌入式创作成长复盘

19年大学开始接触CSDN,从CSDN上找到了许多有用的资源,陪伴了我整个大学时光,而后大学毕业从事了相关工作,有自己的一些学习感悟,发布了一些文章进行分析分享讨论,期间也积累了一些粉丝与读者,在这里特别感谢每一位关注我的粉丝与读者,是你们的点赞、收藏与评论,让我的技术分享更有价值,也成为我持续输出的不竭动力。

2025-12-29 06:00:00 539

原创 嵌入式面试八股文(十九)·裸机开发与RTOS开发的区别

本文从嵌入式开发角度分析了任务切换、优先级反转、STM32启动流程等核心概念。任务切换本质是CPU寄存器的保存与恢复过程,涉及栈指针切换和MMU上下文更新。优先级反转现象通过优先级继承机制解决,临时提升低优先级任务的优先级。STM32启动流程包括复位向量获取、栈初始化、C运行环境初始化等步骤。裸机开发直接面向硬件,而RTOS开发则基于操作系统内核,提供任务管理、同步机制等服务。文章还对比了裸机和RTOS在任务模型、时间管理、内存管理等方面的差异,并详细阐述了中断触发流程。

2025-12-14 08:00:00 819

原创 嵌入式面试八股文(十八)·初识STM32芯片

本文介绍了STM32微控制器的基础知识,包括芯片分类、命名规则和最小系统组成(复位电路、BOOT启动电路、晶振电路等)。详细讲解了STM32开发必备的C语言知识,如位操作、宏定义、条件编译、extern声明和const/volatile关键字。阐述了单片机程序在Flash和RAM中的存储分布,以及BIN与HEX文件的区别。内容涵盖硬件设计和软件开发两个维度,为STM32开发提供了系统性的基础知识框架。

2025-12-14 06:00:00 719

原创 【OTA】手把手写BootLoader程序·读写内部FLASH

本文详细介绍了STM32内部FLASH存储器的操作与应用。详细介绍了 FLASH存储器结构解析,包含程序存储器、系统存储器和选项字节的功能说明;FLASH写入操作流程,涵盖解锁、擦除(页擦除和整片擦除)及数据写入的具体步骤;工程空间分布查看方法,通过Utility软件和.map文件分析存储占用情况;代码实现部分,提供了从读取到编程的完整函数实现,包括32位字、16位半字和8位字节操作;掉电数据保存方案,通过标志位检测和SRAM数据同步实现数据持久化。最后通过主函数验证了FLA

2025-12-11 22:44:02 993

原创 【OTA】手把手写BootLoader程序·硬件SPI读写Flash芯片(W25Q64)

本文详细介绍了SPI协议及其在STM32上的实现,重点讲解了W25Q64 Flash存储器的操作。主要内容包括:SPI协议基础:四线制通信、主从模式、四种工作模式(CPOL/CPHA组合), STM32 SPI外设配置:引脚定义、时钟控制、数据收发机制;W25Q64特性:8MB容量、页/扇区结构、指令集(擦除、读写等);关键代码实现:SPI初始化、页编程、扇区擦除、跨页写入等操作。通过实际示例演示了非对齐地址的数据读写,为嵌入式存储开发提供了完整解决方案。

2025-12-11 06:00:00 1938

原创 【OTA】手把手写BootLoader程序·软件IIC读写EEPROM(AT24C02)

本文详细介绍了STM32中I2C总线协议的原理与应用,展示了基于STM32的I2C编程实践,涵盖GPIO初始化、模式配置、单字节/多字节读写等核心功能的代码实现,概述了I2C的基本特性,包括其同步半双工通信方式、带应答机制和支持多设备挂载的特点。接着深入讲解了I2C的物理层设计要点,如开漏输出模式和上拉电阻的选择,最后以AT24C02 EEPROM为例,详细说明了设备地址设置、读写时序控制等具体应用技巧,并提供了完整的测试验证方案。

2025-12-10 22:00:00 1700

原创 【OTA】手把手写BootLoader程序·串口(USART)通过DMA环形缓冲区接收数据

本文介绍了STM32中DMA(直接存储器访问)的应用实现,重点阐述了USART1的DMA收发设计。文章首先概述DMA的基本原理和优势,然后详细讲解两种设计思路:无缓冲区直接处理和环形缓冲区异步处理。在代码实现部分,依次说明了GPIO引脚初始化、USART工作模式配置、DMA发送/接收设置、NVIC中断配置等关键步骤。特别对环形缓冲区管理进行了深入分析,包括缓冲区结构设计、空闲中断处理、数据拷贝机制和DMA重置流程。最后通过主函数示例展示了数据接收和回显功能,验证了缓冲区设计的有效性。

2025-12-10 06:00:00 795

原创 【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 903 2

原创 嵌入式面试八股文(十七)·ADC采样、SPI运用、C语言基础知识运用

本文围绕单片机开发中的常见问题展开分析,主要包括以下内容:1. STM32 ADC采样点选择原理;2. SPI协议的工作模式与引脚功能解析;3. 中断嵌套对栈空间和程序效率的影响;4. 栈溢出问题的判断与解决方案;5. 确保中断服务程序原子性的方法;6. 位运算和宏定义的使用技巧;7. 指针与数组的地址运算差异;8. 结构体内存对齐规则及其影响因素。通过具体代码示例和理论分析,详细阐述了嵌入式开发中的关键知识点,并指出了实际应用中需要注意的技术细节和潜在问题。

2025-12-09 06:00:00 1492

原创 【STM32】SPI通讯协议入门解析

本文详细介绍了SPI(串行外设接口)协议及其在STM32中的应用。主要内容包括SPI协议层(四种工作模式、起始/终止条件)、STM32的SPI外设结构(通讯引脚、时钟/数据控制逻辑)以及相关库函数(初始化结构体、数据收发函数等)。SPI作为全双工同步总线,采用主从架构和片选信号机制,支持最高36Mbps通信速率。文章还阐述了STM32中SPI的配置方法,包括工作模式选择、时钟极性和相位设置等关键参数,为开发者提供了详细的SPI接口使用指南。

2025-11-15 22:15:31 1255 1

原创 非易失性存储器·W25Q64使用手册解读

本文介绍了W25Qxx系列NorFlash存储器的技术特性与应用方法。阐述了W25Q64控制逻辑中的状态寄存器机制和存储逻辑的分区管理(页/扇区/块);4. 核心指令:重点介绍了写使能(06h)、写禁止(04h)、读写状态寄存器(05h/01h)和读数据(03h)等关键指令的使用方法。

2025-11-15 22:14:52 1171

原创 【STM32】I2C协议使用浅析·硬件I2C代码编写

本文详细介绍了STM32的I2C总线接口,包括其物理层、协议层和硬件实现。主要内容涵盖I2C的基本特性(两根通信线SCL和SDA、同步半双工通信、支持多设备挂载)、物理层连接方式(开漏输出模式、上拉电阻的选取)、协议层组成(起始/终止信号、字节收发流程)、以及STM32的I2C硬件架构(时钟控制、数据收发逻辑等)。文章还详细解析了I2C的库函数配置方法,包括初始化结构体参数设置,并提供了完整的I2C引脚初始化和模式配置代码示例,最后给出了基于STM32的硬件I2C实现工程下载链接。

2025-11-12 05:00:00 938 1

原创 【STM32】轻松搞懂推挽和开漏输出怎么用

本文详细解析了STM32 GPIO的推挽输出和开漏输出模式。通过分析MOS管开关状态,解释了推挽输出如何通过交替导通P-MOS和N-MOS实现电流"推挽",而开漏输出则保持P-MOS关闭。重点阐述了开漏输出的电平匹配特性,可通过外接电源实现不同电压芯片间的控制,并支持线与逻辑。最后对比了普通GPIO与复用功能模式的差异,指出复用模式下输出信号直接来自片上外设。

2025-11-10 23:00:00 2131

原创 【STM32】DMA超详细解析·入门级教程

本文介绍了STM32中DMA(直接存储器访问)的基本原理及其在USART数据传输中的应用,概述了DMA的功能特点,讲解了DMA的初始化流程,逐步讲解代码构成,内含源码可直接移植。

2025-11-10 06:00:00 2962

原创 STM32外设面试速通:UART、I2C、SPI、DMA、RAM/FLASH与ADC/DAC

文章系统性地梳理了嵌入式系统中最为关键的几种串行通信协议和核心外设/存储器(UART, I2C, SPI, DMA, ADC/DAC, RAM/FLASH),重点阐述了它们的工作原理、特性,尤其是它们之间的区别与联系。

2025-10-27 20:33:41 1152 4

原创 【Linux应用开发·入门指南】零基础学 Linux 进程控制·五万字入门指南

本文从程序与进程的概念、组成、状态讲起,逐步深入进程控制核心:用 system、fork/vfork、execve 实现进程启动,借 wait/waitpid 处理进程等待,再详解 UDS、管道、共享内存等进程通信方式,附 System V 与 POSIX 两种 IPC 实现及 perror、环境变量等拓展,帮你系统掌握进程控制全流程。

2025-10-27 06:00:00 3005 2

原创 Linux 进程面试考点:进程状态、通信方式、信号量等关键问题速记

聚焦 Linux 进程核心知识,从并发、同步、异步等基础概念,到父 / 子进程关系、孤儿 / 僵尸 / 守护进程定义,再到进程五状态转换、7 种通信方式及信号量原理,还拆解 PCB 包含的核心信息。内容覆盖进程管理全流程,帮你理清进程运行逻辑,不管是入门学习还是巩固基础,都能系统掌握 Linux 进程关键知识点。

2025-10-26 14:00:00 995

原创 新手必看:C++10 组核心概念通俗解析(含指针、内存、绑定机制)

聚焦 C++10 组核心易混概念,从 new 与 malloc 的内存管理差异、野指针与悬挂指针的风险区别,到静态 / 动态绑定的实现逻辑、左值与右值的使用场景,再到 struct 与 class 的访问控制差异,搭配实例拆解原理。不管是理解指针类型、内存机制,还是掌握面向对象特性,都能帮你理清关键差异,夯实 C++ 基础。

2025-10-26 09:20:02 561

原创 搞定 C 语言核心概念:10 大高频对比

聚焦 C 语言 10 组核心易混概念,从全局 / 局部变量、#include<> 与 "" 的用法差异,到结构体 / 共用体、堆 / 栈的内存区别,再到 malloc/calloc、strcpy/memcpy 的实战运用,搭配代码示例拆解原理,帮你理清变量、指针、内存、数据结构等关键知识点,夯实 C 语言基础。

2025-10-25 17:30:12 919

原创 【Linux】一文掌握嵌入式 Linux 进程间通信(IPC):原理拆解 + 函数实战

本文系统介绍了Linux系统中常用的进程间通信(IPC)机制,包括Unix Domain Socket、管道(无名/有名)、共享内存、消息队列和信号量等。文章对比分析了各种IPC机制的特点、适用场景及性能差异,详细讲解了System V和POSIX两种标准下共享内存与消息队列的具体实现方法,并提供了相关API的使用示例和代码片段。此外,还介绍了信号处理的基本概念和实现方式,为开发者选择适合的进程间通信方案提供了全面参考。

2025-10-25 09:36:58 1556

原创 【Linux】小白也能懂的嵌入式 Linux 消息队列函数:基础概念与用法

消息队列是Linux系统中重要的进程间通信机制,克服了信号和管道的局限性。文章介绍了两种消息队列标准:SystemV和POSIX。SystemV消息队列通过msgget()创建/获取队列,msgsnd()发送消息,msgrcv()接收消息,msgctl()控制队列。POSIX消息队列则使用mq_open()、mq_timedsend()、mq_timedreceive()等函数。消息队列具有异步通信、消息边界、优先级、内核持久性等特点,适用于生产者-消费者模型。

2025-10-24 22:00:00 616 1

原创 进程间通信(IPC)简介

本文概述了UNIX/Linux系统中的进程间通信(IPC)机制,主要包括:Unix Domain Socket(UDS)、管道(无名/有名)、共享内存、消息队列和信号量。UDS支持高效本机通信;管道分无名(父子进程间)和有名(不相关进程间);共享内存性能最高但需同步;消息队列支持异步通信;信号量用于进程同步。文章还对比了SystemV IPC和POSIX IPC标准,指出后者更现代标准化。这些IPC机制各有特点,应根据应用场景选择合适方式。

2025-10-24 06:30:00 983 1

原创 【Linux】一文吃透嵌入式 Linux 共享内存:原理、优化与避坑指南

摘要:本文介绍了嵌入式Linux系统中两种共享内存实现方式——System V IPC和POSIX IPC。System V IPC通过shmget()创建、shmat()附加、shmdt()分离和shmctl()删除共享内存;POSIX IPC则使用shm_open()创建、ftruncate()设置大小、mmap()映射和shm_unlink()删除。文章详细说明了各函数的使用方法、参数含义和示例代码,并对比了两种方式的适用场景,为开发高效的进程间通信提供了实用指导。

2025-10-23 23:00:00 885 1

原创 【Linux】exec族函数·execve详解

本文介绍了Linux中的exec函数族,重点解析了execve()系统调用及其封装函数的使用方法。文章首先概述了exec函数族的功能,即替换当前进程映像为新程序而不创建新进程。随后通过具体示例演示了如何用execve()执行ls命令,并详细讲解了环境变量的配置方法。文章还展示了程序间的跳转实现,通过execve传递参数并验证进程ID不变的特性。最后,作者结合fork()函数,展示了如何创建子进程后使用execve执行新程序。

2025-10-23 06:00:00 830

原创 【Linux】fork函数详解

本文介绍了Linux系统中fork函数及其相关应用。fork函数用于创建子进程,父进程返回子进程PID,子进程返回0。文章详细讲解了fork的使用方法、父子进程资源分配特点(数据段独立,代码段共享),并通过示例代码演示了进程并发执行和全局变量的独立性。同时介绍了vfork函数与fork的区别,包括内存共享和执行顺序限制。最后通过文件描述符复制的实例,阐述了子进程如何继承父进程打开的文件,以及引用计数机制在文件关闭中的作用。文章还涉及了waitpid函数防止孤儿进程产生的方法,以及进程ID获取等相关系统调用。

2025-10-22 23:00:00 1455

原创 STM32F1之内部FLASH存储

STM32F1系列的FLASH包含程序存储器、系统存储器和选项字节三个部分,通过闪存存储器接口(外设)可以对程序存储器和选项字节进行擦除和编程。类型起始地址存储器用途ROM程序存储器Flash存储C语言编译后的程序代码系统存储器存储C语言编译后的程序代码选项字节存储一些独立于程序代码的配置参数RAM运行内存SRAM存储运行过程中的临时变量运行内存SRAM存储各个外设的配置参数内核外设寄存器存储内核各个外设的配置参数。

2025-10-22 06:00:00 848

原创 【Linux应用开发·入门指南】详解文件IO以及文件描述符的使用

文件 IO 是嵌入式系统中应用程序与硬件设备、存储介质交互的核心机制,基于 “一切皆文件” 的设计理念,本文详细介绍了标准IO(fopen(6种模式)、fclose、fputc(单字节)、fputs(字符串)、fprintf(格式化)、fgetc(单字节)、fgets(字符串)、fscanf(格式化))和系统IO(open(含权限掩码umask)、read/write(需处理实际读写字节)、close)的使用

2025-10-21 22:00:00 1069

原创 Linux进程控制介绍

本文系统介绍了操作系统中进程管理的核心概念。首先定义了进程是动态执行的程序实例,包含代码、资源和状态,与静态程序有本质区别。然后详细阐述了进程控制模块(PCB)作为内核核心组件的作用,重点分析了Linux的task_struct结构。接着说明了进程创建过程、状态转换(运行态、睡眠态、停止态等)以及调度机制,包括FCFS、SJF、RR等经典算法和Linux采用的CFS公平调度器。全文从进程定义到生命周期管理,构建了完整的进程知识体系框架,为理解操作系统并发机制提供了理论基础。

2025-10-21 06:00:00 617

原创 【PCB电路设计】常见元器件简介(电阻、电容、电感、二极管、三极管以及场效应管)

本文系统介绍了电子电路中常见元器件的基本特性。电阻部分详解了限流、分压作用及色环读值方法;电容讲解了容值计算和极性识别;电感阐述了"通直流阻交流"特性;二极管重点分析了单向导电原理及各类二极管特点;三极管解释了NPN/PNP结构及放大、截止、饱和三种工作状态;场效应管则对比了三极管特性。全文通过水龙头等生活化比喻,配以计算公式和图表,深入浅出地解析了各类电子元器件的核心原理与应用场景。

2025-10-07 22:30:00 2991 1

原创 【Linux应用开发·入门指南】Makefile菜鸟教程

本文介绍了Makefile的基本概念和使用方法。

2025-09-30 22:00:00 1357

原创 【Linux应用开发·入门指南】如何在Linux上安装VScode、gcc编译流程以及如何进行静态/动态链接的打包使用·详细步骤演示

本文系统介绍了Linux下C语言开发环境的搭建与使用。解析了GCC、glibc和GNUC的关系,详细演示了在Linux上安装GCC和VSCode的步骤,包括VSCode的汉化和C语言开发环境配置。重点讲解了GCC的完整编译流程(预处理→编译→汇编→链接),对比分析了静态链接和动态链接的区别与实现方法,并提供了动态库的打包和使用方案。

2025-09-30 05:00:00 1733

原创 嵌入式Linux驱动开发简介

Linux驱动开发大体描述

2025-09-29 06:00:00 754

原创 Linux命令行以及PATH环境变量配置

本文介绍了Linux命令行基础及PATH环境变量的设置方法。首先讲解命令行基本结构,包括用户提示符、命令格式等。重点阐述了PATH环境变量的作用和使用场景:通过临时设置(export)、用户级永久设置(~/.bashrc)和系统级永久设置(/etc/environment)三种方式添加路径。以hello程序为例,演示了如何让系统识别自定义命令,并对比了不同设置方法的适用范围和效果。文章还提供了Linux命令和文件权限操作的扩展学习资源。

2025-09-29 04:00:00 759

原创 MQTT协议快速入门·超详细MQTT协议解析

MQTT是一种基于发布/订阅模式的轻量级物联网通信协议,构建于TCP/IP之上。其核心组件包括客户端(发布/订阅设备)和Broker(消息路由中心),通过主题层级(如sensor/temperature)实现消息路由,支持+/#通配符进行灵活订阅。

2025-08-28 23:52:52 1959 3

原创 在Windows环境下通过EMQX搭建属于自己的MQTT服务器(详细搭建步骤并通过MQTTX验证)

本文介绍了MQTT协议及其核心组件(客户端、服务端、主题、QoS),重点演示了EMQX服务器的部署步骤和MQTTX客户端的连接测试方法,一步步图文介绍帮助你在Windows环境下通过EMQX搭建属于自己的MQTT服务器。

2025-08-28 06:00:00 2699 2

原创 ESP32入门开发·SmartConfig实现配网功能

文章详细介绍了esp32-s3通过SmartConfig使用手机APP软件EspTouch实现配网功能,内含源码可直接移植使用。

2025-08-26 06:00:00 7544

原创 ESP32入门开发·使用STA模式连接WIFI(过程详解,源码可直接移植)

esp32-s3完成简单的配网功能,通过STA模式连接wifi,获取IP,含详细讲解过程,可直接移植使用。

2025-08-26 05:00:00 1618

原创 ESP32入门开发·三万字详解LEDC产生PWM信号实现呼吸灯效果(内含源码可直接移植)

详细示例逐步解析及演示,内含源码可直接移植,主要通过ESP32-S3的LEDC的API函数实现软件PWM控制LED灯亮度,以及通过硬件PWM实现呼吸灯的效果,最好对FreeRTOS的事件组有一定程度的了解。

2025-08-17 07:00:00 1302

原创 ESP32入门开发·通用硬件定时器 (GPTimer)

本文介绍了ESP32-S3通用定时器的架构与配置方法。ESP32-S3包含两个定时器组,每个组有两个通用定时器,具有16位预分频器和54位可自动重载计数器。定时器支持多种功能,包括时钟分频、计数方向设置、警报触发等。文章详细讲解了定时器的三大部分:16位预分频器与时钟选择器、54位时基计数器以及警报器的工作原理。最后通过LED闪烁的实例,演示了如何配置定时器周期性触发警报:初始化GPIO、创建1MHz定时器、设置1秒警报周期,并在回调函数中实现LED电平翻转。完整代码展示了从定时器初始化到事件处理的完整流程

2025-08-14 23:00:00 1256

基于STM32实现modbus-RTU主机通信.zip

基于STM32实现主机设备发送,通过RS485发送Modbus-RTU协议,读取温湿度传感器数据。 移植过程可参考:https://blog.csdn.net/MANONGDKY/article/details/149908129?spm=1011.2415.3001.5331 其内含有源码和详细验证过程,可自行移植。

2025-08-04

基于STM32实现Modbus主从机代码实现

基于STM32实现主机设备发送,从机设备接收代码,根据注释选区代码作为主机还是从机,作为主机通过03功能码实现温湿度数据的读取,作为从机可以通过MODBUS调试软件,观察从机返回数据。 想要自己移植可以参考:https://blog.csdn.net/manongdky/category_13012603.html?spm=1001.2014.3001.5482

2025-08-04

Modbus调试软件.zip

一个Modbus调试软件方便调试使用 具体使用可以参考:https://blog.csdn.net/MANONGDKY/article/details/149659938?spm=1011.2415.3001.5331 主要配合进行验证代码的可行性

2025-07-28

基于STM32实现Modbus-RTU通信

基于STM32实现从机设备接收,通过RS485接收Modbus-RTU协议。 详细移植过程可参考:https://blog.csdn.net/MANONGDKY/article/details/149659938?spm=1011.2415.3001.5331 其内含有源码和详细验证过程,可自行移植。

2025-07-29

基于STM32实现RS485通讯.zip

基于STM32F103RCT6实现RS485通讯,逻辑代码实现,通过江协串口代码移植完成。 移植过程参考链接裸机移植部分:https://blog.csdn.net/MANONGDKY/article/details/149258356

2025-07-26

基于STM32F1系列移植FreeRTOS实现RS485进行DMA数据接收

基于STM32F1系列FreeRTOS的移植使用,实现RS485实现DMA数据转运; 详细移植过程可以参考: FreeRTOS实战(十四)章节:https://blog.csdn.net/MANONGDKY/article/details/149439458?spm=1011.2415.3001.5331

2025-07-18

STM32在FreeRTOS基础上移植RS485

基于STM32移植FreeRTOS的基础上移植RS485,已验证可用。 移植过程:https://blog.csdn.net/MANONGDKY/article/details/149258356?spm=1011.2415.3001.5331

2025-07-11

STM32F103RCT6移植FreeRTOS模版.zip

基于STM32F103RCT6移植FreeRTOS模版,其内创建一个动态任务OLED显示任务 移植过程:https://blog.csdn.net/MANONGDKY/article/details/149219436?spm=1011.2415.3001.5331

2025-07-09

基于江协/江科大的串口代码移植更改RS485

基于江协/江科大的串口代码移植更改RS485 移植过程:https://blog.csdn.net/MANONGDKY/article/details/149258356?spm=1011.2415.3001.5331

2025-07-10

STM32F103RCT6裸机模版.zip

基于STM32F103RCT6裸机模版,用于移植FreeRTOS使用的

2025-07-09

FreeRTOS-STM32移植模版.zip

基于STM32F1系列FreeRTOS的移植模版,在上次模版的基础上增加调整了一些东西更方便使用。 详细移植过程可以参考: FreeRTOS实战(十)章节:https://blog.csdn.net/manongdky/category_12968613.html

2025-05-26

基于STM32移植FreeRTOS实现TIM基本定时器.zip

基于STM32F1系列FreeRTOS的移植使用,完成基本定时器定时功能。 详细移植过程可以参考: FreeRTOS实战(九)章节:https://blog.csdn.net/manongdky/category_12968613.html

2025-05-22

基于STM32移植FreeRTOS实现双ADC进行DMA数据转运

基于STM32F1系列FreeRTOS的移植使用,实现上ADC采集任务,并通过DMA进行数据传输,若是不想使用了通过挂起和恢复函数,将数据处理任务挂起和恢复。 详细移植过程可以参考: FreeRTOS实战(八)章节:https://blog.csdn.net/manongdky/category_12968613.html

2025-05-21

基于STM32移植FreeRTOS实现多通道ADC进行DMA数据转运

基于STM32F1系列FreeRTOS的移植使用,实现多通道实现ADC采集任务,并通过DMA进行数据传输,若是不想使用了通过挂起和恢复函数,将数据处理任务挂起和恢复。 详细移植过程可以参考: FreeRTOS实战(七)章节:https://blog.csdn.net/manongdky/category_12968613.html

2025-05-21

基于STM32移植FreeRTOS实现单通道ADC进行DMA数据转运

基于STM32F1系列FreeRTOS的移植使用,实现单通道实现ADC采集任务,并通过DMA进行数据传输,若是不想使用了通过挂起和恢复函数,将数据处理任务挂起和恢复。 详细移植过程可以参考: FreeRTOS实战(六)章节:https://blog.csdn.net/manongdky/category_12968613.html

2025-05-21

基于STM32移植FreeRTOS实现ADC功能.zip

基于STM32F1系列FreeRTOS的移植使用,实现单通道在中断中实现ADC采集任务,并通过消息队列中断发送函数xQueueSendFromISR()进行数据传输,并通过挂起和恢复函数,将数据处理任务挂起和恢复。 详细移植过程可以参考: FreeRTOS实战(五)章节:https://blog.csdn.net/manongdky/category_12968613.html

2025-05-20

基于GD32的OLED显示工程.zip

内有引脚配置,直接按照引脚插上即可使用

2025-05-20

基于GD32的OLED显示实验.zip

基于GD32的OLED显示实验

2025-05-20

基于GD32的ADC采集实验.zip

基于GD32的ADC采集实验,可直接使用

2025-05-20

基于STM32移植FreeRTOS-KEY调用挂起和恢复.zip

基于STM32F1系列FreeRTOS的移植使用,实现按键触发任务的挂起和恢复 详细移植过程可以参考: FreeRTOS实战(二)章节:https://blog.csdn.net/MANONGDKY/article/details/147958312?spm=1001.2014.3001.5501

2025-05-17

基于GD32实现USB虚拟串口通信实验

基于GD32实现USB虚拟串口通信实验,实验现象:用USB线接MINI USB口,再接电脑,打开电脑上串口调试器,115200波特率,发送HELLOWORLD,板子就会返回HELLOWORLD

2025-12-23

基于STM32移植FreeRTOS实现单通道ADC读取数据

基于STM32移植FreeRTOS实现单通道ADC读取数据,通过DMA转运数据 移植过程可以参考:https://blog.csdn.net/MANONGDKY/article/details/148102893 也可根据文章自行移植

2025-12-23

基于STM32移植FreeRTOS移植(任务的挂起和恢复)

基于STM32移植FreeRTOS移植,完成通过按键挂起和恢复任务,实现任务状态的转换。 移植过程可以参考:https://blog.csdn.net/MANONGDKY/article/details/147958312 可自行移植

2025-12-23

STM32移植FatFs文件系统(最新版本ff16)

基于STM32硬件SPI读写W25Q64,移植FatFs文件系统,版本为当前最新版本ff16版本,库函数实现对SPI Flash的文件系统移植,后续会将移植过程放到:https://blog.csdn.net/manongdky/category_12517456.html?spm=1001.2014.3001.5482 自行查阅移植过程。

2025-12-18

基于STM32硬件SPI读写W25Q64

STM32硬件SPI读写W25Q64,实现对Flash芯片W25Q64进行多页写入以及读取操作。 详细可以查看:https://blog.csdn.net/MANONGDKY/article/details/155744851?spm=1011.2415.3001.5331

2025-12-09

STM32软件IIC读写EEPROM(AT24C02)

基于STM32软件IIC读写EEPROM(AT24C02),代码编写可以参考:https://blog.csdn.net/MANONGDKY/article/details/154475520?spm=1011.2415.3001.5331

2025-12-08

基于STM32通过USART实现DMA环形缓冲区接收数据

基于STM32通过USART实现DMA环形缓冲区接收数据,接收的数据如果超出环形缓冲区的数量,后面的接收数据会回卷到前面的缓冲区,进行存储,实现过程可以查看:https://blog.csdn.net/MANONGDKY/article/details/155662492?spm=1011.2415.3001.5331

2025-12-08

基于STM32实现串口的DMA数据转运(增加超时检测功能)

基于STM32实现USART1的DMA数据发送,增加超时检测功能 该资源是在该文章的基础上进行的改进:https://blog.csdn.net/MANONGDKY/article/details/154383583?spm=1001.2014.3001.5501

2025-12-03

基于STM32实现RS485收发可变包长数据

基于STM32实现RS485收发可变包长数据,代码为了方便验证通过条件编译实现两种验证模式。 单板验证 0:自己通过串口调试助手发送数据看回传数据。 双板验证 1:表示接收显示的数据 2:表示发送数据 分别开启1和2下到两个板子上,进行验证,数据是正常的 对于可变包长数据的更改,找到Usart_RS485_CP.h当中的RS485_Data_MAX更改这个数据即可。 RS485_Data_MAX表示数据缓冲区最大值,也就是你这个可变包场最大接收到的值,例如RS485_Data_MAX为20,那么你可以接收1~20任意个数的数据,如果接收21个就会失败。

2025-11-23

STM32通过RS485接收可变包长数据

裸机代码,基于STM32实现通过USART2的引脚,RS485使能引脚为PA7,接收可变包长的数据,代码历程可变包长最大接收数据为此时为20,可根据自己需求更改,包头为57 58,包尾为 0D 0A,中间接收数据随机长度。 对于RS485不熟悉的可以参考:https://blog.csdn.net/MANONGDKY/article/details/149258356

2025-11-23

STM32硬件SPI读写W25Q64.zip

SPI 是一种高速、全双工的同步串行通信总线,而 W25Q64 则是基于 SPI 接口的大容量、高性能闪存芯片的典型代表。理解这两者是如何协同工作的,是进行固件开发、数据存储和 bootloader 设计等任务的基础。 资源通过硬件SPI实现W25Q64的读写。

2025-11-19

SPI+W25Q64协议整理文档

SPI 是一种高速、全双工的同步串行通信总线,而 W25Q64 则是基于 SPI 接口的大容量、高性能闪存芯片的典型代表。理解这两者是如何协同工作的,是进行固件开发、数据存储和 bootloader 设计等任务的基础。本文将首先概述 SPI 协议的核心机制,然后深入介绍 W25Q64 的主要特性、指令集和基本操作流程,为后续的驱动开发和调试工作奠定坚实的理论基础。

2025-11-15

STM32F103ZET6工程模版.zip

STM32嵌入式开发实战项,ZET6工程模版

2025-11-13

基于STM32移植FreeRTOS通过按键实现任务的挂起和恢复

本资源基于STM32微控制器,通过移植FreeRTOS实时操作系统,实现了通过外部按键对任务的动态挂起和恢复功能。 FreeRTOS移植:完整适配STM32硬件平台,支持任务管理、信号量、队列等核心功能 按键中断处理:通过外部中断检测按键事件,实现非阻塞式按键处理 任务动态管理:支持运行时挂起和恢复指定任务 状态反馈机制:通过LED指示或串口输出显示任务状态变化 多任务协调:确保任务挂起/恢复过程中的系统稳定性

2025-11-15

基于STM32移植FreeRTOS实现CAN总线通信

本资源基于STM32微控制器,通过移植FreeRTOS实时操作系统,实现了CAN总线的稳定通信。 FreeRTOS移植:完整适配STM32硬件平台,支持任务调度、队列、信号量等RTOS核心功能。 CAN通信:实现了CAN总线数据的收发功能,支持标准帧与扩展帧,具备硬件过滤和中断处理机制。 多任务管理:通过FreeRTOS任务分离CAN收发逻辑,提高系统响应效率与可维护性。 示例应用:提供发送/接收任务的代码示例,演示如何通过消息队列进行任务间通信。

2025-11-15

STM32软件IIC读写EEPROM.zip

软件I2C接线方式可根据需求自行修改,EEPROM的A0、A1、A2引脚接地,地址为0xA0,读写测试程序,可直接通过USART1打印数据进行查看,对于IIC不熟悉可以查看。 硬件I2C:https://blog.csdn.net/MANONGDKY/article/details/154696623?spm=1001.2014.3001.5501 软件I2C:https://blog.csdn.net/MANONGDKY/article/details/139142429

2025-11-13

基于STM32的硬件IIC读取EEPROM.zip

基于STM32的硬件IIC读取EEPROM

2025-11-12

基于STM32的硬件IIC实现.zip

基于STM32的硬件IIC实现

2025-11-11

基于STM32实现串口的DMA数据转运.zip

基于STM32实现串口的DMA数据转运

2025-11-04

基于STM32的SN74HC595控制四位数码管.zip

基于STM32的SN74HC595控制四位数码管。 详细移植过程可参考:https://blog.csdn.net/MANONGDKY/article/details/141952401?spm=1001.2014.3001.5502

2025-09-24

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除