嘿,各位,我在编译代码时遇到了麻烦;问题是ISR,我想这可能是由于没有sys/attribs.h文件造成的。如果我注释了我的整个ISR,代码编译;如果我注释了我的ISR中的所有东西,我的代码就不会编译。这是我的代码中出现问题的一行:“inter.ISR_Handler(void){//假设内部所有内容都是有效的.}.}................我收到的错误消息如下:”:49:11:error:.'=', ', ', ', ', '; ', 'asm'或'u.'b”。在“ISR_Handler”之前,“如果问题缺少sys/attribs.h头文件,那么我有另一个问题;该文件没有与编译器一起安装。它应该是,还是我应该把文件定位在别处?提前感谢。
2019-9-17 12:14:22
“中断”不是XC16关键字,不能只为处理函数选择任意名称。我建议阅读用户手册的中断章节。
“中断”不是XC16关键字,不能只为处理函数选择任意名称。我建议阅读用户手册的中断章节。
举报
2019-9-17 12:24:37
所以,AyAtAtditTytag标签基本上声明了函数使用任何属性都被称为“调用”,我猜?对不起,这对我来说是新的,所以我仍然想把它包起来。另外,根据每个中断启用,我会有单独的ISR功能吗?例如,我使用的是RTCC和Time1,所以我将有两个独立的ISR函数。最后,AutoJPSV和NoAutoPSV属性到底是什么?我看到手册说在引用常量时需要使用AutoPSPV,但是你能解释一下为什么需要这个吗?谢谢。
所以,AyAtAtditTytag标签基本上声明了函数使用任何属性都被称为“调用”,我猜?对不起,这对我来说是新的,所以我仍然想把它包起来。另外,根据每个中断启用,我会有单独的ISR功能吗?例如,我使用的是RTCC和Time1,所以我将有两个独立的ISR函数。最后,AutoJPSV和NoAutoPSV属性到底是什么?我看到手册说在引用常量时需要使用AutoPSPV,但是你能解释一下为什么需要这个吗?谢谢。
举报
2019-9-17 12:35:23
ISR将设置PSVPAG寄存器,并在exit时恢复它。no_auto_psvISR将不设置PSVPAG寄存器。RTFM用户太懒而不能阅读编译器手册。
ISR将设置PSVPAG寄存器,并在exit时恢复它。no_auto_psvISR将不设置PSVPAG寄存器。RTFM用户太懒而不能阅读编译器手册。
举报