stm32f1软件复位IO口电平如何保持
本帖最后由 MrJiu 于 2017-10-5 16:46 编辑__set_FAULTMASK(1); // 关闭所有中端
NVIC_SystemReset(); // 复位这是一个软件复位的问题,现在我用的是F1的芯片但是硬件电路已经好了,不想更改了,,但是软件复位现在有一个继电器的电平保持,但是软件复位不能保留IO的电平,,,,,之前请教别人说用下面的代码可以实现。。。其实就是修改内核的方法,,但是我还是没有实现,,由于现在的电路已经是确定的,,不想增加锁存器或者外挂FLSH的方法,,,,,哪位前辈可以实现下面的方法修改内核保留继电器的电平的方法,,,小白感激不尽
谢谢啊
static __INLINE void NVIC_SystemReset(void)
//{
//SCB->AIRCR= ((0x5FA << SCB_AIRCR_VECTKEY_Pos) |
// (SCB->AIRCR & SCB_AIRCR_PRIGROUP_Msk) |
// SCB_AIRCR_SYSRESETREQ_Msk); /* Keep priority group unchanged */
//__DSB(); /* Ensure completion of memory access */
//while(1); /* wait until reset */
//}
{
//置位VECTRESET
SCB->AIRCR= ((0x5FA << SCB_AIRCR_VECTKEY_Pos) |
(SCB->AIRCR & SCB_AIRCR_PRIGROUP_Msk) |
SCB_AIRCR_VECTRESET_Msk);
__DSB();
while(1);
}
硬件复位期间,IO口电平未知。。复位完成后,IO的电平就是参考资料给的值。。。 复位期间继续保存所需要的电平?这个只能外部硬件实现了。。。。
页:
[1]