- 博客(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
原创 深入理解 Cortex-M 处理器的配置控制寄存器
在 Cortex-M3/M4 的系统控制块(SCB)中存在一个名为配置控制寄存器(CCR)的寄存器,它可以调整处理器的某些行为以及进行一些高级特性的控制。该寄存器的地址为 0xE000ED14,并且只能在特权级别下访问。
2025-08-05 19:10:13
1201
原创 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
原创 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
原创 回调函数,到底调了个啥?
回调函数,相信大家多多少少都有听过,有些小伙伴已经深刻理解其精髓,并在项目中用得游刃有余,当然还有一些小伙伴,处于一知半解甚至完全懵逼的情况。到底什么是回调函数?和普通函数有啥区别?为啥要用回调函数?
2025-05-17 07:01:07
883
1
原创 Linux 常用命令 -hostnamectl【主机名控制】
hostnamectl 命令中的 "hostname" 顾名思义,指的是计算机在网络上的名称,"ctl" 是 "control" 的缩写,意味着控制。hostnamectl 命令用于查询和修改系统主机名以及相关的设置。它通过与 systemd 系统管理器交互,允许用户以简单的方式管理主机名,而无需直接编辑配置文件。主机名在网络中用于标识设备,方便用户和服务进行通信和识别。
2025-05-14 17:36:22
950
原创 深入理解 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
原创 Linux 常用命令 - tar【归档与压缩】
tar 这个名称来源于 "tape archive",最初设计用于将文件归档到磁带上。现在,tar 命令已经成为 Linux 系统中最常用的归档工具,它可以将多个文件和目录打包成一个单独的归档文件,并且可以选择使用不同的压缩算法进行压缩,以减小归档文件的大小。tar 本身只是一个打包工具,不具备压缩功能。通过与其他压缩工具(如 gzip、bzip2、xz)结合使用,可以实现归档和压缩的双重目的。
2025-05-02 19:39:48
1923
原创 【ESP32S3】 下载时遇到 libusb_open() failed 解决方案
下载时遇到 libusb_open() failed 解决方案
2025-04-25 20:59:30
842
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅