X
首页
技术
模拟电子
单片机
半导体
电源管理
嵌入式
传感器
最能打国产芯
应用
汽车电子
工业控制
家用电子
手机便携
安防电子
医疗电子
网络通信
测试测量
物联网
最能打国产芯
大学堂
首页
直播
专题
TI 培训
论坛
汽车电子
国产芯片
电机驱动控制
电源技术
单片机
模拟电子
PCB设计
电子竞赛
DIY/开源
嵌入式系统
医疗电子
颁奖专区
【厂商专区】
【电子技术】
【创意与实践】
【行业应用】
【休息一下】
最能打国产芯
活动中心
直播
发现活动
颁奖区
电子头条
参考设计
下载中心
分类资源
文集
排行榜
电路图
Datasheet
最能打国产芯
微控制器 MCU
[求助] MSP430F5438的DCO怎么设置
dageliu
2015-6-17 10:19
楼主
DCO怎么设置,怎么知道频率是多少
点赞
回复评论 (4)
沙发
LeoMe
void SetVcoreUp (unsigned int level)
{
PMMCTL0_H = PMMPW_H; /* Open PMM registers for write */
SVSMHCTL = SVSHE + SVSHRVL0 * level + SVMHE + SVSMHRRL0 * level; /* Set SVS/SVM high side new level */
SVSMLCTL = SVSLE + SVMLE + SVSMLRRL0 * level; /* Set SVM low side to new level */
while ((PMMIFG & SVSMLDLYIFG) == 0); /* Wait till SVM is settled */
PMMIFG &= ~(SVMLVLRIFG + SVMLIFG); /* Clear already set flags */
PMMCTL0_L = PMMCOREV0 * level; /* Set VCore to new level */
if ((PMMIFG & SVMLIFG)) /* Wait till new level reached */
while ((PMMIFG & SVMLVLRIFG) == 0);
SVSMLCTL = SVSLE + SVSLRVL0 * level + SVMLE + SVSMLRRL0 * level; /* Set SVS/SVM low side to new level */
PMMCTL0_H = 0x00; /* Lock PMM registers for write access */
}
void UcsInit (void)
{
// Increase Vcore setting to level3 to support fsystem=25MHz
// NOTE: Change core voltage one level at a time..
SetVcoreUp (0x01);
SetVcoreUp (0x02);
SetVcoreUp (0x03);
UCSCTL3 = SELREF_2; // Set DCO FLL reference = REFO
UCSCTL4 |= SELA_2; // Set ACLK = REFO
__bis_SR_register(SCG0); // Disable the FLL control loop
UCSCTL0 = 0x0000; // Set lowest possible DCOx, MODx
UCSCTL1 = DCORSEL_7; // Select DCO range 50MHz operation
UCSCTL2 = FLLD_1 + 762; // Set DCO Multiplier for 25MHz
// (N + 1) * FLLRef = Fdco
// (762 + 1) * 32768 = 25MHz
// Set FLL Div = fDCOCLK/2
__bic_SR_register(SCG0); // Enable the FLL control loop
// Worst-case settling time for the DCO when the DCO range bits have been
// changed is n x 32 x 32 x f_MCLK / f_FLL_reference. See UCS chapter in 5xx
// UG for optimization.
// 32 x 32 x 25 MHz / 32,768 Hz ~ 780k MCLK cycles for DCO to settle
__delay_cycles(782000);
// Loop until XT1,XT2 & DCO stabilizes - In this case only DCO has to stabilize
do
{
UCSCTL7 &= ~(XT2OFFG + XT1LFOFFG + DCOFFG);// Clear XT2,XT1,DCO fault flags
SFRIFG1 &= ~OFIFG; // Clear fault flags
}while (SFRIFG1&OFIFG); // Test oscillator fault flag
}
官方给的一段程序,5438的DCO需要先升内核电压,然后设置DCO频率
UcsInit();//提高内核电压,DCO 25MHz
UCSCTL4|=SELM__DCOCLK+SELS__DCOCLK;//MCLK选择DCO 25MHz SMCLK选择DCO 25MHz
在程序里调用一下
点赞
2015-6-17 14:08
板凳
数码小叶
430F5438的DCO确实复杂点,带FLL功能,不过看描述,控制方法没多大区别,就是输出的时钟选择更多了
点赞
2015-6-17 14:38
4楼
数码小叶
ccs刚装完,居然要更新,打不开例程
点赞
2015-6-17 14:44
5楼
dageliu
引用:
LeoMe 发表于 2015-6-17 14:08
官方给的一段程序,5438的DCO需要先升内核电压,然后设置DCO频率
在程序里调用一下
如果都是默认的呢,就是不初始化
点赞
2015-6-18 11:54
最新活动
报名直播赢【双肩包、京东卡、水杯】| 高可靠性IGBT的新选择——安世半导体650V IGBT
30套RV1106 Linux开发板(带摄像头),邀您动手挑战边缘AI~
安世半导体理想二极管与负载开关,保障物联网应用的稳健高效运行
免费申请 | 上百份MPS MIE模块,免费试用还有礼!
PI 电源小课堂|无 DC-DC 变换实现多路高精度输出反激电源
2024 瑞萨电子MCU/MPU工业技术研讨会——深圳、上海站, 火热报名中
随便看看
关于驱动2次安装问题
全通滤波器
【智能厨房】环境传感器PCB设计
由5G WIFI模块中的PA引出的一系列问题
有没有免费的quartus II ip core??
求助各位大神,这个电路有什么问题
AD7705的DRDY一直是高电平是什么原因?
五、USART0的printf实现和DMA实现
【TI视频】基于TMS320F2812 DSP的方向盘电机控制系统
驱动程序改I/O APIC重定向表
开始搞搞Qsys
现场测试宝马车的压力传感器
EDGE手机的无线电设计考量
拉电流和灌电流 求助!!!
电路的稳定性
23都选还是只选3??? 99SE拼版的时候 小弟着急
最近开始搞WinCE 下的开发 . 不知道使用什么开发工具比较好!
在用JT-LINK仿真调试程序时,调了刚几分钟后出现找不到CORTEX-M的提示,是什么原因
Stellaris是什么东东
FFT结果出错
电子工程世界版权所有
京B2-20211791
京ICP备10001474号-1
京公网安备 11010802033920号
回复
写回复
收藏
回复