本帖最后由 makesoft 于 2018-3-15 10:52 编辑
在KEIL中,当主程序和中断程序使用16位变量时,一般来说编程的时候都是需要特别保护的,比如ADC在中断里面计算结果,主程序使用结果都是用下面类似函数来处理,防止高低字节分别更新,在IAR里也有这样的问题吗,用过的说说?
//安全读取可能被中断改变的16位变量
S16 SafeReadS16(S16 whTemp) {
S16 whTemp1;
whTemp1=whTemp;
if(whTemp1!=whTemp)
whTemp1=whTemp;
return(whTemp1);
}
另外IAR的BOOL好像使用的是CHAR,可以定位成BIT吗?
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
一周热门 更多>