iar学习笔记
在学习zigbee开发,教程中用的是iar。这里记录下我的学习笔记。
点滴
- __interrupt
这是在定义中断的函数服务。
#pragma vector = P0INT_VECTOR
__interrupt void P0_ISR(void) {
if(P0IFG>0) {
P0IFG = 0; Delay(100); if(P0IFG==0) {
Delay(100);
5
//按键中断
//按键中断
技术工程师: QQ 2357481431 公司网站:http://www.csgsm.com 店铺:http://520ic.taobao.com/ 创造奇迹 思索未来 科技共赢!
KeyTouchtimes = KeyTouchtimes+1; //每次中断发生时记录按键次数加 1 }
}
P0IF = 0; //清中断标志
}
其中, P0IFG 是中断位。有中断发生时,这个标志位会置1。P0IF是中断未决标志。中断服务开始时,注意清掉P0IFG,在处理完成时,把P0IF清掉。也就是一个表示中断服务开始运行,一个表示中断服务完成了。我是这么理解的,不知道是否准确。
pragma 是编译器的宏。比如:#pragma message(“”),会在编译器的build窗口打印 相应文本信息。功能很强大。
看看这几个文章有助于理解
https://blog.csdn.net/wenwh33bk/article/details/79232628 https://blog.csdn.net/bailyzheng/article/details/7537880 https://blog.csdn.net/aotony_1988/article/details/51323695