打印
[N32G45x]

如何进行软复位?

[复制链接]
手机看帖
扫描二维码
随时随地手机跟帖
21
uytyu| | 2023-9-7 16:26 | 只看该作者 回帖奖励 |倒序浏览
可以通过外部电路或内部电路实现复位。

使用特权

评论回复
22
claretttt| | 2023-9-7 16:35 | 只看该作者
如果单片机具备看门狗功能,可以在程序中定期喂狗,以防止看门狗在程序跑飞时复位。

使用特权

评论回复
23
jimmhu| | 2023-9-7 16:41 | 只看该作者
void soft_reset(void) {  
    ((void (*)(void)) 0x0000)();  
}

使用特权

评论回复
24
jkl21| | 2023-9-7 16:47 | 只看该作者
一般为一个特定的汇编指令或函数调用。执行该指令后,单片机会重新初始化并跳转到起始地址执行程序。

使用特权

评论回复
25
olivem55arlowe| | 2023-9-7 16:53 | 只看该作者
不同的单片机可能有不同的软复位方法

使用特权

评论回复
26
wengh2016| | 2023-9-7 17:00 | 只看该作者
看门狗定时器是一种硬件电路,可以实时监测程序的运行状态,如果程序运行出错,看门狗定时器会自动触发复位信号,实现软复位。

使用特权

评论回复
27
gygp| | 2023-9-7 17:06 | 只看该作者
通过编写软件程序,实现软复位。一般情况下,软件复位需要在程序中设置一个复位标志位,然后在一定的条件下,将复位标志位置位,即可实现软复位。

使用特权

评论回复
28
kkzz| | 2023-9-7 17:13 | 只看该作者
基于ARM架构的单片机,可以使用指令"MOV PC, #0"来实现软复位。

使用特权

评论回复
29
nomomy| | 2023-9-7 17:19 | 只看该作者
些单片机允许在程序中修改复位向量的数值,通过将其设置为程序的起始地址来实现软复位。

使用特权

评论回复
30
everyrobin| | 2023-9-7 17:26 | 只看该作者
通过外部硬件按键连接单片机的外部中断引脚,当按键按下时触发外部中断服务程序,在中断服务程序中执行软复位操作。

使用特权

评论回复
31
chenqianqian| | 2023-9-7 21:41 | 只看该作者
调用软件复位函数接口啊

使用特权

评论回复
32
zy16816888| | 2023-9-8 17:28 | 只看该作者
软复位种类太多了,复位后数据需要重新来,还是只是单片机硬件从头开始,寄存器数据不变?

使用特权

评论回复
33
updownq| | 2023-9-9 16:50 | 只看该作者
通过程序执行一个JMP指令或者类似的指令,直接跳转到程序地址0处,从而实现软复位。

使用特权

评论回复
34
mmbs| | 2023-9-9 16:59 | 只看该作者
在存储器的特定地址上定义了一个软件复位向量。通过向该地址写入特定的值,可以触发单片机的软复位。

使用特权

评论回复
35
宝宝a| | 2023-9-9 17:24 | 只看该作者
NVIC_SystemReset()

使用特权

评论回复
36
AIsignel| | 2023-10-8 14:44 | 只看该作者
有很多方法可以做到这一点,这取决于要重置哪个命令?

使用特权

评论回复
37
理想阳| | 2023-10-8 15:10 | 只看该作者
通常,库中有一个关闭所有中断的函数,可用于软件重置

使用特权

评论回复
38
LLGTR| | 2023-10-8 15:58 | 只看该作者
有相关的语句,但它似乎是用汇编语言编写的

使用特权

评论回复
39
LinkMe| | 2023-11-6 12:06 | 只看该作者
这是可以做到的,但建筑需要知道的主要事情是软件重置是手动指定的还是随机的

使用特权

评论回复
40
digit0| | 2023-11-10 17:02 | 只看该作者
看门狗复位也被认为是一种软件复位吗

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则