[技术求助] 没找到宏定义

[复制链接]
253|35
 楼主 | 2018-7-10 17:43 | 显示全部楼层 ||阅读模式

#ifdef __IAR_SYSTEMS_ICC__
#if __VER__ >= 200
#pragma vector=TIMERA0_VECTOR
__interrupt void TIMERA0_rx (void)
#else
interrupt[TIMERA0_VECTOR] void TIMERA0_rx (void)
#endif
#else
interrupt[TIMERA0_VECTOR] void TIMERA0_rx (void)
#endif
看这段程序#ifdef __IAR_SYSTEMS_ICC__
#if __VER__ >= 200
这两句我没找到宏定义
| 2018-7-10 17:45 | 显示全部楼层
.h文件?
 楼主 | 2018-7-10 17:47 | 显示全部楼层

在.h文件里也没有,宏定义到哪里了
| 2018-7-10 17:50 | 显示全部楼层

为什么中断函数头是按#pragma vector=TIMERA0_VECTOR
__interrupt void TIMERA0_rx (void)
| 2018-7-10 17:53 | 显示全部楼层

不太懂
 楼主 | 2018-7-10 17:55 | 显示全部楼层


//为了保证代码可以在IAR编译器的任何版本中都能正确得到编译,所以作以下的条件编译。

#ifdef __IAR_SYSTEMS_ICC__              //如果编译器是IAR, 那么以下将被编译。

#if __VER__ >= 200

#pragma vector=USART0RX_VECTOR          //在IAR2.0以上中断函数声明。

__interrupt void SPI0_rx (void)

#else                                   //在IAR2.0以下中断函数声明。

interrupt[USART0RX_VECTOR] void SPI0_rx (void)

#endif                                  //IAR中断函数声明结束。

{ }
| 2018-7-10 17:57 | 显示全部楼层
没有宏定义就不是不使用的。
| 2018-7-10 17:59 | 显示全部楼层
楼主如果使用可以自己定义。
| 2018-7-10 18:03 | 显示全部楼层
如果出现重复定义的话,再查找看看的。
| 2018-7-10 18:05 | 显示全部楼层
这个也说不准的啊
| 2018-7-10 18:08 | 显示全部楼层

没找到宏定义,编译时候实惠报错的吧
| 2018-7-10 18:10 | 显示全部楼层

全局搜索试试。楼主用的什么编译器呢?CCS的话,需要自己添加宏定义的
 楼主 | 2018-7-10 18:13 | 显示全部楼层

结贴了,多谢大家讨论这么多哈,呵呵
| 2018-7-10 21:58 | 显示全部楼层
已经定义了宏定义?
| 2018-7-10 21:59 | 显示全部楼层
定义的一般形式为:#define标识符字符串
| 2018-7-10 21:59 | 显示全部楼层
条件编译的宏吗?
| 2018-7-10 21:59 | 显示全部楼层
没有声明
| 2018-7-10 22:00 | 显示全部楼层
报错了吗?
| 2018-7-10 22:00 | 显示全部楼层
缺少文件                       
| 2018-7-10 22:00 | 显示全部楼层
搜索一下看看能否搜到
扫描二维码,随时随地手机跟帖
您需要登录后才可以回帖 登录 | 注册

本版积分规则

快速回复

您需要登录后才可以回帖
登录 | 注册
高级模式
我要创建版块 申请成为版主

论坛热帖

分享 快速回复 返回顶部 返回列表