查看: 179|回复: 4
收起左侧

GD32FFPR时钟初始化失败问题

[复制链接]
     

1

主题

2

帖子

6

积分

实习生

 楼主| 发表于 2017-10-8 10:15 | 显示全部楼层 |返回版面|阅读模式
自己画的一个基于GD32FFPR的电路图,可是电路可以用SWD下载,可是调试看到到了system_gd32f30x.c这里的    /* if fail */
    if(0U == (RCU_CTL & RCU_CTL_HXTALSTB)){
        while(1){
        }
就停止了,搞了两天还是不行,望指点一下,谢谢。
     

5

主题

28

帖子

84

积分

初级技术员

发表于 2017-10-8 19:00 | 显示全部楼层 |返回版面
    /* wait until HXTAL is stable or the startup time is longer than HXTAL_STARTUP_TIMEOUT */
    do{
        timeout++;
        stab_flag = (RCU_CTL & RCU_CTL_HXTALSTB);
    }while((0U == stab_flag) && (HXTAL_STARTUP_TIMEOUT != timeout));

如果外部晶振没焊接或起振失败,你的函数就死循环了。 一般STM32和GD32的systerm_gd32f10x.c 启动文件里,都会如我贴图所示,增加软保护。
     

1

主题

2

帖子

6

积分

实习生

 楼主| 发表于 2017-10-9 13:25 | 显示全部楼层 |返回版面
lvben5d 发表于 2017-10-8 19:00
/* wait until HXTAL is stable or the startup time is longer than HXTAL_STARTUP_TIMEOUT */
    do ...

你好,我试了一下,可是还是没有用啊。电路板的晶振我测过了,是有起振的,就是不知道为什么按照GD他给的库,systick_config();一开始初始化时钟的函数都挂了,纠结了好几天了请问还有什么调试解决方法吗
     

5

主题

28

帖子

84

积分

初级技术员

发表于 2017-10-9 23:25 | 显示全部楼层 |返回版面
可以在硬件仿真的时候,在keil5->view->Register 里点开 你所选系列的IC的时钟相关寄存器,里面标志位可以看下。 如果提前挂掉,你就单步在时钟初始化函数里擦看。
我用的是130和105 130是使用内部HSI , 105用外部8MHZ晶振,库都用了2.0.0版本,systick都正常。 一般需要修改的函数有(以105距离): 你所选的gd32f10x..h文件里, 因为这里有宏定义选 多少时钟主频/* define value of high speed crystal oscillator (HXTAL) in Hz */
#if !defined  HXTAL_VALUE   
#ifdef GD32F10X_CL   
  #define HXTAL_VALUE    (8000000) /*!< value of the external oscillator in Hz */ //CL系列支持
#else
  #define HXTAL_VALUE    ((uint32_t)8000000) /* !< from 4M to 16M *!< value of the external oscillator in Hz*/
#endif /* HXTAL_VALUE */
#endif /* high speed crystal oscillator value */   
元器件的宏定义 放在Project->Options for Target  "你工程的名字"  C/C++   USE_STDPERIPH_DRIVER,GD32F10X_CL,
还有1个函数是system_gd32f10x_cl.s , 我的官网例子PLL倍频和分频是按照外部25MHZ晶振做的,我实际用的是8MHZ, 所以不排除官网的例子目前对于你这个30X型号的倍频和分频计算有问题。

ps:  建议你用Firmware 原版里面的templete 跑下, 不过默认晶振 型号 都要选好。 你的问题往往自己小角度的,别人很难理解你的实际,所以没办法精确定位,这个是大部分人提问的问题。 你的硬件电源跟GND以及Vcap 都要满足官网手册的设计。

68

主题

3690

帖子

1万

积分

资深工程师

发表于 2017-10-11 21:17 | 显示全部楼层 |返回版面
估计是外部晶振的问题的
您需要登录后才可以回帖 登录 | 注册 手机登录

本版积分规则

分享 快速回复 返回顶部 返回列表