你的浏览器版本过低,可能导致网站不能正常访问!
为了你能正常使用网站功能,请使用这些浏览器。

STM8AF6226TCSS仿真一直SWIM复位

[复制链接]
drju 提问时间:2019-1-7 18:38 /
    大家有没碰STM8AF6226TCSS仿真时一直SWIM复位,外围只接复位电位路。
   另外定时器也进不了中断,时间设很短也不行。
void main(void)
{
    u32 i;
   
    WWDG->CR = 0X7F;       //关闭看门狗
    /* Clock Configuration */
    CLK_Config();
      
    /* GPIO Configuration */
    GPIO_Config();
    /* Check if the system has resumed from IWDG reset */
temp = RST->SR;

if (RST_GetFlagStatus(RST_FLAG_EMCF) != RESET)
{
  RST_ClearFlag(RST_FLAG_EMCF);
}
else if (RST_GetFlagStatus(RST_FLAG_SWIMF) != RESET)
{
  RST_ClearFlag(RST_FLAG_SWIMF);
}
else if (RST_GetFlagStatus(RST_FLAG_ILLOPF) != RESET)
{
  RST_ClearFlag(RST_FLAG_ILLOPF);
}
else if (RST_GetFlagStatus(RST_FLAG_IWDGF) != RESET)
{
  RST_ClearFlag(RST_FLAG_IWDGF);
}
else if (RST_GetFlagStatus(RST_FLAG_WWDGF) != RESET)
{
  RST_ClearFlag(RST_FLAG_WWDGF);
}
// /* Get measured LSI frequency */
// LsiFreq = LSIMeasurment();  
/* IWDG Configuration */
// IWDG_Config();

    TIM6_DeInit();
    TIM6_TimeBaseInit(TIM6_PRESCALER_2, 124);
    TIM6_ARRPreloadConfig(ENABLE);
    TIM6_ITConfig(TIM6_IT_UPDATE, ENABLE);
    TIM6_ClearITPendingBit(TIM6_IT_UPDATE);
    TIM6_Cmd(DISABLE);
    LED_OFF;
   
    enableInterrupts();
    /* Infinite loop */
    while (1)
    {
        /* Reload IWDG counter */
//     IWDG_ReloadCounter();
//     WWDG_SWReset();
     
//  for(i=0; i<20000; i++)
        nop();
//        LED_ON;
//        for(i=0; i<20000; i++)
        nop();
//        LED_OFF;
    }
}
收藏 评论2 发布时间:2019-1-7 18:38

举报

2个回答
butterflyspring 回答时间:2019-1-22 16:16:50
检查一下optionbyte 中的独立看门狗启动选项是否使能。另外窗口看门狗不用去配置,默认就是关闭的。
定时器6 的 “TIM6_Cmd(DISABLE);”,看起来是关闭状态,打开使能试试看

评分

参与人数 1蝴蝶豆 +2 收起 理由
STMCU + 2

查看全部评分

drju 回答时间:2019-1-24 18:24:17
谢谢解答!看门狗都是关闭了,同样的程序用IAR不会SWIM复位,就不管它了,估计是STVD哪里配置的问题。
关于意法半导体
我们是谁
投资者关系
意法半导体可持续发展举措
创新和工艺
招聘信息
联系我们
联系ST分支机构
寻找销售人员和分销渠道
社区
媒体中心
活动与培训
隐私策略
隐私策略
Cookies管理
行使您的权利
关注我们
st-img 微信公众号
st-img 手机版