自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

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

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

2025-07-30 12:20:35 646

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

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

2025-07-29 08:53:48 434

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

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

2025-07-28 10:10:20 757

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

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

2025-07-26 10:19:03 610

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

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

2025-07-23 20:39:32 1112

原创 一文看透 SysTick 定时器

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

2025-07-22 17:44:10 870

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

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

2025-07-20 16:56:14 545

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

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

2025-07-16 16:25:08 238

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

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

2025-07-05 22:44:56 790

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

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

2025-06-12 08:39:57 869

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

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

2025-05-30 14:40:46 738

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

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

2025-05-28 12:41:22 624

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

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

2025-05-26 08:42:50 722

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

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

2025-05-21 18:38:38 1236

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

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

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

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

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

2025-05-16 08:48:37 752

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

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

2025-05-15 09:17:39 924

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

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

2025-05-14 17:36:22 644

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

向量表是什么?

2025-05-13 10:33:49 626

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

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

2025-05-12 09:14:35 903

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

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

2025-05-11 08:08:25 670

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

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

2025-05-09 20:05:16 825

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

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

2025-05-08 20:40:24 1048

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

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

2025-05-07 08:54:29 1029

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

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

2025-05-05 17:31:28 839

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

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

2025-05-02 19:39:48 1586

原创 【ESP32S3】Cache 框图和操作

【ESP32S3】Cache 框图和操作

2025-04-26 17:54:54 1015

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

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

2025-04-25 20:59:30 484

原创 Linux常用命令 - scp【OpenSSH 安全文件拷贝】

scp,全称 "secure copy" 即“安全拷贝”,scp 命令基于 SSH (Secure Shell) 协议,用于在 Linux 系统之间或 Linux 系统与本地计算机之间安全地传输文件。它通过加密数据传输过程,防止敏感信息在网络上被窃取,保证了文件传输的安全性。底层原理是利用 SSH 协议建立安全的连接,然后通过该连接进行文件复制。

2025-04-24 08:47:19 644

原创 Linux 常用命令 -pkill【通过进程名或其他属性来发送信号给一个或多个进程】

pkill 来自 "process kill",意为进程终止。它允许你通过进程名或其他属性来发送信号给一个或多个进程,而无需手动查找进程 ID (PID)。pkill 命令在需要批量终止进程或根据特定条件终止进程时非常有用。 其原理是根据给定的模式匹配进程名,然后向匹配到的进程发送指定的信号(默认为 SIGTERM)。

2025-04-20 19:44:26 599

原创 Linux 常用命令 - killall【通过名称终止进程】

killall 命令,顾名思义,是 "kill all" 的缩写,即“杀死全部”。它允许你通过进程的名称,而不是进程ID(PID),来向一个或多个进程发送信号。killall 命令简化了向多个具有相同名称的进程发送信号的过程,无需手动查找每个进程的PID。

2025-04-17 10:12:18 1066

原创 明明包含了头文件,为何还是显示未定义错误?

明明包含了头文件,为何还是显示未定义错误?

2025-04-12 20:28:42 1170

原创 Linux 常用命令 - ip 【显示和配置网卡参数】

ip 是 "Internet Protocol" 的简写,属于 iproute2 工具集的组成部分。这个多功能网络配置工具通过 netlink 协议直接与内核通信,用于管理网络接口、路由表、ARP 缓存、隧道等网络组件。

2025-04-11 12:38:17 949

原创 内部 FLASH 存数据,你一定要知道 ......

如何使用单片机内部 FLASH 存储数据,有哪些注意点,如何保证数据的稳定存储?

2025-04-06 14:11:52 861

原创 Linux 常用命令 - last 【显示历史登录用户列表】

last 命令源自英文单词 "last",意为“最后”。该命令用于显示系统中用户的登录和注销记录,以及系统的重启和关机记录。它通过读取 `/var/log/wtmp` 文件来获取这些信息,`wtmp` 文件记录了所有用户的登录和注销活动。

2025-03-23 14:21:12 922

原创 Linux 常用命令 - echo 【输出一行文字】

echo 命令源自英文单词 “echo”,意为“回声”或“反馈”。在 Linux 系统中,它主要用于在终端显示一行文字,是一种输出字符串或变量到标准输出(通常是屏幕)的简单方式。

2025-02-17 08:46:04 1298

原创 Linux 常用命令 - ps 【显示进程状态】

ps 命令源于 “process status(进程状态)”,用于显示当前系统中的进程信息。它可以展示进程的诸多细节,如 PID(进程ID)、正在运行的命令名、CPU使用率、内存使用、运行时间等。基本原理是读取系统中与进程相关的数据,如 /proc 文件系统中的信息,并以用户友好的方式展示出来。

2025-02-09 18:22:49 2023

原创 Linux 常用命令 - sort 【对文件内容进行排序】

sort 命令源于英文单词 “sort”,表示排序。其主要功能是对文本文件中的行进行排序。它可以根据字母、数字、特定字段等不同的标准进行排序。`sort` 通过逐行读取文件(没有指定文件或指定文件为 `-` 时读取标准输入)内容,并按照指定的排序规则对行进行排序,最后输出排序后的结果。

2025-01-27 14:30:00 1017

原创 Linux 常用命令 - chmod 【改变文件或目录权限】

"chmod" 这个命令来自于 "change mode" 的缩写,用于更改文件或目录的访问权限。这个命令允许用户设定谁可以读取、写入或执行一个文件。在 Linux 和其他类 Unix 系统中,文件权限对系统安全和用户隐私至关重要。

2025-01-16 19:19:55 1848

原创 Linux 常用命令 - which【定位可执行文件的位置】

which 命令源自于英文单词 "which",用于在环境变量 PATH 所指定的路径中搜索某个可执行文件或链接(如一个系统命令)的位置,并返回第一个搜索结果。这个命令会遍历 PATH 环境变量中的所有路径,直到找到指定的可执行文件。

2025-01-13 14:45:23 253

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

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

2018-03-27

W601_DEMO_V1.0.rar

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

2020-02-26

空空如也

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

TA关注的人

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