完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
在CPU的频率是上电复位的默认值,HSI/8,也就是2M的时候,CCO能够正常的输出,通过逻辑分析仪测试正好是2M。但是当在程序开始运行的时候,加上
while(bitRead(CLK_ICKR,HSIRDY_POS)==0); //wating until HSI ready CLK_CKDIVR=0x00;//set HSIDIV==00,fHsi==fHsi RC Output,16M 也就是将CPU设置成为16M的时候,CCO却不能输出了,通过ST LINK 查看,CCORDY=1,CCOBSY=1。 使用软件延时测试小灯泡的闪烁速度,可以看出2M和16M下的闪烁明显不同。16M的速度应该是设置成功了。但是为什么CCO不能够输出呢?求版主指教。 |
|
相关推荐
1个回答
|
|
STM8 CCO(Clock Configuration Output)不能输出的原因可能有以下几点:
1. 配置错误:请确保您正确配置了CCO。在STM8系列中,CCO的配置涉及到CLK_ICKR、CLK_CCOR、CLK_CCORLS、CLK_CCODIVR等寄存器。请检查这些寄存器的配置是否正确。 2. 时钟源未准备好:在更改CPU频率之前,请确保新的时钟源已经准备好。在您的代码中,您已经使用了`while(bitRead(CLK_ICKR,HSIRDY_POS)==0);`来等待HSI准备好。请确保在更改频率之前,HSI已经稳定。 3. CCO输出引脚配置:请检查CCO输出引脚是否已正确配置。在STM8系列中,CCO输出引脚通常需要配置为模拟输入或开漏输出。请检查您的引脚配置是否正确。 4. 时钟分频错误:在您的代码中,您使用了`CLK_CKDIVR=0x00;`来设置HSIDIV。请确保这个值是正确的,以便在更改频率时,CCO的输出频率不会受到影响。 5. 软件延时问题:您提到使用软件延时测试小灯泡的闪烁速度。请确保软件延时的实现是准确的,以便在不同频率下观察到正确的闪烁速度。 6. 硬件问题:如果以上步骤都无法解决问题,可能是硬件方面的问题。请检查您的STM8开发板和外部电路,确保没有短路、断路或其他硬件故障。 建议您按照以下步骤进行排查: 1. 确认CCO相关寄存器的配置是否正确。 2. 检查CCO输出引脚的配置。 3. 确保时钟分频设置正确。 4. 检查软件延时的实现。 5. 检查硬件连接和电路。 希望这些建议能帮助您解决问题。如果问题仍然存在,请提供更多详细信息,以便进一步分析。 |
|
|
|
只有小组成员才能发言,加入小组>>
调试STM32H750的FMC总线读写PSRAM遇到的问题求解?
1750 浏览 1 评论
X-NUCLEO-IHM08M1板文档中输出电流为15Arms,15Arms是怎么得出来的呢?
1608 浏览 1 评论
1049 浏览 2 评论
STM32F030F4 HSI时钟温度测试过不去是怎么回事?
721 浏览 2 评论
ST25R3916能否对ISO15693的标签芯片进行分区域写密码?
1665 浏览 2 评论
1924浏览 9评论
STM32仿真器是选择ST-LINK还是选择J-LINK?各有什么优势啊?
711浏览 4评论
STM32F0_TIM2输出pwm2后OLED变暗或者系统重启是怎么回事?
560浏览 3评论
583浏览 3评论
stm32cubemx生成mdk-arm v4项目文件无法打开是什么原因导致的?
544浏览 3评论
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2024-12-18 11:28 , Processed in 0.666095 second(s), Total 47, Slave 40 queries .
Powered by 电子发烧友网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191 工商网监 湘ICP备2023018690号