This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

关于MSP430出厂校准DCO问题

我将430G2231的SMCLK( 默认状态也就是MCLK即DCO)从P1.4引出,并用数字示波器和频率计进行了详细测量:

1) 如果初始化中我配置DCO为出厂校准的频率1MHZ,如

BCSCTL1 = CALBC1_1MHZ;

DCOCTL = CALDCO_1MHZ;

这时发现信号的频率准确度是比较好的,约在2%误差内,但时钟信号的前后沿都比较"晃抖",为什么会这样?我担心若将此钟输出作为某类特殊信号使用时会产生干扰.

2)如果初始化中我配置DCO为一个非出厂校准频率,,如

BCSCTL1 = 136;

DCOCTL = 96;

此时标称的DCO频率是1.6MHz,实测误差大约在10%以内,准确度确实要差一些,但这时的波形却非常稳定。又选测了其它一些频率,都如此。

想问问为什么会有这种异常?按理出厂校准就是MCU内部根据实际温度补偿一个调整电阻值,但温度都是缓变的,不应该频繁地抖动啊?

  • YM lee,

    时钟信号的前后沿都比较"晃抖",  

    能不能贴个图上来?

    我一直没有去测试过相关的波形。如果您能把详细的测试过程,程序,以及波形图发给我,这样最好了。我们可以直接去问一下设计MSP430的同事。

  • 频率的抖动一般来讲是DCO中的Modulator引起的. 由于DCO对频率的调节不是连续的.如果目标频率落在DCO两个频率点之间. 打开Modulator就可以让两个频点混合,让平均频率更加接近目标频率.

    如果不需要的话,把DCOCTL中的MODx置0即可,这样时钟就没有jitter了。

    但您的配置理论上也是有jitter的,可以再试试

  • 这时发现信号的频率准确度是比较好的,约在2%误差内,但时钟信号的前后沿都比较"晃抖",为什么会这样?我担心若将此钟输出作为某类特殊信号使用时会产生干扰.

    如果是Jitter的话,校正频率的时钟信号跟其他的非出厂校准频率的时钟信号,产生“某类特殊信号使用时会产生干扰”是一样的。之前我的理解是时钟信号波形上有问题,比如有比较大的过冲或者类似振铃之类的。

  • 回复 Jason Guo:

    这个抖动应该就是因为“Modulator”引起的。但无法克服,因为厂家不可能专为“校准频点”在芯片内部造几个特殊电阻,他只能从已有的标准电阻组中抽查几个,并用这几个电阻“混搭”起来(即调制)获得一个更紧接校准频率的动态电阻组,所以校准DCO永远都是抖的!你不可能让它不抖。

    而自选一个固定频点(非校准,准确度较差),就可以保证信号不抖。

  • 使用DCO输出时钟信号的设备对时钟信号有什么要求?如果能到达要求是可以用的

  • 1.Modulator 公式:

    t = (32 – MODx) × tDCO + MODx × tDCO+1

    2.如果不要补偿,应该把DCOCTL中的MODX置零,是DCOCTL的低五位,楼主的设置刚好MODX为0

  • DCO 模块混有两个DCO 频率,fDCO 和 fDCO+1,用以产生介于fDCO 和 fDCO+1之间的频率。这样就可得到带有所需的平均频率的调制时钟。调制的影响表现形式就是频率的抖动。本质上来说,这种调制将时钟能量扩散到一个宽带中,减小了电磁干扰(EMI)。DCO 频率会随着温度和电压的变化而有所波动。请参阅器件数据手册关于DCO 的具体说明。注意任何供电电源的不稳定也会造成DCO 频率的抖动。

  • 也就是说DCO的调制,其实就只是在两个频点上跳动,而不是一般说的无规则的抖动。

x 出现错误。请重试或与管理员联系。