历史上的今天
今天是:2024年09月08日(星期日)
2020年09月08日 | msp430系统时钟详解
2020-09-08 来源:elecfans
SP430 系列单片机基础时钟主要是由低频晶体振荡器,高频晶体振荡器,数字控振荡器(DCO),锁频环(FLL)及 FLL+等模块构成。由于 430 系列单片机中的型号不同而时钟模块也将有所不同。虽然不同型号的单片机的时基模块有所不同,但这些模块生出来的结果是相同的。在MSP430F13、 14中是有TX2振荡器的, 而MSP430F11X,F11中是用LFXT1CLK来代替XT2CLK时钟信号的。在时钟模块中有3个(对于F13,F14)时信号源(或 2个时钟信号源,对于F11X、F11X1):
1-LFXT1CLK: 低频/高频时钟源。由外接晶体振荡器,而无需外接两个振荡电容器常使用的晶体振荡器是32768HZ。
2-XT2CLK: 高频时钟源。由外接晶体振荡器。需要外接两个振荡电容器,较常的晶体振荡器是 8MHZ。
3-DCOCLK: 数字可控制的 RC 振荡器。

在这三个时钟源的独立工作或是在三个时钟源相互协调配合(是可以通过软件配置的)下为2553系统提供了系统时钟ACLK、MCLK和SMCLK。ALCK、MCLK、SMCLK是和CPU或者外设连接起来的,而LFXT1CLK、XT2CLK、DCOCLK、VLOCLK这四个又是和ALCK、MCLK、SMCLK连接起来的,也就是说LFXT1CLK、XT2CLK、DCOCLK、VLOCLK是通过ALCK、MCLK、SMCLK和外设连接起来的。

上电后,系统默认使用的主系统时钟MCLK和子系统时钟SMCLK是同为DCOCLK产生的1MHz时钟,而辅助时钟ACLK则为内部VLOCLK产生的12KHz时钟。G2553上电后时钟的初始状态我们可以用Grace来查看:

可以看出MCLK和SMCLK都是DCOCLK产生的1MHz的时钟,ACLK则是VLOCLK产生的12KHz的时钟。
DCO时钟:
DCO时钟源产生的频率可以通过DCOCTL寄存器来设置寄存器来设定,通过设定DCOCTL中的高三位(其名字为DCOx),BCSCTL1基本时钟控制寄存器低四位(其名字为RSELx)就可以控制DCO振荡器产生100K~20M不等的时钟频率。设定时应尽量居中,以保持稳定

1.DCOCTL,DCOControlRegister
DCOxDCO频率选择寄存器,通过该位设置DCO的频率。
MODx模式选择位。
2.BCSCTL1,BasicClockSystemControlRegister1
XT2OFFG2553该位无效,详细请参阅官方技术文档。
XTS LFXT1,模式选择位
0低频模式。
1高频模式。
DIVAx
分频寄存器,分频后给ACLK提供时钟00/1。01/2。10/4。11/8。
RSELx DCO频率选择寄存器,通过该位设置DCO频率。
3.BCSCTL2,BasicClockSystemControlRegister2
SELMx
MCLK时钟源选择
00DCOCLK。
01DCOCLK,与00效果一样。
10G系列单片机该位无效。
11低频外部时钟。
DIVMx
时钟源分频寄存器,选择时钟源后经过该位分频后提供给MCLK
00/1。01/2。10/4。11/8。
SELS
SMCLK时钟源选择寄存器
0DCOCLK。
1外部晶振。
DIVSx
时钟源分频寄存器,选择时钟源后经过该位分频后提供给SMCLK
00/1。01/2。10/4。11/8。
DCOR 该位保留。
4.BCSCTL3,BasicClockSystemControlRegister3
XT2SxG系列单片机该位无效
LFXT1Sx
对G系列单片机,当BCSCTL1寄存器中XTS=0时,该位的设置才有效
00外部接的是32768HZ的晶振。
01保留位。
10选择超低频外部时钟(VLOCLK)
11数字外部时钟源。
XCAPx
振荡器电容选择寄存器,当XTS=0时该位有效,假如XTS=1或者LFXT1Sx=11,
XCAPx应该设置为00
00~1pF。01~6pF。10~10pF。11~12.5pF。
XT2OF 对G系列单片机该位无效
LFXT1OF
LGXT1晶体振荡器故障状态寄存器
0没有故障。
1有故障。
5.IE1,InterruptEnableRegister1中断使能寄存器
OFIE
晶体振荡器故障使能寄存器
0禁止中断
1使能中断
MSP430G22x0不支持该位。
6.IFG1,InterruptFlagRegister1
OFIFG
晶体振荡器故障标志寄存器
0没有发生中断。
1有中断事件发生。
MSP430G22x0不支持该位。
史海拾趣
|
windows mobile下 如何实现窗口的透明效果?指的是局部透明,及窗体完全透明,其上面的控件不透明,SetLayeredWindow不支持 查了好多资料,发现貌似与AlphaBlend有关,请高手指点!最好有例子,谢谢… 查看全部问答> |
|
是这样的 ,有个读写器有gpio接口,它是10个接口, 另外我想用这个东西来控制三色报警灯(三个颜色,另外可以报警)。 请问这个东西如何接线,来控制我灯的四个状态。 gpio有四个输入口和四个输出口,我 ...… 查看全部问答> |
|
本人写了一段代码,能把数据往当前焦点处输入: INPUT Input; for( i=0 ; strInfo!=\'\\0\' ; i++ )//strInfo已经付值 ...… 查看全部问答> |
|
LPC11c14如何用中断标示符INTID读取报文编号,收到CAN后不是先会产生状态中断么,那不是永远都不到报文中断编号了么?… 查看全部问答> |
|
昨天元宵节,单位提前两个小时放假,回家的时候路过学校,顺便去看了一下上学时教单片机的老师。老师给我看了一下我们当初建的电子实验室现在的成果,给大家分享一下!智能蔽障机器人小车 51板扩展制作的智能小车,可以实现单片机控制小车前后左右 ...… 查看全部问答> |




