stm32快速断电上电就可以正常工作,但是断电久了就不能正常工作

2019-07-14 15:18发布

RTC不能工作,SPI 中断读铁电错误,显示不能正常不作。按建不能操作,要烦死了。
复位,BOOT引脚应该都没有问题,电源用示波器看了很平稳啊。
有没有大神知道怎么回速,我的RCC初始化用的是CUBEmx生成的初始化程序。要晕死了,这项目要折腾死人的节奏啊。整个项目遍地都是奇葩问题。让人都没有下手的方向。
今天调试发现是LSE配置时,LSEON后等待LSE READY时tiMEOUT退出配置函数了,之后的PLL也就配置不到了,哪位大侠知道为什么 32.768的LSE配置不成功啊。

有没有大神指教一下?
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
该问题目前已经被作者或者管理员关闭, 无法添加新回复
12条回答
723662364d
1楼-- · 2019-07-14 18:38
1、复位点位
2、上电顺序
3、某一路电源有问题
Lucia_nie
2楼-- · 2019-07-14 19:17
是不是芯片没有正常复位造成的
zyh34997
3楼-- · 2019-07-15 00:07
 精彩回答 2  元偷偷看……
储蓄叛逆
4楼-- · 2019-07-15 01:52
今天调试发现是LSE配置时,LSEON后等待LSE READY时TIMEOUT退出配置函数了,之后的PLL也就配置不到了,哪位大侠知道为什么 32.768的LSE配置不成功啊
储蓄叛逆
5楼-- · 2019-07-15 06:22

/* Reset LSEON and LSEBYP bits before configuring the LSE ----------------*/
     __HAL_RCC_LSE_CONFIG(RCC_LSE_OFF);
     
     /* Get Start Tick*/
     tickstart = HAL_GetTick();
     
     /* Wait till LSE is ready */  
     while(__HAL_RCC_GET_FLAG(RCC_FLAG_LSERDY) != RESET)
     {
       if((HAL_GetTick() - tickstart ) > RCC_LSE_TIMEOUT_VALUE)
       {
         return HAL_TIMEOUT;
       }   
     }
     __HAL_RCC_LSE_CONFIG(RCC_OscInitStruct->LSEState);
     /* Check the LSE State */
     if((RCC_OscInitStruct->LSEState) != RCC_LSE_OFF)
     {
       /* Get Start Tick*/
       tickstart = HAL_GetTick();
      
       /* Wait till LSE is ready */  
      while(__HAL_RCC_GET_FLAG(RCC_FLAG_LSERDY) == RESET)
       {
         if((HAL_GetTick() - tickstart ) > RCC_LSE_TIMEOUT_VALUE)
         {
           return HAL_TIMEOUT;
         }      
       }
     }
joereil
6楼-- · 2019-07-15 06:33
外围电路什么器件有问题吧,多焊几块板子看看

一周热门 更多>