[STM8] STM8L151K4外部晶振一直起不来,无奈用内部,求看看原因。

[复制链接]
 楼主| qjp1988113 发表于 2016-3-23 13:19 | 显示全部楼层 |阅读模式
本帖最后由 qjp1988113 于 2016-3-23 13:21 编辑

STM8L151K4外部晶振一直起不来,无奈用内部,求看看原因。之前做过一版,外部晶振正常,做二版时就是重新敷了下地,就一致不行,求大神帮忙啊。。小弟感激不尽~~
捕获.PNG
 楼主| qjp1988113 发表于 2016-3-23 13:24 | 显示全部楼层
就是很奇怪出不来~~~我查了下电路都是正常的啊。。晶振也换过~单片机也换过就是不行啊。。
mmuuss586 发表于 2016-3-23 17:50 | 显示全部楼层
电容不行吧
aerwa 发表于 2016-3-23 17:53 来自手机 | 显示全部楼层
c36为什么要接电源?
aerwa 发表于 2016-3-23 17:54 来自手机 | 显示全部楼层
看错,你c36的地好奇怪啊
aerwa 发表于 2016-3-23 17:55 来自手机 | 显示全部楼层
还有软件里面第一时间就是要配置时钟,是不是次序有影响。
Brand2 发表于 2016-3-23 20:58 | 显示全部楼层
晶振是不是有使能没打开
戈卫东 发表于 2016-3-23 21:28 | 显示全部楼层
大片的蓝色难道不是GND网络么?为什么和GND标识的铜之间有间隙?
 楼主| qjp1988113 发表于 2016-3-23 21:37 | 显示全部楼层
打开了的啊。我之前做过一版OK的,后来做第二版,就改了下敷铜,就不行了。。
具体程序:
int main( void )
{
    //Sys_CLK_Config();          //系统时钟打开,外部晶振,不行然后就注释了
   /*下面用的内部晶振*/
    CLK_DeInit();                        
    CLK_HSICmd(ENABLE);               
    CLK_SYSCLKSourceConfig(CLK_SYSCLKSource_HSI);
    CLK_SYSCLKDivConfig(CLK_SYSCLKDiv_8);
   
    SineWave_CLK_Config();     //外设时钟打开
    SineWave_GPIO_Config();    //引脚初始化引脚打开
    SineWave_Init(70);         //正弦波初始化
    SineWave_TIM3_PWM_Config(1);//TIM3 PWM 70输出初始化
   
    SineWave_SET70_Enable(1);    //选择70
    SineWave_ON70_Enable(1);   //打开引脚连接
    EXTI5_Config();
    SineWave_ON70_Enable(0);   //关闭所以输出引脚
    while (1)
    {

    }

}

/**********系统时钟设置************************/
void Sys_CLK_Config(void)
{
  /* Select HSE as system clock source */
  CLK_SYSCLKSourceSwitchCmd(ENABLE);
  CLK_SYSCLKSourceConfig(CLK_SYSCLKSource_HSE);
  /* system clock prescaler: 1*/
  /*以外接最大16M运行*/
  switch (SYSCLKDivNum)
  {
    case 1:  CLK_SYSCLKDivConfig(CLK_SYSCLKDiv_1);  break;
        case 2:  CLK_SYSCLKDivConfig(CLK_SYSCLKDiv_2);  break;
        case 4:  CLK_SYSCLKDivConfig(CLK_SYSCLKDiv_4);  break;
        case 8:  CLK_SYSCLKDivConfig(CLK_SYSCLKDiv_8);  break;
        case 16: CLK_SYSCLKDivConfig(CLK_SYSCLKDiv_16); break;
    case 64: CLK_SYSCLKDivConfig(CLK_SYSCLKDiv_64); break;
        case 128:CLK_SYSCLKDivConfig(CLK_SYSCLKDiv_128);break;
    default: CLK_SYSCLKDivConfig(CLK_SYSCLKDiv_1);  break;
  }
  while (CLK_GetSYSCLKSource() != CLK_SYSCLKSource_HSE)
  {}
}
peakboy0016 发表于 2016-3-23 23:06 来自手机 | 显示全部楼层
电容最好放到晶振远离MCU的一侧
gxs64 发表于 2016-3-23 23:33 | 显示全部楼层
芯片有问题,上次我被搞了一周多。
lgq1542380129 发表于 2016-3-24 09:01 | 显示全部楼层
用示波器看看晶振有没有起振
xxxlzjxxx 发表于 2016-3-24 09:24 | 显示全部楼层
给个ST的设计指南。希望能帮到你。

1.png

ST微控器震荡电路设计指南.pdf (356.62 KB, 下载次数: 27)
hehailun 发表于 2016-3-24 09:41 | 显示全部楼层
是不是自己焊接的   多看一块板,看看供电是否正常,这不是布线问题 ,感觉焊接问题比较大
gxs64 发表于 2016-3-24 09:42 | 显示全部楼层
如果芯片内部没下载过程序,晶振是不起振的。排pcb没有要求这么严格,如果要这么严格,stm32设计就很失败。
程序能下载?debug行?
lemonboard 发表于 2016-3-24 11:32 | 显示全部楼层
我觉得楼上说得非常有道理。晶振的PCB设计并没有这么严格,在普通环境下,晶振还是非常容易工作
gmm2015 发表于 2016-3-24 11:50 | 显示全部楼层
C36的GND接的很奇怪。
用导线把C36和C35的GND连起来试一下
Mr大风车 发表于 2016-3-24 13:13 | 显示全部楼层
这地看起来好奇怪,示波器测一下吧。
terry_yung1 发表于 2016-3-24 13:17 | 显示全部楼层
买到假货了。。
290399937 发表于 2016-3-24 21:18 来自手机 | 显示全部楼层
是qfn封装吗。中间大地有焊接吗
您需要登录后才可以回帖 登录 | 注册

本版积分规则

111

主题

627

帖子

2

粉丝
快速回复 在线客服 返回列表 返回顶部