请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
器件型号:ARM-CGT 主题中讨论的其他器件:HALCOGEN
工具/软件:TI C/C++编译器
默认_c_int00为 weak、我们使用该功能、因为我们有自己的启动序列。
我们实现了我们自己的_c_int00 (因此不是弱的)、这可以正常工作。 今天我进行一些代码审阅、发现 HALCoGen 生成的 weak _c_int00是这样创建的
#pragma CODE_STATE (_c_int00、32) #pragma INTERRUPT (_c_int00、RESET) #pragma weak (_c_int00) void _c_int00 (void){ //一些代码*}
在我们的实施中、我们只是这样做的
void _c_int00 (void){ /*我们的代码*}
- 我们使用--code_state=32进行编译、因此我想省略 #pragma CODE_STATE (_c_int00、32)不是一个(实际)问题。
- 当然、我们忽略弱、因为我们要覆盖它
- 我们没有使用 #pragma interrupt (_c_int00、reset)。 目前为止、我们没有遇到任何不良行为、但是否 允许/建议忽略#pragma INTERRUPT (_c_int00、reset)? 编译器是否以某种方式知道_c_int00需要复位中断、这就是为什么它起作用的原因?
如果能对此有一些了解、那将会很好。
谢谢、致以诚挚的问候