沈阳芯硕科技有限公司

免费会员·3年
您现在的位置: 沈阳芯硕科技有限公司>>芯片>> 华大MCU如何实现软件复位
华大MCU如何实现软件复位
参考价3000
具体成交价以合同协议为准
  • 型号
  • 其他品牌 品牌
  • 代理商 厂商性质
  • 沈阳市 所在地

规格
HC32F4603000元100 件 可售

访问次数:402更新时间:2021-08-31 09:38:05

联系我们时请说明是智能制造网上看到的信息,谢谢!
免费会员·3年
人:
沈阳芯硕科

扫一扫访问手机商铺

产品简介
1 1
产品在设计中某些状态下需要MCU进行复位,华大MCU包含了7个复位信号来源,每个复位信号都可以让 CPU 重新运行,绝大多数寄存器会被复位到复位值,程序计数器 PC 会被复位指向 00000000。
产品介绍

产品在设计中某些状态下需要MCU进行复位,华大MCU包含了7个复位信号来源,每个复位信号都可以让 CPU 重新运行,绝大多数寄存器会被复位到复位值,程序计数器 PC 会被复位指向 00000000

POR/BOR 复位(VCC 域及 Vcore 域)

●外部 Reset PAD 复位

WDT 复位

PCA 复位

LVD 复位

Cortex-M0+ SYSRESETREQ 软件复位

Cortex-M0+ LOCKUP 硬件复位

华大MCU每个复位源由相应的复位标志进行指示。复位标志均由硬件置位,需要用户软件清零。芯片复位时,如果查询到 Reset_flag. POR15V Reset_flag. POR5V 1 则为上电复位。上电复位时用户程序应当将寄存器 Reset_flag 清零,则下一次复位时可通过 Reset_flag的相关比特判断复位来源。

这些复位源中Cortex-M0+ SYSRESETREQ 软件复位为主动复位,工程师可以在程序中根据自己的需要进行操作,其它的复位为被动复位,当运行的条件满足时会自动复位。下面介绍下华大MCU如何实现软件复位。

软件复位的函数包涵在core_cm0plus.h头文件中,形式为:

  #define NVIC_SystemReset            __NVIC_SystemReset

函数的原型为:

__STATIC_INLINE void __NVIC_SystemReset(void)

{

  __DSB();                                                          /* Ensure all outstanding memory accesses included

                                                                       buffered write are completed before reset */

  SCB->AIRCR  = ((0x5FAUL << SCB_AIRCR_VECTKEY_Pos) |

                 SCB_AIRCR_SYSRESETREQ_Msk);

  __DSB();                                                          /* Ensure completion of memory access */

 

  for(;;)                                                           /* wait until reset */

  {

    __NOP();

  }

}

工程建立好后,工程师在使用的时候直接调用就可以,以上就是华大MCU如何实现软件复位操作流程。

 




会员登录

×

请输入账号

请输入密码

=

请输验证码

收藏该商铺

X
该信息已收藏!
标签:
保存成功

(空格分隔,最多3个,单个标签最多10个字符)

常用:

提示

X
您的留言已提交成功!我们将在第一时间回复您~
产品对比 二维码

扫一扫访问手机商铺

对比框

在线留言