环境-KEIL ARMcc v5.05编译器,用于LPC1769的ARMlink v5.05链接器

如果看起来很熟悉,我也在其他论坛上也提出了这个问题。
我想创建一个可以重复用于相同或相似的基础项目
我正在尝试创建可以由宏定义/声明的中断处理程序,并且可以覆盖默认的弱定义。

对于。例如,我想编写DBG端口处理程序,但我想让下一个人
仅通过更改头文件中的宏就可以选择所需的UART。

/ *下面的宏将创建文本void UART0_IRQhandler * /

#define DBG_UART UART0 #define MAKE_IRQH(x) void x##_IRQHandler(void) #define IRQH(x) MAKE_IRQH(x)

所以在我的dbg.c文件中

IRQH(DBG_UART){
/*....... UART handling stuff ....*/
}


我的意图是让下一个人可以参加这个项目,然后改变说
UART0至UART1,不需要更改dbg.c文件。

上面的事情不起作用,并且我的代码仍然按默认弱函数处理
尽管尚未定义void UART0_IRQhandler。
你们还有其他实现此目标的方法吗?

最佳答案

我在不同的地方使用相同的UART,这是我的错。现在可以使用了。

09-06 11:07