环境:AT32F403AVGT7、IAR8.30、J-LINK
现象:定时器中断里遇到 -1 <= 0 返回false的情况。如图:
出现了if(-1 > 0){}为True的情况。
尼马!!!是不是被智子监控了呢?
经过分析:发现
文件1.c:
int32_t s32G_HiTick=0;
文件2.c:
extern uint32_t s32G_HiTick;
文件2里的s32G_HiTick还是被认为是unsigned 类型,所以-1在unsigned的情况下是不可能为复数的。
破案了,世界和平依旧。