0:DCOCLK
1:当 XT2 振荡器存在时选用 XT2CLK,当 XT2 振荡器不存在时采用 LFXT1CLK 或 VLOCLK
DIVSx: SMCLK的分频选择 0-3 对应 1/2/4/8 分频
DCOR: 0:DCOCLK使用内部电阻、 1:DCOCLK使用外接电阻
4、BCSCTL3:基础时钟系统控制寄存器3
学习经验总结】" alt="[转载]【msp430 学习经验总结】" width=33 height=33>
XT2Sx:XT2范围选择
0:0.4-1MHz 晶体或振荡器
1:1-3MHz 晶体或振荡器
2:3-16MHz 晶体或振荡器
3:0.4-16MHz外部数字时钟源
LFXT1Sx: 低频时钟选择和 LFXT1 范围选择。当 XTS=0 时在 LFXT1 和 VLO之间选择。当 XTS=1 时选
择 LFXT1 的频率范围。
0:LFXT1上的 32768Hz 晶体
1:保留
2:VLOCLK(MSP430X21X1 器件上保留)
3:外部数字时钟信源
XCAPx:振荡器电容选择。这些位选择当 XTS=0 时用于 LFXT1 的有效电容。
0:1pF
1:6pF
2:10pF
3:12.5pF
XT2OF:XT2振荡器是否失效
0:有效,正在工作
1:无效,未正常工作
LFXT1OF:LFXT1振荡器是否失效
0:有效,正在工作
1:无效,未正常工作
5、IE1:中断使能寄存器 1
学习经验总结】" alt="[转载]【msp430 学习经验总结】" width=33 height=33>
OFIE:振荡器失效中断使能。该位使 OFIFG 中断使能。由于 IE1 的其它位
用于其它模块,因此采用 BIS.B 或 BIC.B 指令来设置或清零该位比
用 MOV.B 或 CLR.B 更合适。
6、IFG1:中断标志寄存器 1
学习经验总结】" alt="[转载]【msp430 学习经验总结】" width=33 height=33>
OFIFG:振荡器失效中断标志。由于 IFG1 的其它位用于其它模块,因此
采用 BIS.B 或 BIC.B 指令来设置或清零该位比用 MOV.B 或
CLR.B 更合适。
0:没有未被响应的中断
1:有未被响应的中断
四、DCO频率
学习经验总结】" alt="[转载]【msp430 学习经验总结】" width=33 height=33>
4种频率经校准精度为±1%
4. 定时器TA
一、时钟源
1、时钟源:ACLK/SMCLK 外部TACLK/INCLK
2、分频:1/2/4/8 当 (注:TACLR 置位时,分频器复位)
二、计数模式
通过设置MCx可以设置定时器的计数模式
学习经验总结】" alt="[转载]【msp430 学习经验总结】" width=592 height=102>
1、停止模式:停止计数
2、单调增模式:定时器循环地从0增加到TACCR0值
周期 :TACCR0
CCIFG :Timer计到TACCR0值时触发
TAIFG :Timer计到0时触发
3、连续模式 :定时器循环从0连续增加到0xFFFF
周期 :0x10000
TAIFG :Timer计到0时触发
4、增减模式 :定时器增计数到TACCR0 再从 TACCR0 减计数到 0
周期 :TACCR0值的2倍
CCIFG :Timer计到TACCR0值时触发
TAIFG :Timer计到0时触发
三、定时器A TACCRx 比较模式 (用于输出和产生定时中断)
1、设置:CAP=0选择比较
2、输出信号:比较模式用于选择 PWM 输出信号或在特定的时间间隔中断。当 TAR 计数
到 TACCRx 的值时:
a、中断标志 CCIFG=1;
b、内部信号 EQUx=1;
c、EQUx 根据输出模式来影响输出信号
d、输入信号 CCI 锁存到 SCCI
每个捕获比较模块包含一个输出单元。输出单元用于产生如 PWM 这样的信号。每个输出单元可以根据
EQU0 和 EQUx 产生 8 种模式的信号。
3、中断
TimerA 有 2 个中断向量:
a、TACCR0 CCIFG 的 TACCR0 中断向量
b、所有其他 CCIFG 和 TAIFG 的 TAIV 中断向量
在捕获模式下,当一个定时器的值捕获到相应的 TACCRx 寄存器时, CCIFG 标志置位。
在比较模式下,如果 TAR 计数到相应的 TACCRx 值时,CCIFG 标志置位。软件可以清除或置
位任何一个 CCIFG 标志。当响应的 CCIE 和 GIE 置位时, CCIFG 标志就会产生一个中断。
c、TACCR0 CCIFG 标志拥有定时器 A 的最高中断优先级,并有一个专用的中断向量,
当进入 TACCR0 中断后,TACCR0 CCIFG 标志自动复位。
d、TACCR1 CCIFG, TACCR2 CCIFG, 和 TAIFG 标志共用一个中断向量。中断向量寄存器 TAIV
用于确定它们中的哪个要求响应中断。最高优先级的中断在 TAIV 寄存器中产生一个数字(见
寄存器说明),这个数字是规定的数字,可以在程序中识别并自动进入相应的子程序。禁止定时
器 A 中断不会影响 TAIV 的值。
对 TAIV 的读写会自动复位最高优先级的挂起中断标志。如果另一个中断标志置位,在结
束原先的中断响应后会,该中断响应立即发生。例如,当中断服务子程序访问 TAIV 时,如果
TACCR1 和 TACCR2 CCIFG 标志位置位,TACCR1 CCIFG 自动复位。在中断服务子程序的 RETI
命令执行后,TACCR2 CCIFG 标志会产生另一个中断。
四、TimerA的捕获模式
1、设置:CAP=1选择捕获, CCISx位设置捕获的信号源,CMx位选择捕获的沿,上升,下降,或上升下降都
捕获。
2、如果一个第二次捕获在第一次捕获的值被读取之前发生,捕获比较寄存器就会产生一个溢出逻辑,COV
位在此时置位,如图 8-11,COV 位必须软件清除。
五、寄存器
1、TACTL:TimerA控制寄存器
学习经验总结】" alt="[转载]【msp430 学习经验总结】" width=30 height=30>
TASSELx:TA时钟源选择
0:TACLK;1:ACLK;2:SMCLK;3:INCLK
IDx: 输入分频,分时钟源分频再输入TimerA
0/1/2/3:1/2/4/8 分频
MCx: 模式控制
0:停止定时器;1:增模式,定时器计数到TACCR0;