hse不起振 stm8_STM8S207使用外部24M晶振不起振的解决办法

具体表现:

1、使用 20M 的外部晶振,程序也能正常工作。

2、使用 24M 的外部晶振,就不能工作,经示波器测量,晶振没有起振。

3、为了去除晶振的原因,就换了一个 24M 的晶振,结果还是不行,可见应该不是晶振的问题。

4、去群里问,一个叫“碎片”的网友说,这是因为没有添加 FLASH 等待周期造成的。外部晶振大于16M 就得添加 FLASH 等待周期,虽然 20M 也能运行,但长时间运行会不稳定。

5、我按他的方法添加了 FLASH 等待周期,果然程序正常运行了,用示波器的 x10 档测量晶振,能看到很完美的正弦波。但开始用 x1 档,表笔一接触晶振引脚,程序就立即停止,考虑到是示波器的影响,就换成了 x10 档,果然能正常测量。

6、具体添加办法如下图,在STVD环境下,右击 No wait state 在弹出的菜单中,选择 1 wait state 就可以了,然后再烧录就正常了。

7、查找资料:

4.4.2  Memory access/ wait state configuration

The Flash/ data EEPROM access time allows the device to run atup to 16 MHz without wait states.

When using the high-speed external clock (HSE) at higher frequencies up to 24 MHz,one wait state is necessary. In this case the device option byte should be programmed to insert this wait state. Refer to the datasheet option byte section.

本网站转载的所有的文章、图片、音频视频文件等资料的版权归版权所有人所有,本站采用的非本站原创文章及图片等内容无法一一联系确认版权者。如果本网所选内容的文章作者及编辑认为其作品不宜公开自由传播,或不应无偿使用,请及时通过电子邮件或电话通知我们,以迅速采取适当措施,避免给双方造成不必要的经济损失。

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值