GD32F107软件复位方法
时间: 2023-08-10 18:08:03 浏览: 216
FreeRTOS+GD32f107网络程序
GD32F107芯片的软件复位方法有两种:
1. 使用NVIC_SystemReset()函数进行软件复位。这个函数可以在代码中调用,它会导致系统软件复位并重新启动。具体用法如下:
```c
#include "gd32f10x.h"
NVIC_SystemReset();
```
2. 设置SCB->AIRCR寄存器中的SYSRESETREQ位进行软件复位。具体用法如下:
```c
#include "gd32f10x.h"
#define SCB_AIRCR_VECTKEY ((uint32_t)0x05FA0000U)
#define SCB_AIRCR_SYSRESETREQ ((uint32_t)0x00000004U)
SCB->AIRCR = SCB_AIRCR_VECTKEY | SCB_AIRCR_SYSRESETREQ;
```
需要注意的是,在使用第二种方法时,需要先使用SCB_AIRCR_VECTKEY值对SCB->AIRCR寄存器进行解锁。
阅读全文