文章
博客 网店

 如何写dsPIC中断函数


dsPIC中断向量的默写名称在每个器件的默认连接文件中已指定,可以到编译器安装目录中support\dsPIC30F\gld 目录下找到对应器件的gld文件,打开并查找名称
以DSPIC4011为例,写一个adc中断函数,找到p30f4011.gld文件并打开找到如下内容

    LONG( DEFINED(__AltADCInterrupt)    ? ABSOLUTE(__AltADCInterrupt)    :
         (DEFINED(__ADCInterrupt)       ? ABSOLUTE(__ADCInterrupt)       :
         ABSOLUTE(__DefaultInterrupt)));


于是adc的中断函数可写成:

void __attribute__((interrupt, no_auto_psv)) _ADCInterrupt(void)


如果在中断中没有用到PSVPAG那么就用no_auto_psv以便让中断延迟最小,如果用到了就需要选择auto_psv,以便让中断程序退出时自动恢复相关寄存器内容。


芯艺工作室    蒙ICP备06005492号
Copyright© 2004-2023 ChipArt Studio All Rights Reserved