自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(105)
  • 资源 (2)
  • 收藏
  • 关注

原创 VSCode 1.106 版本发布 —— 更强 AI 特性,更丝滑的编程体验!

VSCode 1.106 版本发布,更强 AI 特性,更丝滑的编程体验!

2025-11-15 09:34:56 1042 1

原创 OS 特性之PendSV 异常

上一篇文章我们了解了 SVC 异常,其可以作为一个 API ,使应用任务能够访问到系统资源,对于 OS 的设计来说非常重要。今天我们就来看一下另一个对 OS 设计及其重要的异常 —— PendSV 异常。

2025-11-10 15:11:11 478

原创 OS 特性之 SVC 异常

在嵌入式 OS 的设计与实现中, SVC(请求管理调用)和 PendSV(可挂起的系统调用)异常非常重要,今天我们先来看一下 SVC 异常。

2025-09-26 07:48:59 1253

原创 OS 特性之影子栈指针

Cortex-M 处理器设计之初就考虑了对 OS 的支持,因此处理器架构本身实现了多种 OS 支持特性,保证了 OS 设计的方便和其运行的高效。

2025-09-10 16:06:01 928

原创 MCU 也能上 WEB?揭秘 UPLOAD TOOL 使用原理!

MCU 也能上 WEB?揭秘 UPLOAD TOOL 使用原理!

2025-08-17 20:05:27 1028

原创 MCU 也能上 WEB?探索 OTA 新姿势!

WEB + OTA,新一代嵌入式在线升级方案!

2025-08-15 13:04:45 892

原创 嵌入式软件开发?进来看看你入门了吗!

怎样算真正入门嵌入式软件开发?

2025-08-09 21:25:45 753

原创 揭秘!优先级反转下的任务调度究竟是什么样的?

揭秘!优先级反转下的任务调度究竟是什么样的?

2025-08-08 19:23:32 623

原创 火星上出现的优先级反转

这极有可能是 NASA 探测器在火星上搞出的第一个 BUG!

2025-08-07 09:09:42 853

原创 深入理解 Cortex-M 处理器的配置控制寄存器

在 Cortex-M3/M4 的系统控制块(SCB)中存在一个名为配置控制寄存器(CCR)的寄存器,它可以调整处理器的某些行为以及进行一些高级特性的控制。该寄存器的地址为 0xE000ED14,并且只能在特权级别下访问。

2025-08-05 19:10:13 1201

原创 国产嵌入式调试器之光? RT-Trace 初体验!

RT-Trace 初体验!

2025-08-02 17:54:23 859

原创 同样的代码,GCC 编译和 KEIL 编译,大小到底差多少?

同样的代码,GCC 编译和 KEIL 编译,大小到底差多少?

2025-07-31 18:51:49 1007

原创 C语言中的变长数组

C语言不能定义变长数组?你可能被骗了!

2025-07-30 12:20:35 997

原创 Github 连接救星,完全合规合法,无风险!

完全合规,合法,这个软件助你无痛访问 Github!

2025-07-29 08:53:48 1051

原创 链表的艺术 —— 数组的窘境

数组简单易用,但遇到需要动态改变大小,中间插入、删除等操作就头大了,而链表则完美解决了这些问题。

2025-07-28 10:10:20 817

原创 MultiTimer —— 一个极简裸机任务调度框架

MultiTimer —— 一个极简裸机任务调度框架

2025-07-26 10:19:03 907

原创 VSCode 开发 STM32 - clangd 带来的极致补全体验

工欲善其事,必先利其器,一个开发者对于其开发工具的探索是永无止境的,恰好 VSCode 拥有着各种各样的插件,这就使其有着无穷的拓展可能性。本次要介绍的就是其 clangd 插件 —— 一款代码智能分析/补全/跳转工具。

2025-07-23 20:39:32 1681 2

原创 一文看透 SysTick 定时器

在嵌入式 MCU 开发中,有这么一个 “神奇” 的模块,无论是新手工程师还是资深工程师,无论是裸机开发还是 RTOS 开发,无论是简单项目还是复杂项目,都会接触或使用到。

2025-07-22 17:44:10 972

原创 中断底层特性与优化机制

在异常与中断章节的最后,我们再来一起看一下其内部实现的几个特性与处理器的一些优化机制。这些概念可能你从未了解过,但你实现的每一个中断都会真实经历这其中的一个或多个流程。理解并运用它们,可以帮助你写出更高效,更快速的中断处理逻辑!

2025-07-20 16:56:14 664

原创 异常流程进阶 —— 进出异常时的压栈与出栈

异常流程进阶 —— 进出异常时的压栈与出栈

2025-07-16 16:25:08 326

原创 Cortex-M 异常处理的 C 实现、栈帧以及 EXC_RETURN

Cortex-M 异常处理的 C 实现、栈帧以及 EXC_RETURN

2025-07-05 22:44:56 929

原创 Cortex-M 中断的设置步骤及你必须要了解的一些重点

Cortex-M 中断的设置步骤及你必须要了解的一些重点

2025-06-12 08:39:57 991

原创 深入理解用于中断控制的特殊寄存器

深入理解用于中断控制的特殊寄存器

2025-05-30 14:40:46 938

原创 Linux 常用命令 -md5sum【计算和校验文件的MD5哈希值】

md5sum 源于 "MD5 message-digest algorithm",即 MD5 消息摘要算法。这个命令用于计算和校验文件的 MD5 哈希值。MD5 是一种被广泛使用的密码学哈希函数,它将任意长度的数据映射为固定长度(128位)的哈希值,通常以32位十六进制数表示。md5sum 命令通过读取文件内容,使用 MD5 算法生成该文件的唯一“指纹”(哈希值)。这个指纹可以用于验证文件在传输或存储过程中是否发生更改。

2025-05-28 12:41:22 768

原创 深入理解用于中断控制的 SCB 寄存器

除了 CMSIS-Core 中的 NVIC 数据结构,系统控制块(SCB)中还包含了一些用于中断控制的寄存器,你理解这些寄存器吗?

2025-05-26 08:42:50 1007

原创 深入理解用于中断控制的 NVIC 寄存器

深入理解用于中断控制的 NVIC 寄存器

2025-05-21 18:38:38 1638

原创 回调函数,到底调了个啥?

回调函数,相信大家多多少少都有听过,有些小伙伴已经深刻理解其精髓,并在项目中用得游刃有余,当然还有一些小伙伴,处于一知半解甚至完全懵逼的情况。到底什么是回调函数?和普通函数有啥区别?为啥要用回调函数?

2025-05-17 07:01:07 883 1

原创 详解 Cortex-M 的异常流程

处理器对于异常的执行流程究竟是什么样的。

2025-05-16 08:48:37 823

原创 深入理解 Cortex-M 的中断输入和挂起行为

深入理解 Cortex-M 的中断输入和挂起行为

2025-05-15 09:17:39 1007

原创 Linux 常用命令 -hostnamectl【主机名控制】

hostnamectl 命令中的 "hostname" 顾名思义,指的是计算机在网络上的名称,"ctl" 是 "control" 的缩写,意味着控制。hostnamectl 命令用于查询和修改系统主机名以及相关的设置。它通过与 systemd 系统管理器交互,允许用户以简单的方式管理主机名,而无需直接编辑配置文件。主机名在网络中用于标识设备,方便用户和服务进行通信和识别。

2025-05-14 17:36:22 950

原创 深入理解 Cortex-M 向量表和向量表重定位

向量表是什么?

2025-05-13 10:33:49 746

原创 深入理解 Cortex-M 处理器中异常与中断的优先级

对于 Cortex-M 处理器(包括 ARMv6-M 和 ARMv7-M)异常是否能被处理器接受以及合适被处理器接受并执行异常处理,是由异常的优先级和处理器当前的优先级决定的。更高优先级的异常(优先级编号更小)可以抢占低优先级的异常(优先级编号更大),这就是异常/中断嵌套的情形。

2025-05-12 09:14:35 1058

原创 深入理解 Cortex-M 的异常和中断

嵌入式开发免不了要和异常和中断打交道,其中中断是实时性的重要保证,可能大部分工程师对中断非常熟悉,日常编码中也经常用到中断,但实际上,中断只是异常的一种,在中断之上有一个非常严密的异常机制。

2025-05-11 08:08:25 877

原创 既然指针的本质是地址,那为啥还需要指定数据类型呢?地址不就是一串 0x 数字吗?

既然指针的本质是地址,那为啥还需要指定数据类型呢?地址不就是一串 0x 数字吗?

2025-05-09 20:05:16 908

原创 Linux 常用命令 - tftp【简单文件传输协议】

tftp 源于 Trivial File Transfer Protocol(简单文件传输协议)的缩写。它被用于在本地主机和远程主机之间传输文件,尤其是那些非常精简的、通常是嵌入式的系统。 你可以在命令行中指定远程主机,如果指定了,tftp 会将该主机作为后续传输的默认主机。

2025-05-08 20:40:24 1464

原创 深入理解 Cortex-M3 特殊寄存器

Cortex-M3 特殊寄存器 —— 程序状态寄存器,中断/异常屏蔽寄存器与控制寄存器

2025-05-07 08:54:29 1182

原创 深入理解 Cortex-M3 的内核寄存器组

深入理解 Cortex-M3 的内核寄存器组

2025-05-05 17:31:28 977

原创 Linux 常用命令 - tar【归档与压缩】

tar 这个名称来源于 "tape archive",最初设计用于将文件归档到磁带上。现在,tar 命令已经成为 Linux 系统中最常用的归档工具,它可以将多个文件和目录打包成一个单独的归档文件,并且可以选择使用不同的压缩算法进行压缩,以减小归档文件的大小。tar 本身只是一个打包工具,不具备压缩功能。通过与其他压缩工具(如 gzip、bzip2、xz)结合使用,可以实现归档和压缩的双重目的。

2025-05-02 19:39:48 1923

原创 【ESP32S3】Cache 框图和操作

【ESP32S3】Cache 框图和操作

2025-04-26 17:54:54 1170

原创 【ESP32S3】 下载时遇到 libusb_open() failed 解决方案

下载时遇到 libusb_open() failed 解决方案

2025-04-25 20:59:30 842

智能车国赛光电组摄像头处理参考代码

关于光电直立组的摄像头处理程序,包含路障判断、起跑检测等。资源为c源文件,是摄像头图像处理的核心文件。

2018-03-27

W601_DEMO_V1.0.rar

基于W601硬件平台与RT-Thread嵌入式操作系统实现的温湿度监测与邮件报警系统,内置webserver,通过浏览器与开发板进行交互。

2020-02-26

空空如也

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

TA关注的人

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