打印

STM8S 为什么我设置外部晶振16M的时候不对呢

[复制链接]
2385|19
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
magicoctoy|  楼主 | 2016-11-13 16:12 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
沙发
Creas_Tall| | 2016-11-13 21:59 | 只看该作者
程序问题呢?还是硬件问题呢,先搞懂这个

使用特权

评论回复
板凳
tomyoct| | 2016-11-13 22:23 | 只看该作者
不对是什么情况呢?振不起来,还是频率达不到16M呢

使用特权

评论回复
地板
MTCN2013| | 2016-11-15 20:21 | 只看该作者
查看寄存器,我记得这个芯片有寄存器可以知道主频值的。

使用特权

评论回复
5
叶覃| | 2016-11-18 14:40 | 只看该作者
默认是使能的内部晶振,你需要切换为外部晶振的,切换程序是否ok呢?

使用特权

评论回复
6
huafei123| | 2016-11-18 14:45 | 只看该作者
给你个切换的代码看看
  CLK_ECKR_HSEEN=1;//开外部
  while(!CLK_ECKR_HSERDY);//等待外部时钟准备好
  CLK_SWCR_SWEN=1;//使能时钟切换
  CLK_SWR=0XB4;//HSE为主时钟源
  while(!CLK_SWCR_SWIF);//等待切换成功,如果Option Bytes中的Flash_Wait_States不设置为1,此行不能通过
  CLK_SWCR_SWEN=0;// 清除切换标志

使用特权

评论回复
7
mdk55555| | 2016-11-19 19:42 | 只看该作者
拿示波器看看晶振是否起振呢?起振电容是否匹配呢?

使用特权

评论回复
8
喵喵小星人| | 2016-11-19 22:56 | 只看该作者
拿个led闪烁做为指示,判断是切换失败呢,还是切换成功

使用特权

评论回复
9
xiaolong12| | 2016-11-19 23:05 | 只看该作者
打开外部晶振后,必须要加while进行判断,或者加个延时等待稳定的

使用特权

评论回复
10
maninman1981| | 2016-11-20 20:50 | 只看该作者

先使能内部晶振,然后单步调试吧,看看是卡在哪里的呢

使用特权

评论回复
11
rmbass| | 2016-11-20 20:53 | 只看该作者
如果是晶振电路的问题,程序会卡在while循环那里,主函数的其他操作都不执行。如果是切换失败,会继续保持内部晶振,这时候程序会运行的

使用特权

评论回复
12
admin852| | 2016-11-21 16:20 | 只看该作者
沙发客,好久没来,有么有想我?

使用特权

评论回复
13
wangjiahao88| | 2016-11-21 17:15 | 只看该作者
需要配置的!

建议从引导文件 配置!

使用特权

评论回复
14
冰是睡着的冰| | 2016-11-22 11:00 | 只看该作者
分频什么的,都设置正确的吗?

使用特权

评论回复
15
yysforever| | 2016-11-22 11:15 | 只看该作者
不对是指主频值不对呢?还是切换失败呢

使用特权

评论回复
16
Dennis-Zhou| | 2016-11-23 21:52 | 只看该作者

把内部晶振和外部的频率设置的不一样,观看led的闪烁频率,就知道是停留在内部还是外部了

使用特权

评论回复
17
jouney316| | 2016-11-23 22:06 | 只看该作者
//启动时钟配置
    void SysClkInit(void)
   {
   //  CLK_SWR=0xe1; //HSI为主时钟源
       CLK_SWR=0xb4; //HSE为主时钟源
       CLK_CKDIVR=0x00;//CPU时钟0分频,系统时钟0分频
       CLK_CSSR=0x01;//时钟安全监测使能
       CLK_SWCR=0x02;//使能自动时钟切换
   }

使用特权

评论回复
18
dongbaohui| | 2016-11-24 19:38 | 只看该作者
首先设置时钟源,也就是时钟是用内部还是外部,如果对时间精度要求不高,用内部也可以。。然后是时钟分频。。这个分频需要设定系统时钟和CPU时钟,这两个时钟,如果对此有特殊要求就得好好斟酌一下了,而我全部不分频。时钟安全监测还是打开吧,如果用的外部时钟,但是外部时钟突然出现故障的话,单片机会自动启用内部时钟,内部时钟默认为8分频也就是2M。然后时钟自动切换,好像这个有没有都可以,去掉能不能使回头再试。。

使用特权

评论回复
19
l科科1987| | 2016-11-24 20:44 | 只看该作者
我记得官方有晶振切换的例程的,跑例程试试看。

使用特权

评论回复
20
magicoctoy|  楼主 | 2017-4-17 18:57 | 只看该作者
叶覃 发表于 2016-11-18 14:40
默认是使能的内部晶振,你需要切换为外部晶振的,切换程序是否ok呢?

没有切换正确,需要加个延时的。

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

25

主题

236

帖子

1

粉丝