Part Number: TMS320F28335
程序跑的是裸机,定义了一个结构体SS,该结构体为16位,其中分配2位做一个标志位。在主程序中会给这个标志位赋值,例如SS.bit.AA=1,SS.bit.AA=0。在测试过程中发现在中断判断这个SS.bit.AA时出现AA为0的情况,抓取程序运行状态,主程序并没有运行到SS.bit.AA=0的部分代码,SS结构体的其他位可能会被赋值。代码中做了修改,SS结构体所有成员在赋值前加入关全局中断,赋值完后重新打开全局中断的保护操作。增加这个保护后测试较多次也未发现异常。
请问是什么原因导致在中断读取AA时出现异常?该用什么方法杜绝此类问题?