关于rom.h文件的问题

2019-03-24 10:42发布

我在写初始化的一些函数,但是编译的时候提示ROM_XXXXX这些函数未声明。Error[Li005]: no definition for "ROM_GPIOPinTypeUART" [referenced from E:ProjectsARM M3 TestDebugObjmain.o]   rom.h文件已经加进去了,但是后来发现好像是条件编译的问题。文件里有这样的语句   #if defined(TARGET_IS_DUSTDEVIL_RA0) ||
    defined(TARGET_IS_TEMPEST_RB1) ||
    defined(TARGET_IS_TEMPEST_RC1) ||
    defined(TARGET_IS_TEMPEST_RC3) ||
    defined(TARGET_IS_TEMPEST_RC5) ||
    defined(TARGET_IS_FIRESTORM_RA2) ||
    defined(TARGET_IS_BLIZZARD_RA1)
#define ROM_GPIOPinTypeUART                                                  
        ((void (*)(unsigned long ulPort,                                     
                   unsigned char ucPins))ROM_GPIOTABLE[21])
#endif   看样子是条件编译没进去。 我用的是9B96,在IAR的工程选项里也设置了,如图那样。 不知道怎么设置才对呢?   此帖出自小平头技术问答
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
7条回答
zhaoshan413
2019-03-25 00:30
2楼正解...
由于LM3S不同系列的CPU内置的ROM库函数不同,因此使用StellarisWare函数库编程时,需要定义一个系统符号,用于区分不同CPU系列包含的ROM库函数的定义。
建议lz可以使用MAP_GPIOPinTypeUART函数,程序兼容性会更好,即便是没有定义这个系统符号也可以编译使用驱动函数库中的GPIOPinTypeUART函数。

一周热门 更多>

相关问题

    相关文章