【第2章】中断处理讲述.ppt

【第2章】中断处理讲述

* * * * * * * * * * result=secondsToday在执行过程中可能被中断,造成result值不等于secondsToday,但是后续while循环能发现该问题 如果在While循环中产生中断,result的值会和secondsToday不相等,所以会继续循环读取。 * * * * * * * * * * * 不使用中断禁止的解决方法 Interrupt Routine void interrupt ReadTemperatures(void) { if(taskUsingArrayB) { iTemperaturesA[0] = !!传感器0中存储的值 iTemperaturesA[1] = !!传感器1中存储的值 } else { iTemperaturesB[0] = !!传感器0中存储的值 iTemperaturesB[1] = !!传感器1中存储的值 } taskUsingArrayB = !taskUsingArrayB; } 2.4 共享数据问题 – 另一个案例 void interrupt UpdateTime(void) { ++iSeconds; if (iSeconds = 60) { iSeconds = 0; ++ iMinutes;

文档评论(0)

1亿VIP精品文档

相关文档