本帖最后由 wangjianf5 于 2013-10-22 08:47 编辑
8位单片机定义一个32位的全局变量,如果在主程序里读取这个32位变量的时候出现了中断,而中断里又将这个数据的值改变了,那么返回后会不会造成这个数据的字节读取错误。
举个例子:比如一个32位的数据 0x11223344,主程序中读取了0x1122的时候中断来了,中断将数据改变成0xAABBCCDD了,那么主程序返回后会不会读取成0x1122CCDD?
1,4字节的变量,没有完全读取的时候会不会进入中断?
2,如果会进入中断,那么会不会造成上面说的情况?
3,如果不会进入中断,请问单片机是怎么防止这种情况的?
谢谢! |