[N32G45x] 如何进行软复位?

[复制链接]
5671|47
uytyu 发表于 2023-9-7 16:26 | 显示全部楼层
可以通过外部电路或内部电路实现复位。
claretttt 发表于 2023-9-7 16:35 | 显示全部楼层
如果单片机具备看门狗功能,可以在程序中定期喂狗,以防止看门狗在程序跑飞时复位。
jimmhu 发表于 2023-9-7 16:41 | 显示全部楼层
void soft_reset(void) {  
    ((void (*)(void)) 0x0000)();  
}
jkl21 发表于 2023-9-7 16:47 | 显示全部楼层
一般为一个特定的汇编指令或函数调用。执行该指令后,单片机会重新初始化并跳转到起始地址执行程序。
olivem55arlowe 发表于 2023-9-7 16:53 | 显示全部楼层
不同的单片机可能有不同的软复位方法
wengh2016 发表于 2023-9-7 17:00 | 显示全部楼层
看门狗定时器是一种硬件电路,可以实时监测程序的运行状态,如果程序运行出错,看门狗定时器会自动触发复位信号,实现软复位。
gygp 发表于 2023-9-7 17:06 | 显示全部楼层
通过编写软件程序,实现软复位。一般情况下,软件复位需要在程序中设置一个复位标志位,然后在一定的条件下,将复位标志位置位,即可实现软复位。
kkzz 发表于 2023-9-7 17:13 | 显示全部楼层
基于ARM架构的单片机,可以使用指令"MOV PC, #0"来实现软复位。
nomomy 发表于 2023-9-7 17:19 | 显示全部楼层
些单片机允许在程序中修改复位向量的数值,通过将其设置为程序的起始地址来实现软复位。
everyrobin 发表于 2023-9-7 17:26 | 显示全部楼层
通过外部硬件按键连接单片机的外部中断引脚,当按键按下时触发外部中断服务程序,在中断服务程序中执行软复位操作。
chenqianqian 发表于 2023-9-7 21:41 来自手机 | 显示全部楼层
调用软件复位函数接口啊
zy16816888 发表于 2023-9-8 17:28 | 显示全部楼层
软复位种类太多了,复位后数据需要重新来,还是只是单片机硬件从头开始,寄存器数据不变?
updownq 发表于 2023-9-9 16:50 | 显示全部楼层
通过程序执行一个JMP指令或者类似的指令,直接跳转到程序地址0处,从而实现软复位。
mmbs 发表于 2023-9-9 16:59 | 显示全部楼层
在存储器的特定地址上定义了一个软件复位向量。通过向该地址写入特定的值,可以触发单片机的软复位。
宝宝a 发表于 2023-9-9 17:24 | 显示全部楼层
NVIC_SystemReset()
AIsignel 发表于 2023-10-8 14:44 | 显示全部楼层
有很多方法可以做到这一点,这取决于要重置哪个命令?
理想阳 发表于 2023-10-8 15:10 | 显示全部楼层
通常,库中有一个关闭所有中断的函数,可用于软件重置
LLGTR 发表于 2023-10-8 15:58 | 显示全部楼层
有相关的语句,但它似乎是用汇编语言编写的
LinkMe 发表于 2023-11-6 12:06 | 显示全部楼层
这是可以做到的,但建筑需要知道的主要事情是软件重置是手动指定的还是随机的
digit0 发表于 2023-11-10 17:02 | 显示全部楼层
看门狗复位也被认为是一种软件复位吗
您需要登录后才可以回帖 登录 | 注册

本版积分规则

快速回复 在线客服 返回列表 返回顶部
0