工具/软件:
尊敬的 TI 支持团队:
我正在使用 TMS320F28P650DK9的 M-CAN 外设、有一个与标准消息 ID 过滤器和扩展消息 ID 过滤器的存储器分配相关的问题。
文档 SPRUIZ1B 指出 RAM 存储器分配为32位字地址、并且根据图示
图35-23、标准消息 ID 过滤器元素结构是32位宽
图35-24、扩展消息 ID 过滤器元素结构为64位宽。
现在、我将介绍我的示例。
对于标准滤波器、我的设置是
ST_stdFiltElem_0.sfid2 = 0x3FF;
ST_stdFiltElem_0.sfid1 = 0x000;
ST_stdFiltElem_0.sfec = 0x5;
ST_stdFiltElem_0.sft = 0x0;
对于扩展过滤器、设置为
ST_extFiltElem_0.efid2 = 0x11223344;
ST_extFiltElem_0.efid1 = 0x55667788;
ST_extFiltElem_0.efec = 0x1;
ST_extFiltElem_0.eft = 0x1;
如果我查看0x5 9000地址中的 RAM 存储器、就会看到这种内存
- 为标准过滤器分配了两个32位字:请参阅红色方形
- 为扩展过滤器分配了四个32位字:请参阅绿色方形
以下 drivelib 函数填充 RAM 存储器区域
MCAN_addStdMsgIDFilter (MCANA_DRIVER_BASE、0U、&st_stdFiltElem_0);
MCAN_addExtMsgIDFilter (MCANA_DRIVER_BASE、0U、&st_extFiltElem_0);
所以,我的问题是:根据 RAM 内存视图,它看起来有内存消耗, 或太多内存使用。
正确吗?
如果是、原因是什么?
此致、
Ettore