历史上的今天
今天是:2025年07月11日(星期五)
2018年07月11日 | MSP430G2553默认的MCLK、SMCLK、ACLK时钟频率
2018-07-11 来源:eefocus
摘要:
本文将介绍如何从手册中查找出G2553各个时钟的默认时钟频率,以及使用定时器中断方法测出各个时钟频率。实验所用平台是MSP-EXP430G2 LaunchPad,MCU为MSP430G2553。
1、查阅datasheet。
手册原文:After a PUC,MCLK and SMCLK are sourced from DCOCLK at ~1.1Mhz (see the device-specific data sheet for parameters) and ACLK is sourced from LFXT1CLK in LF mode with an internal load capacitance of 6pF.
从上边我们不难发现,主时钟MCLK和子时钟SMLK由内部数控震荡器DCO产生,大约在1.1MHz左右,需要声明一点的是,内部数控振荡器受电源电压和外界温度影响比较大,范围在800kHz~1.5MHz,室温下,3.5V时测得DCO频率为1.04Mhz。辅助时钟ACLK由外部低频晶振产生,一般为32.768kHz。
2、通过寄存器默认设置判定
从上图我们发现这些寄存器初始值并非全0,这样我们可以查看寄存器对应为的含义从而确定各个时钟的默认值。
2.1、先确定DCO
从上边我们得到RSELx = 7,DCOx = 3,MODx = 0,然后查看下表:
从上表得到DCO默认值再1Mhz附近,这与前面所说的一致,范围在800kHz~1.5MHz。
2.2、主时钟MCLK、子时钟SMCLK
很容易发现MCLK、SMCLK时钟源均来自DCO且分频系数为1,故MCLK、SMCLK默认时钟频率为DCO,大小为1MHz左右。
同样,辅助时钟ACLK也可以通过查看手册得到其时钟源来自于外部低频晶振,大小一般为32.768kHz。而且430系列单片机大部分辅助时钟默认时钟源均来自外部低频晶振。
3、定时器法
也可使用一下代码进行验证,例如验证ACLK。
#include
void main(void)
{
WDTCTL = WDTPW + WDTHOLD;
P1DIR |= BIT0;
P1OUT |= BIT0;
/* 时钟源ACLK 清计数器 增模式 开启定时器A中断 */
TACTL |= TASSEL_1 + TACLR + MC_1 + TAIE;
TACCR0 = 1024; //频率:32768/1024/2=16Hz
_EINT(); //开总中断
while(1)
{
LPM3; //进入低功耗模式3
}
}
#pragma vector = TIMER0_A1_VECTOR
__interrupt void Timer_A(void)
{
switch(TAIV)
{
case 2: break;
case 4: break;
case 10: P1OUT ^= BIT0; //中断任务
break;
}
}
将以上代码编译并载入g2553开发板上,能看到红色LED等在闪烁,用示波器测量P1.0端口后,我们发现其频率为15.98Hz。由此往上推断定时器A所使用的辅助时钟的确是外部低频晶振32.768kHz。
总结:
以上,我们介绍了三种方法判定G2553系统的三种时钟的默认时钟频率,其中第三种方法我们尽可能的动手实践一下,可以很直观的看到系统的时钟频率值。
参考:
[1]MSP430x2xx_datasheet
[2]MSP430系列16位超低功耗单片机原理与实践 沈建华<著>
[3]http://blog.chinaunix.net/uid-9112803-id-3124335.html
史海拾趣
|
什么是多点电喷发动机?与单点电喷发动机相比有何优势 众所周知,汽车发动机的电喷装置一般是由喷油油路、传感器组和电子控制单元3大部分组成的。如果喷射器安装在原来化油器位置上,即整个发动机只有一个汽油喷射点,这就是单点电 ...… 查看全部问答> |
|
来源:顶嵌嵌入式培训 作者:顶嵌学员-万隆(山东理工大学讲师) 一、本次内核编译新内核所涉及软件版本 “gcc –version”可查寻GCC版本------4.3.2 20081105(Red Hat 4.3.2-7) “make –v”可查询 Gnu make版本-----3.81 “ld –V(v ...… 查看全部问答> |
|
今天微机原理老师说,自己在做完一块单片机开发板后,要用汇编写一部监控程序,类似于简单的操作系统。对此十分有兴趣,想请各位高手,介绍和提供一些这方面的学习资料和实例。十分感谢… 查看全部问答> |
|
移码的一些问题??? 阶码 E = (10)移码 = 1010 我的理解 10 的二进制码为 1010 带符号为 01010 补码为01010 移码是将补码符号为取反 为 11010 可书上的答案为 10 的移码为1010 请问这是怎么回事啊???… 查看全部问答> |
|
谁能介绍一本学单片机的书啊?我单片机学了一个学期,还不是很懂,要教C编单片机的 我就是学了一个学期的单片机,现在还不是很懂的,我们在上个学期教的是汇编。因为下个学期要学C语言编程单片机了,所以我现在要学C语言编程单片机的,谁能介绍一本好点的书啊,谢谢了… 查看全部问答> |
|
我知道GCS0可以接Nor Flash,GCS6-7可以接SDRAM,GCS1到GCS5除了可以接网卡外,还可以接什么芯片啊?… 查看全部问答> |




