This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

[参考译文] RM42L432:RM42L432

Guru**** 2378650 points
Other Parts Discussed in Thread: RM42L432
请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

https://e2e.ti.com/support/microcontrollers/arm-based-microcontrollers-group/arm-based-microcontrollers/f/arm-based-microcontrollers-forum/619833/rm42l432-rm42l432

器件型号:RM42L432

大家好、

我将使用以下代码在 RM42L432上测试 VIM 奇偶校验。 奇偶校验结果可以通过几次(ESM 通道15被标记)、但在经过数百次之后、ESM 通道15不能被标记。

我还发现、如果 VIMRAMLOC 设置为0xFFF82000、则中断可能会受到 VIM 奇偶校验的影响、尽管 0xFFF82000 与幻象矢量相关!

帮助!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!

#define VIMRAMPARLOC (*(volatile UINT32 *) 0xFFF82578U)
#define VIMRAMLOC (*(volatile UINT32 *) 0xFFF82178U)

void vimParityCheck (空)

易失性 uint32 vimramread = 0U;
uint32 vimparctl_bk = VIM_PARCTL;

/*用户代码开始(49)*/
/*用户代码结束*/

/*启用奇偶校验和奇偶校验测试模式*/
VIM_PARCTL = 0x0000010AU;

/*翻转 VIM RAM 奇偶校验位置中的一个位*/
VIMRAMPARLOC ^= 0x1U;

/*禁用奇偶校验测试模式*/
VIM_PARCTL = 0x0000000AU;

/*导致奇偶校验错误*/
vimramread = VIMRAMLOC;

/*检查 ESM 组1通道15是否被标记*/
如果((esmREG->SR1[0U]和0x8000U)=0U)

/* VIM RAM 奇偶校验错误未被标记为 ESM。 *
自测故障通知(VIMPARITYCHECK_FAIL1);
vRedunLedOn();/*LED 指示灯*/

其他

/*清除 VIM 中的 VIM RAM 奇偶校验错误标志*/
VIM_PARFLG = 0x1U;

/*清除 ESM 组1通道15标志*/
esmREG->SR1[0U]= 0x8000U;

/*启用奇偶校验和奇偶校验测试模式*/
VIM_PARCTL = 0x0000010AU;

/*恢复到正确的数据,翻转奇偶校验位置的位0 */
VIMRAMPARLOC ^= 0x1U;

/*恢复奇偶校验控制寄存器*/
VIM_PARCTL = vimparctl_Bk;

/*用户代码开始(50)*/
/*用户代码结束*/

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    您好、Geng、

    我需要对此进行调查、然后再与您讨论。 在表面上、我没有对行为的解释。
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    您好、Geng、

    我对迟迟不回答这个问题表示歉意、我打算在本周早些时候解决这个问题、因为我有时间将其设置在我的工作台上并进行进一步测试。 自那时以来、飓风 Harvey 和随后的洪水在休斯顿地区造成了大量破坏、我无法上班。

    因此,我现在只能提出一些建议,直至有机会在工作台上全面研究这种行为。 我的第一个建议是在读取错误位置和检查 ESM 标志之前添加几个 NOP。 这可能会为错误通知提供一些额外的时间来将其发送给 ESM 和设置标志。

    关于与幻象中断位置相关的问题、中断如何受到影响? 也就是说、它不会发生、或者在不应该发生时设置它、等等 此外、幻象中断矢量的内容是什么? 它指向什么?