我将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内部根据实际温度补偿一个调整电阻值,但温度都是缓变的,不应该频繁地抖动啊?