我今天玩了下STM32F103的软件复位,用库自带的复位函数测试过了后, 然后用如下方法 #define SOFT_REST ( *(( void (*)(void) ) 0 ) ) SOFT_REST(); 执行完程序无反应,未复位、但是重新上电烧之前程序可以继续跑,功能也完好。 然后改为 #define SOFT_REST ( *(( void (*)(void) ) 0x80000000 ) ) SOFT_REST(); 执行完出事了。。。。。程序当机。。 重新擦除烧之前程序。程序还是无反应,DEBUG下可以看到很久程序才一步一步执行完,但是逻辑完全不对。 现在这块芯片就像中毒一样。。。毫无反应了。。。求教大家遇到过没这个问题 |
RE:求助求助,紧急问题
void SystemReset(void )
{
NVIC_SETFAULTMASK();
NVIC_GenerateSystemReset();
}
另外,你需要注意的就是你这样写会不会有其他的影响。我有点看不明白,你这样写想要做什么。