请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
部件号:TM4C1290NCPDT 您好,
我使用的是目前为18.12.6的 TI-CGT-ARM 工具链,但我也检查了最新版本20和16。
以下代码导致派工时出现 FaultISR:tPointer->fWert=1.0;
我认为,这是与对齐的东西(见 aupool 上的+1),就像我使用的是 auc1一样,没有问题。
typedef struct SEreignisdaten { int16_t iDaten; uint8_t eDatenTyp; float fWert; uint8_t eBedienung; } tEreignisdaten; int main(void) { uint8_t auPool[100]; tEreignisdaten *tPointer=(tEreignisdaten *)((uint8_t*)&auPool+1); tPointer->fWert=1.0; ... }
我找到了一个变通办法,但我想知道这是不是将来需要修复的,还是有编译标志或其他东西。
感谢您的评论
此致
米奇