IAR公司开发的AVR单片机C编译器是一款非常优秀的开发工具,由于它的编译效率要比ICCAVR、CODEVISIONAVR、GCCAVR编译器都要高,很容易编写出高效的C程序。
对于C程序的编写,大体都是一样的,只是不同的编译器在标准C基础上都有自己的扩展特性。AVR单片机的中断服务程序的编写对于不同的编译器声明的方法也就不同。例如在IAR AVR C编译器中使用定时器Timer0溢出中断声明的方法如下:
#pragma vector = TIMER0_OVF_vect
__interrupt void Timer0_OverFlow_Interrupt(void)
{
//用户自己添加的程序段
}
"#pragma vector = "是必须声明的,等于号后面内容为对应中断向量地址
“__interrupt”这是IAR AVR C编译器中的中断服务程序声明的关键字,是必须的。后面就是用户给该中断服务程序取的函数名,由用户自己定义。
另外有一点必须注意的是:中断服务函数必须为无参,无返回参数的函数。
我们的网站:www.supermcu.com
文章评论(0条评论)
登录后参与讨论