烽火社区

标题: 【MSP430F149学习】06系统上电启动解析 [打印本页]

作者: hongqiao    时间: 2015-12-4 09:43 PM
标题: 【MSP430F149学习】06系统上电启动解析


【MSP430F149学习】06系统上电启动解析




MSP430系统复位解析


[attach]33531[/attach]


          从图中可以看到两个复位信号,一个是上电复位信号POR【Power On Reset】和上电清除信

 

号PUC【Power Up Clear】。


POR信号是器件的复位信号,此信号只有在以下的事件发生时会产生:


* 器件上电时

* RST/NMI 引脚配置为复位模式,当 RST/NMI 引脚产生低电平


当POR信号产生时,必然会产生PUC信号;而PUC信号的产生是不会产生POR信号。


会引起产生PUC信号的事件:


* POR 信号发生时
* 启动看门狗时,看门狗定时器计满时
* 向看门狗写入错误的安全参数值时

* 向片内FLASH写入错误的安全参数值时


MSP430 单片机系统复位后器件的初始化


当POR信号或PUC信号发生时引起器件复位后,器件的初始化状态为:


* RST/NMI 引脚配置为复位模式
* I/O引脚为输入模式
* 状态寄存器复位
* 程序计数器(PC)装入复位向量地址 0xFFFF,CPU从此地址开始执行
* 其它模块的寄存器初始化



MSP430上电后系统时钟解析

基本时钟系统结构原理图


[attach]33532[/attach]


基本的时钟模块

[1] ACLK 辅助时钟(Auxillary Clock)
ACLK 是 LFXT1CLK 时钟源经 1、2、4、8 分频后得到的。
ACLK 可由软件选择作为各个外围模块的时钟信号,一般用于低速外设。
[2] MCLK 主系统时钟(Main System Clock)
MCLK 可由软件选择来自 LFXT1CLK、XT2CLK、DCOCLK 三者之一,然后经 1、2、4、8 分频。
MCLK 通常用于 CPU 运行,程序的执行和其他使用到高速时钟的模块。
[3] SMCLK 子系统时钟(Sub System Clock)
SMCLK 可由软件选择来自 XT2CLK 或 DCOCLK,然后经 1、2 、4、8 分频。
SMCLK 通常用于高速外围模块。


时钟源

[1]  低速晶体震荡器( LFXT1 )
[2]  高速晶体震荡器
[3]  数控震荡器


基本时钟系统寄存器
 
DCOCTL         DCO 控制寄存器 

[attach]33533[/attach]


DCOx: DCO 频率选择
用来选择 8 种频率,可分段进行调节 DCOCLK 频率。该频率是建立在 RSELx 选定的频段上。
MODx:DAC 调制器设定
控制切换 DCOx 和 DCOx+1 选择的两种频率,来微调 DCO 的输出频率。
如果 DCOx 常数是 7,表示已经选择最高频率,此时 MODx 失效,不能用来进行频率调整。

BCSCTL1         基本时钟系统控制寄存器 1 

[attach]33534[/attach]


XT2OFF:XT2 高速晶振控制
此位用于控制 XT2 振荡器的开启与关闭。
0: XT2 高速晶振开
1: XT2 高速晶振关
XTS:LFXT1 高速/低速模式选择
0: LFXT1 工作在低速晶振模式(默认)
1: LFXT1 工作在高速晶振模式
DIVAx:ACLK 分频选择
0: 不分频
1: 2 分频
2: 4 分频
3: 8 分频
XT5V:不使用
通常此位复位 XT5V=0
RSELx:DCO 震荡器的频段选择
该 3 位控制某个内部电阻以决定标称频率。
0: 选择最低的标称频率
......
7: 选择最高的标称频率

BCSCTL2 基本时钟系统控制寄存器 2 

[attach]33535[/attach]


SELMx:选择 MCLK 时钟源
0: MCLK 时钟源为 DCOCLK(默认)
1: MCLK 时钟源为 DCOCLK
2: MCLK 时钟源为 XT2CLK
3: MCLK 时钟源为 LFXT1CLK
DIVMx:选择 MCLK 分频
0: 不分频(默认)
1: 2 分频
2: 4 分频
3: 8 分频
SELS:选择 SMCLK 时钟源
0: SMCLK 时钟源为 DCOCLK(默认)
1: SMCLK 时钟源为 XT2CLK
DIVSx:选择 SMCLK 分频
0: 不分频(默认)
1: 2 分频
2: 4 分频
3: 8 分频
DCOR:选择 DCO 震荡电阻
0: 内部电阻
1: 外部电阻

DCO 的频率的调节图(DCOx 和 RSELx 决定 DCO 频率)


[attach]33536[/attach]


结论:MCU上电复位后   DCOx  =  3   RSEL  =  4  .由图中可得 MCLK  SMCLK  接近 1000KHz


          看官网例程怎么是【MCLK = SMCLK=  default DCO~800KHz】[attach]33537[/attach]



【MSP430F149学习】汇总贴








欢迎光临 烽火社区 (http://bbs.cnecport.com/) Powered by Discuz! X3.2