c - GCC 的#pragma 中断

标签 c gcc compiler-flags

我是嵌入式编程新手,所以我不确定语法。我需要使其可用于 GCC 工具链。我的驱动程序是使用不同的工具链编译的。坦率地说,我根本没有太多使用编译器标志,所以我有点不知所措。此链接提供了我认为应该使用的格式:http://gcc.gnu.org/onlinedocs/gcc/Function-Attributes.html

我需要更改此行的语法以匹配 GCC:

#pragma interrupt int_cmt0_isr(vect=VECT(CMT0,CMI0))

我认为它应该看起来像这样:

void __attribute__ ((interrupt ("CMT0, CMI0"))) int_cmt0_isr ();

int_cmt0_isr() 是当 vector 表中的该位置发生迭代时应调用的函数。

如果您能提供帮助,那就太好了!

谢谢!

最佳答案

我需要将特殊条目添加到我用于该设备的 GCC 版本的单独中断表中。我最终根本没有使用#pragma。

关于c - GCC 的#pragma 中断,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17536033/

相关文章:

c++ - 如何让 GCC 使用非平凡的 const/dest 实例化一个类实例?

c - 为什么 memset 不能正确填充二维整数数组?

c++ - 如何在编译时输出结构中成员的偏移量(C/C++)

gcc - 编译 gcc : undefined reference to libc_name_p 时出错

c - 在 OSX Yosemite 上将 cc 设置为 gcc 而不是 clang

xcode - 如何强制 xcode 在特定文件上使用 ARC?

c - 通过网络在 C 中格式化字符串错误

c++ - 在 Windows 启动修复期间执行代码/脚本

c - 在 gcc 编译器的标志中排除 "lib"前缀

c++ - Xcode:找不到 glib.h 文件