Other Parts Discussed in Thread:RM46L852
你好,请问一下我想对RM46L852控制器的RAM ECC功能进行测试,使用HCG生成的 checkRAMECC();函数,但是发现在测试过程中单粒子测试无法进入ESM中断,双粒子测试 也无法进入abort异常,想问一下是我的配置什么的出问题吗
Susan Yang:
要生成中断,您需要在CPU级别启用中断:_enable_IRQ(); Peripheral 级别(ESM通道26和28)和Vim通道(ESM通道20为低电平)。
因此,在checkRAMECC()之前请调用vimInit(),esmInit()
,
whong zhao:
请问 你如何进行的 1bit2bit 测试
,
user6325874:
您好,感谢你的回复,早上进行测试时我发现加不加vimInit()都能够正常进入中断了,不知道什么原因,还有一个问题,正常来说执行完ramread = tcramA1bit;和ramread = tcramB1bit;后会进入ESM中断,在不加断点时确实能够进入,对应的通道是26和28没问题,但是我在这两句后面打断点单步执行时并未进入ESM中断,想问下原因
,
user6325874:
是能ECC后调用checkRAMECC()进行测试即可
,
user6325874:
您好,还有一个问题,对于SRAM和FLASHECC进入中断后想进行回写应该怎么操作呢
,
Susan Yang:
请您检查一下是否在sys_startup.c内调用了 vimInit() . 其他问题的话,需要在测试后给您回复
,
user6325874:
您好,sys_startup.c内确实调用了 vimInit(),不好意思还有一个问题,当中断发生时,手册中说会先跳到0X18去执行ldr pc,[pc,#-0x1B0] ; IRQ interrupt,但是我在这个位置打断点发现并未跳转到这里而是直接进入中断中了,请问是因为在调试模式吗还是其他原因