【分层架构】关于嵌入式分层的探讨
本文从实际开发痛点出发,结合具体代码案例,介绍嵌入式项目为何需要分层架构,并详细解析各层职责、划分规则以及公共层的灵活运用 一、前言 刚接触嵌入式那会儿,我动手做项目的方式很直接:想到什么逻辑就直接写在代码里,也就是俗称的“硬编码”。做点简单的小玩意儿倒还好,没觉得有什么问题。 可一旦项目变复杂了, ...
如何在EDKII中编译UNIX风格C语言
一、前言 通过阅读前面的 EDKII 相关代码实现,我们可以很容易发现其虽使用的是 C 语言语法,但编写规则与我们在 IDE 或者操作系统上运行的 C 语言代码不太一样。以简单的 HelloWorld 程序为例。EDKII 中的代码为: #include <Uefi.h> #include <Lib ...
痞子衡嵌入式:大话双核i.MXRT1180之XIP应用里借助MU实现可靠Flash IAP的方法
大家好,我是痞子衡,是正经搞技术的痞子。今天痞子衡给大家介绍的是双核i.MXRT1180下XIP应用里实现可靠Flash IAP的方法。 近期有一个 RT1180 客户在咨询关于双核应用下 Flash IAP 实现的问题,其应用场景是:主核 CM33 运行在 FlexSPI XIP Flash 代码 ...
《DNESP32P4开发指南_V1.0》第十七章 LEDC实验
第十七章 LEDC实验 LEDC(LED PWM控制器)是一种专门用于生成PWM信号的外设,设计初衷是用于LED的亮度控制。LEDC控制器具备丰富的功能,包括自动调整PWM占空比的渐变(即“渐变功能”),从而无需处理器干预即可实现平滑的亮度变化。此外,LEDC不仅适用于LED控制,还可以用于其他需要 ...
[A Primer On MC and CC] 2.1 Memory Consistency 1 - 指令重排序和 SC 模型
[A Primer Of CC And MC] 2.1 Memory Consistency 1 - 指令重排序和 SC 模型 前言 最近去了杭州的金沙湖玩, 顺带分享几张照片, 正好最近不太开心, 也算缓解了一下自己的情绪吧. 好了, 书接上回。上回我们对内存一致性协议起了个头, 这回我们继续来看 ...
即开即用!一款全能开源翻译 + OCR 工具!
STranslate —— 一款基于 WPF 开发的开源翻译 & OCR 工具,提供多翻译引擎接入、离线 OCR、划词/截图/剪贴板翻译等能力,轻量高效。 ...
解决HC32L13xxx系列MCU低功耗模式后无法下载问题的详细指南
问题概述 在使用华大半导体HC32L13xxx系列微控制器时,许多开发者反映MCU进入低功耗模式(如Stop、Sleep模式)后,无法通过调试器(J-Link、DAP-Link等)进行程序下载和调试。这是该系列芯片的一个常见痛点,尤其在低功耗应用开发中。 问题根源分析 主要原因 调试接口被禁用:在低 ...
《DNESP32P4开发指南_V1.0》第十六章 TIMG实验
第十六章 TIMG实验 在本章中,我们将深入探索ESP32-P4芯片中的定时器组(TIMG)功能。定时器不仅用于精确计时,还可用于生成中断和实现定时控制,为嵌入式系统的实时性能提供了重要支持。我们将详细介绍TIMG的结构、特性以及使用方法,通过一系列实验来展示如何配置和操作定时器。通过这些实验,读者 ...
无线烙铁TB1登场!无线功率可达28W,小巧轻量+无线有线双模式!
无线烙铁TB1登场!无线功率可达28W,小巧轻量+无线有线双模式! 当T90电烙铁凭借稳定可靠的表现,成为无数电子爱好者、维修师傅心中的“心头好”,我们深知,真正的领先从来不是停留在已有的成绩上,而是不断突破自我、超越行业上限。 如今,凝聚全新技术与设计理念的TB1无线电烙铁重磅登场,以28W强劲无 ...
嘉立创开源:应该是全网MicroPython教程最多的开发板
原文链接:https://freakstudio.cn/node/019bd0a4-2e9f-7007-8600-b45c1e4bcf5b 一、项目简介 1.1 引言 还在为嵌入式入门发愁?还在找一套系统的 MicroPython 教程? 作为一名嵌入式开发者,见过太多人被 C 语言、寄存器配置劝退 ...
Linux系统中的软连接和硬连接
软连接概述 软连接类似Windows中的快捷方式,本身是一个独立文件,有自己的inode,内容只是指向另一个文件的路径字符串。 其特点如下: 可以跨文件系统、跨分区、跨磁盘 可以链接目录 源文件删除后,软链接变成死链接(失效) 软链接大小 = 指向路径的字符串长度 支持相对路径、绝对路径创建软连接 ...
TLSF和伙伴系统融合算法实现
TLSF_BUDDY.h文件 #ifndef TLSF_BUDDY_H #define TLSF_BUDDY_H #define NULL 0 // TLSF (Two-Level Segregated Fit) Memory Allocator Implementation #define FRE ...
《物联网识别技术》期末速成复习笔记
️ 考前必读:试卷结构分析 试卷结构 通过分析历年试卷(6套),考试题型通常固定为: 填空/选择题(约 30-40 分):考察基本概念定义、分类。 简答题(约 30-50 分):考察工作原理、优缺点、应用场景。 分析计算题(约 20-30 分):死套公式,主要集中在 电桥计算、热电偶查表、霍尔电 ...
【C语言】“面向对象”:API的结构体封装
1. 引言 在嵌入式开发中,我们常会遇到这样的需求: 同一款产品可能会使用不同型号的传感器(比如 AHT20 或 SHT30),希望在编译甚至运行时切换驱动。 系统需要同时支持多个同类型设备(例如两个温湿度传感器),但上层逻辑希望统一调用。 这些场景都指向同一个设计需求:上层代码依赖“接口”而非具体 ...
conhost.exe 无法显示 U+2717
我想在 Windows 的传统控制台(conhost)中显示 U+2717(✗,BALLOT X)。选中系统默认的等宽字体 Consolas,输出的却是一个带有方框的问号。我在使用 NeoVim 时遇到了这个符号,其还需要 Nerd Fonts ,但甚至支持 Nerd Fonts 的字体很多都不支持 ...
使用 UEFI 图形输出协议 GOP 在屏幕上显示图像的方法
上一节中我们介绍了如何在 UEFI 应用程序中调用特定的 Protocol。本节的任务是利用 UEFI 中的图形输出协议 Gop 在屏幕上输出一个特定图形。下面是我们本次的工程目录。 MyPkg ├── Application │ └── GopDrawApp │ ├── GopDrawApp.c ...
《DNESP32P4开发指南_V1.0》第十五章 System Timer实验
第十五章 System Timer实验 系统定时器(System Timer)是ESP32-P4芯片中的核心外设之一,专为实现精确计时和事件触发而设计。系统定时器提供高分辨率的计数功能,可生成精确的时间中断,广泛应用于操作系统的Tick计时、定时任务的触发、低功耗模式下的时间管理等场景。在本章节中, ...
突破复杂嵌入式系统的性能瓶颈:Green Hills Software 在高可靠性领域的应用实践
在嵌入式系统的研发周期中,性能优化、安全合规与调试效率始终是开发者面临的“不可能三角”。尽管 Green Hills Software (GHS) 在自动驾驶领域声名远播,但在工业控制、医疗器械、航空航天及高端 IoT 领域,其深厚的技术积淀同样为解决复杂系统难题提供了核心支撑。 ...
Linux常用性能分析工具--Top【转载】
Top 是 Linux 下常用的性能分析工具,能够实时动态显示当前系统负载情况、内存使用情况,以及各个进程资源占用情况。 通过 top 命令显示系统整体情况。示例如下: top - 17:51:14 up 69 days, 20:06, 2 users, load average: 71.81, 7 ...
STM32CubeMX + Keil 开发技巧:使用 .exSettings 保留自定义文件夹与文件组
本文介绍一种在 STM32CubeMX 重新生成代码时,避免自定义文件夹和文件组被删除的方法 适用于 STM32CubeMX + Keil 开发环境 创作背景 在开发过程中常常要给项目分层,但是每次从 STM32CubeMX 重新生成代码,都会删除用户手动创建的文件夹和工程组,导致需要反复配置 查阅 ...


