历史上的今天
今天是:2024年10月18日(星期五)
2019年10月18日 | MSP430单片机各种寄存器总结(2)——UCS
2019-10-18 来源:eefocus
第二章 UCS寄存器
2.1 UCSCTL0


上述的两个区域并不需要设置,在配置FFL的时候直接设置成0即可,FLL配置完成后会自动被设置。
2.2 UCSCTL1

DCORSEL,DCOCLK的频率范围设置参数,通过它来设置DCOCLK的频率范围,比如:设置DCOCLK的输出频率范围为0.64~14.0MHz
如下图所示,可知设置频率为0.64~14.0MHz的DCO需要将DCORSEL的值设置为3.

UCSCTL1 = DCORSEL_3; //DCORSEL_3是宏定义,为0x0030
2.3 UCSCTL2 & UCSCTL3
2.3.1 寄存器示意图


2.3.2 锁频环FLL
上述两个是关于锁频环FLL的控制寄存器,FLL示意图如下,务必背过此图

2.3.3 FLL的计算公式

2.3.4 寄存器中各个位的解释

2.4 UCSCTL4
2.4.1 寄存器示意图

这个寄存器的作用是,为SMCLK、ACLK、MCLK选取信号源。在UCS的实验中几乎是必用的。
2.4.2 寄存器功能

2.4.3 例程
SMCLK=MCLK=DCOCLK,ACLK=XT1CLK
//注意这里的赋值用“=”,而不是“|=”,区别不讲了,重复过很多次了
UCSCTL4 = SELA__XT1CLK + SELM__DCOCLK + SELS__DCOCLK;
/*
#define SELA__XT1CLK (0x0000)
#define SELS__DCOCLK (0x0030)
#define SELM__DCOCLK (0x0003)
*/
2.5 UCSCTL6

这个寄存器只需要知道两个位:

BITS FIELD Description 默认
8 XT2OFF 关闭XT2CLK 关闭
0 XT1CLK 关闭XT1CLK 关闭
注意,这里的关闭的条件是,该时钟信号没有被作为ACLK、SMCLK、MCLK、FLL参考时钟的时钟源。
2.6 UCSCTL7

振荡器故障标志位寄存器,如果想要稳定XT1CLK,需要将这个寄存器的相应区域置0(复位)。
例如下列程序:
do
{
UCSCTL7 &= ~(XT2OFFG + XT1LFOFFG + DCOFFG); // Clear XT2,XT1,DCO fault flags
SFRIFG1 &= ~OFIFG; // Clear fault flags
}while (SFRIFG1&OFIFG); // Test oscillator fault flag
* 2.7 SFRIE1 & SFRIFG1



*2.8 BAKCTL

LOCKBAK:在使用XT1CLK的时候,需要先将这一位置0来解锁XT1CLK的引脚。
while(BAKCTL & LOCKBAK) // Unlock XT1 pins
BAKCTL &= ~(LOCKBAK);
史海拾趣
|
AT89C51如何通过(USB-HOST)ISP1362读取U盘MP3数据 C程序 本人想利用AT89C51SND1C单片机读取U盘的数据。不知道怎么读取。。。请教高手指点一二,最好是C语言写的,我的编译器是Keil C … 查看全部问答> |
|
【MSP430共享】基于高温热裂解的SF6 环境监测系统设计 为了对作为绝缘气体广泛用于G I S( 气体绝缘全封闭组合电器)设备室等环境中的S F 6 气体实时监控,设计一套集S F 6 气体浓度、氧气含量、温度、湿度等参数为一体的S F 6 环境监测系统,阐述 目前广泛使用的几种S F 6 气体浓度检测方法的原理并对比 ...… 查看全部问答> |
|
MSP430 LaunchPad msp430g2553串口问题 MSP430 LaunchPad是TI新推出的一个超值开发板。这个开发板不但带有一个USB编程器,同时还有USB转TTL串口功能,对于调试非常方便。它不但可以调试LaunchPad的串口,还可以调试外部目标板的TTL串口(3.3V系统)。在需要调试别的系统的目标板上的TTL串 ...… 查看全部问答> |
|
本帖最后由 dontium 于 2015-1-23 12:40 编辑 在TI E2E社区中发现了几篇不错的文章,特意翻译过来分享给大家,其中Bruce Trump系列关于放大器有很好的见解,特此供大家参考。 摘要:虽然 Bode 图是一种很不错的分析工具,但是您可能还没有发现, ...… 查看全部问答> |
|
1、进入WEBENCh 在设计器里选择LED,输入电压情况 并 “开始 ” 2、设置结构、LED颜色等参数 3、推荐合适的芯片。优化情况功能筛选 4、点击最上选项卡中的仿真按钮,对设计结果进行仿真评估如下图 5、设计的最后结果,在这里你可以: 看BOM ...… 查看全部问答> |
|
各位好! 我们在对AD9361寄存器进行初始化配置过程中,出现247位寄存器指令读取失败的问题,导致初始化校准无法继续进行, 配置指令:{0x02,0x47,0x11}, //SPIRead   ...… 查看全部问答> |




