现在正在用G2553,没有用外部晶振,只用了内部的DCO作为时钟源。
想把DCO配置成200kHz,但发现没有一个配置200KHz的寄存器参考值(1MHz有头文件提供默认的宏),请问应该如何知道DCOx和RSELx和MOD应该配成多少?
通过手动不断在示波器上测试,配了一套值,但发现时钟不是特别准,请问内部DCO在没有外部参考的情况下精度是多少?
我知道在有外部晶振参考的情况下,可以通过软件的方式计算出配置DCO的寄存器值,那么在没有外部晶振参考的情况下,应该如何配置呢?
谢谢
xue liu:
回复 step by step:
非常感谢您的回复。
我是想通过降低2553的主频来降功耗,同时用这个频率来驱动timer等外设。请问这种方式对于降低2553的功耗效果明显么?是否有相关数据?谢谢
step by step:
回复 xue liu:
楼主,
关于降低频率应该是可以降低功耗的,可以参考datasheet上的图表“Typical Characteristics, Active Mode Supply Current” 。这样做的话就需要自己去调整DCO设置。如果楼主需要降低功耗,可以在使用中让MSP430进入LPM模式来降低功耗。
xue liu:
回复 step by step:
好的,我明白了,非常感谢您的回答
kqian0327:
你好,
MSP430G2xxx不支持外部高频时钟,如果你希望利用DCO时钟是可以的,但不推荐,因为你设置的时钟是没有被校准的时钟,意义不大,误差范围+-3%。
另外,在数据手册上我们有说明,我们出厂在information flash有定义1M 4M 8M 12M 16M被校准的时钟值,直接调用该值可配置DCO时钟输出定义的时钟频率。
WDTCTL = WDTPW + WDTHOLD; // Stop watch dog timer BCSCTL1 = CALBC1_1MHZ; // Set DCO to 1MHz DCOCTL = CALDCO_1MHZ;
CALBC1_1MHZ,和CALDCO_1MHZ在G2xx.h的头文件可以找到其定义!
xue liu:
回复 kqian0327:
好的,谢谢