- 博客(266)
- 资源 (1)
- 收藏
- 关注
原创 【LVGL】LVGL简介
LVGL 是现代嵌入式 GUI开发领域的一个强大,灵活且资源高效的选择。它凭借其轻量级、高性能、丰富的功能集、出色的可移植性和活跃的社区支持,成为众多工程师为嵌入式设备创建专业级用户界面的首选库。无论你的项目是基于低成本的微控制器还是功能更强的微处理器,LVGL 都值得考虑。LVGL 是一个免费、开源的嵌入式图形库,用于为各种嵌入式设备创建美观、流畅的图形用户界面。它的设计目标是为任何具有微控制器(MCU)或微处理器(MPU)的设备提供高性能、低资源消耗且易于使用的 GUI 解决方案。
2026-05-22 15:55:20
524
原创 【Python】高级语法
本文介绍了Python中的高级语法特性,主要包括装饰器、迭代器和生成器三部分内容。装饰器部分详细讲解了基本语法、带参数的装饰器实现,以及装饰器与高阶函数、闭包的关系。迭代器部分阐述了迭代器概念、创建方法和StopIteration异常处理。生成器部分则重点介绍了yield关键字的使用、生成器函数的执行流程以及与迭代器的区别。这些高级语法特性共同构成了Python函数式编程的核心内容,能够帮助开发者编写更简洁高效的代码。
2026-05-20 18:36:10
362
原创 【Python】函数与模块化编程
本文介绍了Python函数的进阶知识,主要包括参数传递、递归函数和作用域与闭包三部分内容。在参数传递部分,详细讲解了位置参数、默认值参数、关键字参数以及可变参数(*args和**kwargs)的使用方法,包括如何传递元组/列表和字典给可变参数。递归函数部分通过阶乘示例展示了递归的基本原理。作用域与闭包部分系统阐述了局部作用域、嵌套作用域、全局作用域和内置作用域的概念,并通过实例说明了闭包的特点和应用场景,如保存状态和实现装饰器等。这些知识点对于编写更灵活、更强大的Python函数至关重要。
2026-05-20 18:20:49
723
原创 【Python】类与对象
本文介绍了Python面向对象编程的核心概念,包括类与对象的定义、类的组成、特殊方法和三大特性。主要内容包括: 类与对象基础:类作为蓝图定义类型,对象是类的具体实例。通过class关键字定义类,使用类名()创建对象。 类的组成:包含成员属性(在__init__方法中定义)和成员方法(带self参数)。介绍了__init__初始化方法和__str__字符串表示方法。 封装特性:通过双下划线__实现属性/方法私有化,使用@property装饰器控制访问。 三大特性:重点讲解了封装的概念,通过隐藏内部实现细节。
2026-05-19 16:18:41
345
原创 【Python】Python 进阶
本文介绍了Python中四种主要数据结构的使用方法:列表(list)、元组(tuple)、集合(set)和字典(dict)。列表是有序可变集合,支持增删改查和排序操作;元组是不可变有序集合,具有自动组包解包特性;集合是无序唯一元素集合,提供添加删除操作;字典是键值对存储结构,支持基于键的增删改查。每种数据结构都通过代码示例详细说明了定义、基本操作和特性,如列表嵌套、元组交换数据、集合元素唯一性、字典键唯一性等。这些数据结构是Python编程的基础组成部分,掌握它们对数据处理至关重要。
2026-05-19 15:54:32
657
原创 【Python】Python 基础
Python是一种高级脚本语言,具有简洁语法和跨平台特性,适合快速开发。作为解释型语言,Python无需编译即可运行,支持动态类型和多种编程范式。其丰富的标准库和第三方生态(如NumPy、TensorFlow)使其广泛应用于数据科学、Web开发、自动化脚本等领域。安装Python可通过官网下载解释器或使用包管理器,推荐使用PyCharm作为开发环境,支持虚拟环境管理、代码调试和插件扩展。虽然Python开发效率高,但在性能敏感场景不如编译型语言。
2026-05-18 19:27:09
473
原创 【常见问题】开发板的 Loader 已损坏 / 不兼容,导致无法完成烧录交互
RK356X开发板在Loader模式下烧录Ubuntu固件失败,切换至MASKROM模式后成功。问题根因是Flash中原有的Loader程序损坏或与固件不兼容,导致无法完成烧录交互。MASKROM模式通过芯片ROM代码直接初始化USB并写入完整Flash,绕过了Loader依赖。解决方案包括:1)优先使用MASKROM模式彻底烧录固件;2)验证新Loader功能;3)单独烧录Loader分区或更换USB环境作为兜底措施。关键注意事项包括避免烧录中断、使用官方固件及备份分区镜像。
2026-03-19 15:56:23
456
原创 【Linux 驱动开发】STM32MP157 + CS42L51 音频开发实战
本文详细介绍了基于STM32MP157和CS42L51的音频开发实战。主要内容包括: 音频系统架构:阐述音频编解码芯片CS42L51的工作原理和特性,支持4-96kHz采样率、24位转换器,通过I2S总线与处理器通信。 硬件接口设计:详细分析I2S总线时序(BCLK/LRCK/SD信号)和STM32的SAI接口配置要点,提供原理图验证方法。 开发流程:从设备树配置、驱动开发到ALSA工具链使用,实现声卡识别、WAV播放录制、MP3解码功能。 工程实现:提供完整的开发链路,包括内核驱动适配、用户空间工具调试(
2026-03-18 17:07:02
522
原创 【Linux 驱动开发】V4L2 编程与摄像头驱动移植全流程指南
本文系统介绍了V4L2编程与摄像头驱动移植的全流程。主要内容包括:V4L2的基本概念、缓冲区机制和常用IOCTL操作;用户态采集程序的编写与编译流程;USB摄像头和OV5640摄像头的驱动支持方法;设备树节点添加、内核配置等关键点。文章详细阐述了V4L2视频采集原理、典型应用流程和重要结构体,并提供了调试策略与排错技巧。通过结合STM32MP157平台实践,帮助开发者快速掌握从内核到用户态的摄像头采集方案实现。
2026-03-09 20:00:46
778
原创 【Linux 驱动开发】STM32MP157 基于 PWM 的蜂鸣器驱动实现指南
本文以STM32MP157为例,详细介绍了基于Linux PWM子系统的蜂鸣器驱动开发方法。主要内容包括:1)PWM基础知识与关键参数;2)Linux PWM子系统三层架构(用户层、核心层、硬件层);3)设备树配置与驱动编写流程,重点讲解了TIM4 PWM通道的启用和参数设置;4)用户态测试程序及sysfs调试方法;5)常见问题排查建议。文中配有蜂鸣器驱动电路图、代码流程图和子系统框架图,帮助开发者系统掌握从硬件配置到软件实现的完整流程。
2026-03-09 16:03:39
501
原创 【Linux 驱动开发】Linux 内核启动过程详解
本文系统梳理了ARM架构下Linux内核的启动流程,分为四个关键阶段:引导加载(U-Boot加载内核镜像和设备树)、自解压(head.S调用解压函数)、汇编级准备(stext函数完成硬件初始化)和C语言初始化(start_kernel完成系统初始化)。重点解析了各阶段核心任务:U-Boot参数传递、内核解压、处理器验证、页表建立、命令行参数解析,直至最终启动init进程。文中还提供了mkimage工具的使用说明和关键函数调用关系图,为理解Linux内核启动机制提供了清晰的框架。通过结合源码与日志。
2026-03-06 21:42:10
498
原创 【Linux 驱动开发】STM32MP1 + GT911 触摸显示系统开发笔记
本文介绍了基于STM32MP1平台和GT911触摸芯片的LCD触摸系统开发全流程。主要内容包括: 硬件部分: 解析电容式触摸屏原理和GT911芯片工作方式 详细说明I2C接口连接及设备树配置方法 驱动开发: 分析Linux输入子系统框架 详解GT911驱动架构和事件上报流程 提供内核配置和编译指南 软件集成: 介绍tslib移植步骤和常见问题解决 说明应用层事件处理流程 调试方法: 提供设备节点检测和功能验证方法 包含详细的设备树配置示例 该文档为开发者提供了从硬件连接到软件集成的完整参考。
2026-03-06 17:44:00
589
原创 【Linux 驱动开发】STM32MP1 LCD 显示系统完整实践指南
STM32MP1 LCD显示系统实践指南 本文全面介绍STM32MP1平台实现MIPI DSI LCD显示的完整流程,涵盖硬件连接、设备树配置、显示原理和驱动实现。主要内容包括: 硬件连接:详细说明MIPI DSI差分对、背光PWM、复位/供电管脚的连接方式 设备树配置: PWM背光控制节点设置 LTDC与DSI端口映射关系 Panel节点参数定义 显示基础:讲解LCD/OLED显示原理、常见接口类型(RGB/LVDS/MIPI/HDMI)及信号时序 驱动实现。
2026-03-06 13:01:13
443
原创 【Linux 驱动开发】Linux 驱动开发与 STM32MP1 USB Host 实践全解
本文系统介绍了STM32MP1平台的Linux驱动开发与USB Host实践。主要内容包括:1) 开发环境搭建与驱动框架解析,涵盖SPI/USB子系统架构;2) 设备树配置方法,详细展示了SPI控制器节点定义、pinctrl设置及外设挂载示例;3) USB基础理论,包括拓扑结构、OTG主从模式切换机制及控制器类型;4) 完整驱动开发流程,从设备树节点创建到probe/remove回调实现。通过理论结合实践的方式,为开发者提供了从环境搭建到功能实现的完整技术路径。
2026-03-05 16:17:21
627
原创 【Linux 驱动开发】Linux SPI 子系统与 74HC595/OLED 实战指南
本文系统介绍了Linux SPI子系统及其在74HC595和OLED应用中的实战指南。主要内容包括:74HC595移位寄存器原理与SPI协议映射关系,Linux SPI驱动框架(核心层、控制器驱动和从设备驱动),关键数据结构如spi_device详解,以及内核配置裁剪要点。文章还提供了设备树绑定示例、用户态spidev接口使用方法,并针对SPI OLED操作和74HC595驱动编写给出具体范例。最后涵盖调试技巧、性能优化和常见问题解决方案,帮助开发者从硬件连接到软件驱动形成完整开发闭环。
2026-01-30 18:21:47
1096
原创 【Linux 驱动开发】Linux Input 子系统与 I²C 驱动全景解析(键盘 / 触摸屏 / 鼠标)
本文全面解析Linux内核中的I²C子系统框架及其协议实现,重点介绍I²C驱动开发流程。文章首先回顾Input子系统三层架构(硬件适配层、协议/驱动层、核心仲裁层),随后详细阐述I²C子系统的三层次结构(i2c-driver层、i2c-core层、i2c-adapter层),并配以STM32MP1平台示例。第二部分深入讲解I²C协议规范,包括读/写操作时序、信号类型(开始/结束/响应)以及双向传输实现原理,通过开漏电路示意图说明多设备共享总线的机制。
2026-01-28 11:01:58
1049
原创 【Linux 驱动开发】Linux Input 子系统全景解析与实战优化
本文系统解析了Linux Input子系统的框架与开发实践。Input子系统通过三层架构(input_dev、input_core、input_handler)统一管理各类输入设备(键盘、鼠标、触摸屏等),实现硬件数据采集与用户交互的解耦。关键点包括:1)统一数据结构input_event;2)input_dev驱动层负责硬件初始化与数据上报;3)input_handler处理层提供标准设备节点。文章详细阐述了GPIO按键驱动的开发流程,涵盖设备树配置、事件上报机制,并针对不同输入设备类型。
2026-01-27 11:55:45
768
原创 【Linux 驱动开发】七. 中断下半部
文章全面梳理 Linux 中断下半部的三种实践:tasklet 强调快速上下文并提示退出需配合 tasklet_kill;工作队列结合私有 workqueue 与 cancel_work_sync 保证任务顺序回收;线程化中断阐明 IRQF_ONESHOT 与 IRQ_WAKE_THREAD 的联用以及可睡眠优势。文中进一步补充 mmap 映射时的物理内存选取策略、poll 读后重置 have_data、定时器初始化与 del_timer_sync 的释放流程,并罗列常见陷阱、同步要点与消抖策略。
2026-01-26 21:34:56
782
原创 【Linux 驱动开发】六. 中断和阻塞/非阻塞IO的实现
文章系统梳理 Linux 中断机制与阻塞/非阻塞 I/O 驱动实现流程,先解释中断引入的背景、上下半部职责及设备树中断资源的描述方法,随后以 GPIO 按键为例给出旧新两套 GPIO API 的获取虚拟中断号、注册处理函数、同步数据的代码框架,并扩展 threaded IRQ、tasklet、workqueue 等下半部策略。
2026-01-26 17:31:06
758
原创 【Linux 驱动开发】五. 设备树
本文详细介绍了Linux LED驱动的三种开发方式,重点探讨了设备树(Device Tree)驱动的实现方案。针对STM32MP1平台,文章梳理了从DTS描述、内核匹配到驱动编写调试的完整闭环流程,并对比了传统方式、平台总线方式和设备树方式的优缺点。特别强调了设备树实现的关键在于硬件描述与驱动逻辑的解耦,通过DTS/DTSI/DTB文件体系实现硬件配置的可维护性和复用性。文中还提供了设备树语法详解、常用命令示例以及开发注意事项,为嵌入式Linux开发者提供了LED驱动开发的实践指南。
2026-01-26 16:01:04
872
原创 【Linux 驱动开发】四. 平台总线驱动
本文总结了Linux平台总线驱动与设备树开发的关键知识点。主要内容包括:1)平台总线(platform bus)的作用是将硬件数据与通用操作分离,实现驱动复用;2)核心结构体如platform_driver、platform_device的组成与注册方法;3)三种驱动开发方式(传统、平台总线、设备树)的对比;4)常见开发陷阱如时钟未开启、compatible不匹配等。通过设备树描述硬件资源,结合平台总线框架,可构建更灵活、可维护的Linux设备驱动。
2026-01-23 17:54:45
1194
原创 【Linux 驱动开发】三. 应用程序调用驱动过程分析
文章摘要:本文分析了Linux应用程序调用驱动的完整链路,重点介绍了内核中的关键数据结构及其交互关系。主要内容包括:1) 使用kzalloc进行设备对象内存分配时的注意事项;2) struct file、struct inode和struct cdev等核心结构体的作用解析,特别是file_operations作为VFS与驱动的桥梁功能;3) 面向对象编程在驱动开发中的应用,包括通过container_of获取设备对象和private_data的使用方法。
2026-01-23 11:35:47
742
原创 【Linux 驱动开发】二. linux内核模块
本文概括Linux驱动从需求、原理图到内核框架的全流程,梳理Source Insight创建与同步技巧,解析LED硬件电路与GPIO寄存器映射,并给出字符设备模块编写、编译、加载及参数传递、设备节点创建等步骤,助你快速落地驱动开发实践。
2026-01-22 21:37:32
747
原创 【Linux 驱动开发】一. 搭建开发环境
本文档详细介绍了在Ubuntu系统中配置STM32MP157开发环境的完整流程。主要内容包括:1)检测并安装Samba、TFTP和NFS服务;2)设置共享目录/tftpboot和/opt;3)拷贝内核镜像和设备树文件;4)部署文件系统并配置NFS服务;5)连接开发板并设置U-Boot参数;6)安装交叉编译工具链。该指南提供了从服务配置到开发板启动的全套操作步骤,帮助开发者快速搭建嵌入式开发环境。所有操作均包含详细的命令行示例和配置说明,确保流程的可执行性。
2026-01-22 18:04:57
978
原创 【Linux 驱动开发】嵌入式 Linux 开发概念
摘要:本文系统介绍了单片机的基本原理、组成结构及开发流程,重点对比了单片机与嵌入式Linux的差异。单片机作为集成CPU、存储器和外设的微型计算机系统,具有低成本、低功耗特点,广泛应用于家电控制、工业仪表等领域。文章详细解析了CPU、存储器、I/O接口等核心模块功能,列举了51系列、AVR、STM32等常见单片机类型。同时,阐述了嵌入式Linux系统在复杂应用场景的优势,并提供了从单片机开发过渡到嵌入式Linux的学习路径建议,包括根文件系统制作、驱动移植等关键技术要点。最后给出了单片机开发的实践指导。
2026-01-22 17:22:15
828
2
原创 【ARM】裸机代码重定位加载
本文摘要: 裸机代码重定位加载的核心问题在于程序变量的存储位置与运行位置不一致。全局变量如char test_char1='A'在编译时链接到RAM地址,但其初始值存储在Flash中,需在启动时完成数据段重定位才能正确访问。文章分析了STM32启动时的默认时钟配置,解释了不同类型变量(可读写数据段、只读数据段、BSS段)的存储特性,并指出标准库工程通过__main函数自动完成重定位,而手写启动代码需自行实现。 关键点包括: 重定位三要素:源地址、目标地址、长度。
2025-12-30 11:42:22
1081
原创 【ARM】STM32MP157裸机代码
STM32MP157芯片启动流程与内存映射解析 摘要: STM32MP157芯片采用多阶段启动流程:1)ROM代码根据BOOT引脚选择启动设备并加载FSBL(TF-A BL2);2)FSBL初始化时钟和DDR后加载SSBL(U-Boot);3)U-Boot加载Linux内核。关键点包括:ROM内置标准存储设备驱动;TF-A需针对不同板卡调整DDR和时钟配置;内存映射中0x2FFC0000为TF-A固定加载地址,0xC0100000为U-Boot加载地址。OP-TEE作为可选安全组件,在非安全场景可省略。
2025-12-30 09:48:32
1136
原创 【ARM】从零封装STM32标准库
本文摘要了STM32F10x系列GPIO外设的寄存器定义和操作函数。头文件stm32f10x.h定义了GPIO和RCC外设的寄存器结构体、基地址映射、引脚编号枚举以及工作模式/速度配置类型。stm32f10x_gpio.h声明了三个关键函数:GPIO_SetBits/ResetBits用于控制引脚输出电平,GPIO_Init函数实现引脚模式初始化,通过分析GPIO_Mode参数判断输入/输出模式,并配置CRL/CRH寄存器设置具体引脚的工作模式和速度。
2025-12-24 19:37:44
545
原创 【ARM】ARM 汇编语言程序设计
本文介绍了ARM汇编语言程序设计的基础知识,主要包括:1)ARM汇编伪操作概念与分类,如数据定义伪操作(.byte、.short等)和汇编控制伪操作(.if、.macro等);2)ARM伪指令如ADR和LDR的使用方法;3)ARM汇编程序结构,包括分段格式和AAPCS调用标准;4)通过实验演示了ARM汇编编程实现数据相加操作的过程;5)介绍了C与汇编混合编程的内联汇编语法格式。文章还简要提及了Cortex-A7 GPIO的功能介绍,为后续硬件编程打下基础。
2025-12-24 19:30:25
1089
原创 【ARM】ARM体系结构与开发基础(二)
本文介绍了ARM体系架构与开发基础,主要内容包括: ARM架构概述:解释了ARM公司的业务模式(仅设计CPU架构)、ARM架构分类(Cortex-A/M/R系列)及发展历程,重点说明了ARMV7和ARMV8架构特性。 关键概念区分:阐述了指令集、CPU核心和SoC的关系,以STM32MP157为例说明芯片设计层次。 Cortex-A7内核详解: 9种工作模式(User/SVC/IRQ等) 寄存器组织特点(43个32位寄存器,banked机制)
2025-12-24 18:44:26
995
原创 【ARM】VSCode和IAR工程创建
本文介绍了VSCode和IAR两种嵌入式开发环境的工程创建方法。在VSCode部分,详细说明了插件安装、编译工具链设置(ARM CC和GCC的对比及配置要点)、调试下载配置注意事项,并提供了STM32串口重定向的代码示例。IAR部分则介绍了界面布局、风格设置等基础操作。文章特别强调了不同编译器在启动文件、内存管理等方面的差异,并针对常见问题提供了解决方案,如GCC编译STM32固件库时的代码修改要求等。通过图文结合的方式,为开发者提供了实用的环境搭建指南。
2025-12-10 12:03:58
1591
原创 【ARM】内核移植(编译)
本文详细介绍了Linux内核移植的关键步骤与流程。首先梳理了硬件工程师、系统工程师、驱动工程师等角色在项目中的职责分工与交付物。随后重点讲解了内核源码获取的两种渠道(官方镜像和芯片原厂BSP包)、解压和打补丁的详细操作,特别强调了日志记录的重要性。在配置环节,文章详细说明了如何生成标准板配置文件、安装必要工具库以及通过menuconfig进行内核定制。最后介绍了内核编译命令和版本管理注意事项,包括环境变量确认和merge_config.sh的使用技巧。整个过程涵盖了从源码获取到最终编译的完整流程。
2025-12-08 09:53:54
1130
原创 【ARM】BootLoader(Uboot)介绍
本文介绍了BootLoader(以U-Boot为例)的基本概念、启动流程和功能特点。BootLoader是操作系统内核运行前的一段程序,负责硬件初始化和内存映射,分为stage1(硬件初始化、准备RAM空间)和stage2(设备初始化、加载内核)两个阶段。U-Boot作为开源引导程序,支持多种处理器和操作系统,提供丰富的设备驱动和调试命令(如启动内核、擦写Flash等)。文章还列出了U-Boot的常用命令集,展示了其强大的系统部署和调试能力,是嵌入式开发的关键工具。
2025-12-05 14:58:48
1220
原创 【ARM】ARM体系结构与开发基础(一)
本文介绍了ARM体系结构与开发基础,重点讲解了ARM汇编实验和程序设计方法。主要内容包括:1)在Eclipse中创建ARM汇编工程的详细步骤,包括Makefile、start.S汇编程序和链接脚本的编写;2)ARM汇编语言程序设计,涵盖伪操作概念、数据定义伪操作、汇编控制伪操作等;3)ARM伪指令的使用方法,如ADR和LDR伪指令;4)ARM汇编程序结构格式和过程调用标准AAPCS;5)ARM内联汇编的格式说明。文章通过具体代码示例和操作截图,解析了ARM汇编开发的完整流程和关键知识点,为ARM提供了基础。
2025-12-05 13:12:29
1084
原创 【ARM】eclipse 中创建汇编工程
参考:Cortex-A7 开发环境搭建本文的目的在于帮你在主机上搭建一套完整的 Cortex-A7 交叉开发环境,从工具链安装到仿真、烧录与调试,为后续驱动与系统开发打下基础。假定你已学会了 Linux 基础命令、嵌入式交叉编译概念。
2025-12-05 12:09:12
744
原创 【ARM】ARM的介绍
ARM架构与开发环境概述 ARM架构包含三大系列:Cortex-M(微控制器)、Cortex-A(应用处理器)和Cortex-R(实时处理器)。Cortex-M面向低功耗嵌入式设备,Cortex-A支持复杂操作系统,Cortex-R用于硬实时控制。ARM寄存器组织包含43个32位寄存器,工作模式决定可访问的寄存器组。存储系统采用多级架构,包含MMU实现虚拟内存管理。处理器采用流水线技术,三级和五级流水线通过并行执行提高效率,但访存指令和互锁会影响性能。Cortex-A7裸机开发环境需特殊仿真器和工具链支持。
2025-12-04 21:53:41
1255
原创 【PCB工艺】数模电及射频电路基础
本文系统介绍了数模电及射频电路基础知识,重点分析了半导体特性、二极管和三极管工作原理。主要内容包括:1)导体、绝缘体与半导体特性差异,N型与P型半导体载流子特点;2)PN结形成机制及二极管单向导电性,稳压二极管和发光二极管特性;3)三极管放大原理,工作区划分及特性曲线分析;4)门电路与组合逻辑设计要点;5)射频电路关键参数与信号处理技术。文章通过图文结合方式,深入浅出地阐述了电子元件的基本工作原理及其在电路中的应用特性。
2025-12-04 20:53:19
2230
原创 【汇编语言】ARM体系结构(含汇编开发)
ARM体系结构综述 本文系统梳理了ARM架构的发展历程与技术特性。ARM自1985年推出首款处理器ARM1以来,历经多次迭代,从ARMv1演进至ARMv9,形成了Cortex-A/R/M三大产品线,分别面向应用处理器、实时控制和微控制器场景。文章深入解析了ARM的硬件基础原理,包括三极管工作原理、门电路组成以及处理器的RISC架构特点。通过对比CISC与RISC指令集,阐述了ARM采用精简指令集的设计优势,最后介绍了ARM处理器的基本架构和寄存器访问机制,为理解嵌入式系统提供了硬件层面的理论基础。
2025-11-02 15:39:17
736
原创 【STM32项目】智能门锁项目(二)
摘要: 本文详细介绍了基于STM32的智能门锁系统开发流程。主要内容包括:1)构建标准库工程目录;2)移植FreeRTOS操作系统并进行验证测试;3)配置串口通信模块(USART1用于调试,USART2连接机智云,USART3连接AS608指纹模块)。文中提供了完整的项目代码(GitHub链接),重点讲解了FreeRTOS移植过程中的关键配置,如中断向量表绑定、任务调度设置等,并通过LED灯闪烁实验验证移植成功。文章还给出了串口初始化的示例代码,为后续功能模块开发奠定了基础。
2025-10-09 12:47:18
1342
原创 【STM32项目】智能门锁项目(一)
本文详细介绍了基于STM32F103RCT6的智能门锁系统设计与实现。系统支持密码、指纹和刷卡三种开锁方式,并具备Wi-Fi远程控制功能。硬件采用模块化设计,包含AS608指纹识别、MFRC522射频读卡、矩阵键盘等核心模块,通过FreeRTOS实现任务调度。软件方面集成了LVGL图形界面、MQTT通信协议和AES加密,确保系统安全性和交互性。项目还支持OTA升级和多方式组合验证(如"密码+指纹"),测试显示指纹识别准确率超99.9%,响应时间小于1秒。文章从硬件连接、程序设计到调试测试
2025-10-09 11:11:12
1009
STM32JTAG / SWD 调试原理简析 文章对应的完整源代码资源 STM32F103RC的在线仿真功能 解压后打开文件 MDK-ARM\STD-Proj.uvprojx
2025-06-23
运行开发板前的网络配置: 资源内容包含演示代码中的音乐播放器配置的详细过程 + 运行开发板之前的网络服务配置
2024-12-14
《流程图、图灵机和只有两条形成规则的语言》论文原版
2024-10-19
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅