- 博客(31)
- 资源 (3)
- 收藏
- 关注
![](https://csdnimg.cn/release/blogv2/dist/pc/img/listFixedTop.png)
原创 使用 jlink 对STM32H7进行指令追踪配置
STM32F743内集成有ETF单元(嵌入式跟踪FIFO),可以使用jlink进行简配版的指令追踪(和ETB追踪方法类似),而不必使用昂贵的jtrace进行指令追踪(jtrace可以使用ETM(嵌入式跟踪宏单元)而jlink不行)本教程使用安富莱v7开发板及配套的出厂程序进行演示,配合segger公司的ozone软件进行调试。当然keil也是可以配置使用指令追踪的,但是体验不如ozone好。我使用的是淘宝某D版jlink pro,但是普通jlink也是支持的,jlink pro和普通版的区别主要在于
2021-08-26 23:39:52
1879
![](https://csdnimg.cn/release/blogv2/dist/pc/img/listFixedTop.png)
原创 使用SciTools understand批量生成程序调用图
在阅读一个复杂项目的源代码时,每每遇到复杂的函数的时候都需要手动打开相关图形进行查看函数调用关系,实属麻烦。还好,understand提供了接口文件,能够让我们自己编写脚本文件来批量生成各种图形文件。
2020-08-29 00:51:08
6077
13
原创 最大耗散功率
最大耗散功率是电子元件的关键参数,它定义了在特定条件下元件能够安全散发的最大热功率。理解和管理最大耗散功率对于确保电子设备的可靠运行至关重要,特别是在高性能和高功耗的应用场景中。
2024-08-09 15:48:16
363
原创 关于芯片结温
芯片结温是芯片设计和应用中的一个关键参数,它直接影响芯片的性能、可靠性和寿命。有效的结温管理能够提高芯片的稳定性,延长其使用寿命,确保其在各种应用环境下的正常运行。理解和控制结温对于高性能和高可靠性电子产品的开发至关重要。
2024-08-09 14:16:36
849
原创 功能安全和信息安全概念区别
功能安全(Safety)关注的是系统在出现故障时的安全性,确保即使在故障情况下,系统不会对人员、设备或环境造成伤害。信息安全(Security)关注的是保护系统和数据免受恶意攻击,确保系统的机密性、完整性和可用性。尽管这两个概念有所不同,但它们在许多现代电子系统中都是必不可少的,尤其是在需要高安全性的应用场景中。
2024-08-09 11:46:18
543
原创 S32K1xx 系列安全手册
S32K118的具体信息在此设备合格之前是初步的。本文档讨论了在安全相关系统中集成和使用S32K1xx微控制器单元(MCU)的要求。它旨在支持安全系统开发人员使用S32K1xx的安全机制构建他们的安全相关系统,并描述为实现所需的系统级功能安全完整性而应实施的系统级硬件或软件安全措施。S32K1xx是根据ISO26262开发的,具有集成的安全概念。...
2022-07-29 00:05:09
5680
1
原创 S32K1xx 微控制器的硬件设计指南
S32K 系列进一步扩展了汽车行业中高度可扩展的 ARM® Cortex® MCU 产品组合。它以 KEA 系列的传统为基础,同时将更高的内存选项以及更丰富的外设集扩展能力引入各种汽车应用。S32K 系列器件采用 2.70–5.5 V 电源并专注于汽车环境稳健性,非常适合电气恶劣环境中的各种应用。这些器件针对提供低引脚数选项的成本敏感型应用进行了优化。S32K 系列提供广泛的内存、外围设备和封装选项。它们共享通用外设和引脚数,使开发人员能够在 MCU 系列内或在 MCU 系列之间轻松迁移,以利用更多内存或功
2022-06-28 23:32:22
2895
原创 ARM 编译器 armclang 参考指南 - armclang 命令行选项
第 1 章 armclang 命令行选项本章总结了 armclang 支持的选项。armclang 提供了许多命令行选项,包括大多数 Clang 命令行选项以及一些特定于 Arm 的选项。有关社区功能命令行选项的其他信息,请参阅 LLVM 编译器基础结构项目网站 http://llvm.org 上的 Clang 和 LLVM 文档。注意请注意以下几点:• 两个 Arm 编译器版本之间生成的代码可能不同。• 对于功能版本,可能存在显着的代码生成差异。它包含以下部分:• 1.1 支持
2022-05-18 22:11:34
5267
原创 Arm Cortex-M 处理器比较表
Cortex-M 处理器系列针对成本和节能微控制器进行了优化。这些处理器存在于各种应用中,包括物联网、工业和日常消费设备。该处理器系列基于 M-Profile 架构,可为深度嵌入式系统提供低延迟和高度确定性的操作。特征 Cortex-M0 Cortex-M0+ Cortex-M1 Cortex-M23 Cortex-M3 Cortex-M4 Cortex-M33 Cortex-M35P Cortex-M55 Cortex-M7 指令集架构
2022-05-06 21:19:11
2250
原创 为高级通用模拟器接口实现 µVision DLL
简介µVision 调试器支持用于实现用户定义外设的仿真器接口。此接口称为高级通用模拟器接口 (AGSI)。 AGSI 引入了一种灵活且简单的方法,可将新的用户定义外设直接添加到 µVision。它提供了模拟外设行为所必需的功能以及显示外设对话框的功能。为了简化用户定义外设的开发,两个示例项目中提供了 AGSI 和配置框架。只有 µVision 2.21 或更高版本支持本文档中描述的所有功能。AGSI 第 3 版适用于 µVision3(3.00 版或更高版本),并添加了以下功能:...
2022-05-06 20:43:09
498
原创 为硬件调试器实现 µVision2 接口 DLL
本应用笔记告诉您如何为用户提供的硬件调试器编写 µVision2 接口 DLL。本文件、随附手册和软件中的信息版权所有 © Keil Software, Inc 和 Keil Elektronik GmbH。版权所有。前言µVision2 调试器支持与监视器或仿真器等硬件调试器的直接接口。该接口是通过称为 AGDI 的高级通用调试器接口完成的。 AGDI 接口独立于控制器架构,灵活、易于实现并且只引入了最小的开销。它执行所有基本调试器功能的接口,允许复杂的断点,并且可以使用仿真器或目标特定命令
2022-05-05 22:27:01
1255
原创 Flash Bootloader
1 欢迎使用 Flash Bootloader 用户手册1.1 Flash Bootloader 的初学者从这里开始?您需要有关此文档的一些信息吗?(请查看第3.1章)什么是Flashing?(请查看第3.3章)什么是 Flash 引导加载程序?(请查看第2章)1.2 对于高级用户从这里开始阅读。(请查看第4章)Flash Bootloader 集成的 5 个步骤。(请查看第5章)1.3 专题为什么我需要 2 个中断向量表?(请查看第4.6章)如何定义我的应用程序有效
2022-05-04 13:23:46
8676
1
原创 Arm 架构的过程调用标准
第一章 前言1.1 摘要本文档描述了 Arm 架构的应用程序二进制接口 (ABI) 使用的过程调用标准。1.2 关键词过程调用、函数调用、调用约定、数据布局1.3 如何找到本规范的最新版本或报告其中的缺陷如果您的副本超过一年,请查看 Arm 开发人员网(https://developer.arm.com/architectures/system-architectures/software-standards/abi) 以获取更高版本。请将本规范中的缺陷报告至 arm.eabi@a
2022-04-30 20:54:39
1995
原创 ARM 编译器 C 库启动和初始化
1 介绍本文档描述了 C 库启动代码和在使用 ARM 编译器编译的应用程序启动期间可能调用的初始化函数。该文档概述了启动代码中的功能的作用以及它们存在的原因。您可以使用此文档来验证您的应用程序的启动代码。1.1 版本本文档描述了 ARM 编译器的启动代码。启动代码中的函数可能会在工具链的不同版本和补丁之间发生变化。本文档不保证库启动代码在后续版本或工具链补丁中的持续运行。1.2 补充阅读本节列出了 ARM 和第三方的出版物。请参阅 Infocenter,http://infoce
2022-04-29 00:17:19
2535
原创 ARM 编译器 armclang 参考指南 - 编译器特定的编译指示
第 5 章 编译器特定的编译指示总结了 ARM® 编译器特定的编译指示,它们是 C 和 C++ 标准的扩展。它包含以下部分:5.1 #pragma clang system_header.5.2 #pragma clang diagnostic.5.3 #pragma once.5.4 #pragma pack(...).5.5 #pragma unroll[(n)], #pragma unroll_completely.5.6 #pragma weak symbol, #pragma
2022-03-26 22:42:41
1279
原创 ARM 编译器 armclang 参考指南 - 编译器特定的内在函数
第 4 章 特定于编译器的内部函数总结了 ARM® 编译器特定的内在函数,它们是 C 和 C++ 标准的扩展。要使用这些内在函数,您的源文件必须包含#include <arm_compat.h>。它包含以下部分:4.1 __breakpoint intrinsic.4.2 __current_pc intrinsic.4.3 __current_sp intrinsic.4.4 __disable_fiq intrinsic.4.5 __disable_irq intri
2022-03-26 21:53:18
2434
原创 ARM 编译器 armclang 参考指南 - 特定于编译器的函数、变量和类型属性
第 3 章 特定于编译器的函数、变量和类型属性总结了作为 C 和 C++ 标准扩展的特定于编译器的函数、变量和类型属性。它包含以下部分:3.1 功能属性。3.2 __attribute__((always_inline)) 函数属性。3.3 __attribute__((cmse_nonsecure_call)) 函数属性。3.4 __attribute__((cmse_nonsecure_entry)) 函数属性。3.5 __attribute__((const)) 函数属性。3.6
2022-03-22 23:56:13
3448
原创 ARM 编译器 armclang 参考指南 - 特定于编译器特定的关键字和运算符
第 2 章 特定于编译器的关键字和运算符总结了特定于编译器的关键字和运算符,它们是 C 和 C++ 标准的扩展。它包含以下部分:2.1 编译器特定的关键字和运算符.2.2 __alignof__.2.3 __asm.2.4 __declspec attributes.2.5 __declspec(noinline).2.6 __declspec(noreturn).2.7 __declspec(nothrow).2.8 __inline.2.1 编译器特定的关键
2022-03-21 22:12:44
2261
原创 专有名词collect
AES, advanced encryption standard, 高级加密标准CCM, core coupled memory,内核耦合存储器(SRAM)CSS, clocksecuritysystem,时钟安全系统DoS, denial of service, 拒绝服务DPA, differential power analysis, 差分功率分析FIA, FaultInjectionAttackfault injection attackFaultInjection...
2022-03-17 22:12:31
6906
原创 最先进的软件测试库 (STL) 和 ASIL B:真理、神话和指导
1. 简介功能安全在一系列市场中仍然至关重要,随着自动驾驶和相关服务成为现实,功能安全是决定其成功和广泛部署的关键因素。关键性越高,驾驶员对应用程序的控制越少,固有风险和相关的汽车安全完整性等级 (ASIL) 就越高。 ISO 26262 [1] 定义了四种 ASIL: 1. ASIL A(最低完整性) 2. ASIL B 3. ASIL C 4. ASIL D(最高完整性)ASIL 根据安全目标和功能安全要求的定义在车辆级别确定。对于每个功能安全要求,...
2022-03-14 21:40:11
8641
原创 《LWIP应用开发实战指南》读书笔记
内存管理:LWIP的两种内存管理策略:内存池、内存堆;内存堆可由内存池实现;内存池可由内存堆实现;内存池和内存堆可独立实现;此外,支持C标准库的malloc和free;pbuf:pbuf结构体是描述协议栈中数据包的数据结构;4种类型:PBUF_RAM:内存堆分配;PBUF_POOL:内存池分配;PBUF_ROM:不包含数据区域,数据存储在ROM中;PBUF_REF:不包含数据区域,数据存储在RAM中;MEMP_PBUF为专门存放pbuf数据结构的内存池,主要适用于PBUF_ROM和
2022-02-07 19:50:22
771
原创 数据结构与算法分析摘录(二) - 树
数据结构与算法分析摘录(二) - 树1 树2 二叉查找树3 AVL树4 树的遍历注:本文所有图片摘自《数据结构与算法分析–C语言描述》一书(作者:(美)Mark Allen,译者:冯舜玺)。请支持原作,支持正版1 树2 二叉查找树3 AVL树4 树的遍历2021.3.15by:Rei_ikari...
2021-03-16 22:59:51
98
原创 数据结构与算法分析摘录(一) - 表、栈和队列
数据结构与算法分析摘录(一) - 表、栈和队列1 表ADT 1.1 链表 1.2 多项式ADT 1.3 链表的游标实现2 栈ADT 2.1 栈的链表实现 2.2 栈的数组实现3 队列ADT注:本文所有图片摘自《数据结构与算法分析–C语言描述》一书(作者:(美)Mark Allen,译者:冯舜玺)。请支持原作,支持正版1 表ADT 1.1 链表 1.2 多项式ADT 1.3 链表的游标实现
2021-03-15 23:24:00
182
原创 μC/OS-III 数据结构摘录(三) - 互斥信号量
μC/OS-III 数据结构摘录(三) - 消息队列消息队列 1,消息池 2,消息队列的数据结构 3,消息队列FIFO模式 4,消息队列LIFO模式 5,消息队列的提交过程 6,从消息池中取出一个消息 7,消息队列插入第一个消息. 8,FIFO消息队列中插入消息 9,LIFO消息队列中插入消息注:本文所有图片摘自“野火uCOS-III 内核实现与应用开发实战”教程提供的《uCOSIII技术内幕》一书(实体书应该是《μC/OS-III源码分析笔记》(作者:李悦城)),请支持原作者,支持正
2020-12-23 20:57:15
205
原创 华为C语言编程规范(整理)
总体原则1、清晰第一2、简洁为美3、选择合适的风格,与代码原有风格保持一致1 头文件对于C语言来说,头文件的设计体现了大部分的系统设计。原则1.1 头文件中适合放置接口的声明,不适合放置实现。说明:头文件是模块(Module)或单元(Unit)的对外接口。头文件中应放置对外部的声明,如对外提供的函数声明、宏定义、类型定义等。原则1.2 头文件应当职责单一。说明:头文件过于复杂,依赖过于复杂是导致编译时间过长的主要原因。很多现有代码中头文件过大,职责过多,再加上循环依赖的问题,可能导致为了在
2018-01-26 23:07:12
18264
1
Keil MDK v5.29官方手册 适用于µVision armasm的ARM Compiler v5.06用户指南 汉化版
2020-08-30
Keil MDK v5.29官方手册 适用于µVision armcc的ARM编译器v5.06用户指南 汉化版
2020-08-30
Keil MDK v5.29官方手册 µVision用户指南 汉化版
2020-08-30
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人