(相关资料图)
看到标题,大家应该可以意识到:这是一个刷写问题,同时,该问题Bug还与清中断标志位相关。
1、问题描述
Boot在升级Application程序的过程中,
MCAN->IR.U32=uint32(1<<2);
所以,对于这种写“1”清除对应位域的寄存器,操作时,要对32 bit进行操作。Tricore中,对外设寄存器的操作,多数是32 bit指令(Instruction)。当然,该问题如果使用了厂商的MCAL,可能不会带来此问题,厂商提供的MCAL的可靠性,相比于自己开发,还是有保障的。
关键词: