【ARM】如何计算Event Recorder 占用RAM大小?-2023

1、 文档目标

计算Event Recorder 占用RAM大小


2、 问题场景

在使用事件记录时,需要设置一个 RAM 区域用于记录程序运行的事件。那么这个区域应该设置在哪,设置多大呢?


3、软硬件环境

1  软件版本:Keil MDK 5.38a

2 电脑环境:Window 10


4、解决方法

1  为确保事件记录器数据的正确性,不能和程序共享内存需要单独设置。如图 1


图 1


2  那么这个内存区域为什么设置 为 0x800?

首先要从记录的数量说起,在EventRecorderConf.h 文件中,我们定义了 Number of Records;如图 2 所示:


图 2

计算方法 : 16 * Number of Records+164(字节)

本例中 16*64+164 = 1188 (字节);

0x800 是 2K 字节> 1188 字节,因此这样可以保证事件记录的正常运行。