标题: 关于stm32的mco输出的问题的解答 [打印本页]

作者: 3lian    时间: 2014-3-2 17:53
标题: 关于stm32的mco输出的问题的解答
最近在做一个东西时需要驱动OV7670摄像头,OV7670所用的时钟源是由STM32的HSE(我这里所用的是外接晶振)提供,然后复用到MCO引脚输出,当然芯片内部的电平是占空一半的方波,但是在调试摄像头时我发现SCCB通信总是失败,也就是单片机总是接收不上数据,后测发现XCLK(OV7670时钟输入脚)的波形严重失真,如下图

一开始我以为是外接时钟源选择错误,我应该选择外接占空一半的方波,但是在网上和其他网友交流后知道内部时钟电路绝对是方波,也就是有相应的整形电路,HSE与HSI输出的都是方波,下图是时钟内部原理图:

从图中我们可以看出MCO输出可选的有四种时钟源,除了SYSCLK其他的都是方波,但是外接时钟源频率是8M,其实对于我所用的示波器来说,8M的方波它测不出,带宽不够。接下来我给大家展示一下我的验证:

这是36M低速时钟50分频后的方波,从图中可以看出电平跳动时抖动很厉害,趋于稳定时间超过了一半周期

这是36M低速时钟25分频后的方波,已经很失真了,能勉强看一下。

这是36M低速时钟12分频后的方波,差不多不能看了

这是36M低速时钟6分频后的方波,几乎已经是稍稍失真的正弦波了,另外由于这是由计时器产生的方波,在电平跳动时一定产生纹波,没有直接从HSE引出来的波形干净,所以即使HSE是8M的波形,其依旧比6M的由TIM产生的方波漂亮。

这是本人所用的示波器
所以,选用MCO引脚输出时钟电平是没问题的,有些同学说在做摄像头驱动是时钟不匹配,我想说的是你所测出来的波形不合适,所以感觉不匹配,要是有问题也应该是程序有问题,不然怎么会有人用STM32驱动OV7670呢!

作者: T_Josh    时间: 2014-4-18 10:55
今天看了 正好有用




欢迎光临 (http://www.51hei.com/bbs/) Powered by Discuz! X3.1