历史上的今天
返回首页

历史上的今天

今天是:2025年01月05日(星期日)

正在发生

2021年01月05日 | MSP430F5529 工作时钟提升到25MHZ

2021-01-05 来源:eefocus

使用


void main(void)

{

WDTCTL = WDTPW | WDTHOLD; // Stop watchdog timer

initClock();

while(1);

}


#include "sys.h"


void SetVcoreUp(unsigned int level)

{

    // Open PMM registers for write

    PMMCTL0_H = PMMPW_H;

    // Set SVS/SVM high side new level

    SVSMHCTL = SVSHE + SVSHRVL0 * level + SVMHE + SVSMHRRL0 * level;

    // Set SVM low side to new level

    SVSMLCTL = SVSLE + SVMLE + SVSMLRRL0 * level;

    // Wait till SVM is settled

    while ((PMMIFG & SVSMLDLYIFG) == 0)

        ;

    // Clear already set flags

    PMMIFG &= ~(SVMLVLRIFG + SVMLIFG);

    // Set VCore to new level

    PMMCTL0_L = PMMCOREV0 * level;

    // Wait till new level reached

    if ((PMMIFG & SVMLIFG))

        while ((PMMIFG & SVMLVLRIFG) == 0)

            ;

    // Set SVS/SVM low side to new level

    SVSMLCTL = SVSLE + SVSLRVL0 * level + SVMLE + SVSMLRRL0 * level;

    // Lock PMM registers for write access

    PMMCTL0_H = 0x00;

}


void initClock(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_0 + 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


}


推荐阅读

史海拾趣

Data Delay Devices公司的发展小趣事

在竞争激烈的电子行业中,质量管理是企业生存和发展的关键。DDD公司高度重视产品质量管理,建立了完善的质量管理体系和检测机制。公司从原材料采购、生产过程到成品检验都实行严格的质量控制,确保每一件产品都符合客户的要求和行业标准。这种对质量的执着追求使得DDD公司的产品在市场上赢得了良好的口碑和信誉。

E-San Electronic Co Ltd公司的发展小趣事

随着全球环保意识的提高和可持续发展的呼声日益高涨,E-San Electronic Co Ltd积极响应这一趋势,将环保和可持续发展理念融入企业的日常运营中。公司采用环保材料和节能技术生产电子产品,减少了对环境的污染和资源的浪费。同时,公司还积极参与各种环保公益活动和社会责任项目,为社会做出了积极的贡献。这些举措不仅提升了企业的社会形象和声誉,也为企业赢得了更多消费者的信任和支持。

ABECO公司的发展小趣事

在1950年代的英国,ABECO的创始人凭借对电子行业的热爱和对手工工具的独特见解,开始了他的创业之路。初创时期,资金匮乏,人员稀少,但创始人凭借着对品质的执着和对创新的追求,不断研发出满足市场需求的高质量工具。他亲自走访客户,了解需求,不断完善产品,逐渐在电子行业中树立起了良好的口碑。

倍思特(BEST)公司的发展小趣事

随着全球化进程的加速推进,ABECO开始实施全球化战略。公司积极开拓国际市场,参加各类国际展会和论坛,与全球客户建立联系。同时,公司还加强与国际同行的交流与合作,引进先进的技术和管理经验。通过不断的努力,ABECO逐渐在全球电子行业中树立起了自己的品牌形象,成为了一家具有影响力的跨国公司。


请注意,上述故事是基于已知信息进行的虚构创作,并不代表ABECO公司的真实发展历程。如果您需要更详细和准确的信息,建议直接联系ABECO公司或查阅相关文献资料。

Altech公司的发展小趣事

随着全球对可再生能源的日益关注,风电行业得到了迅速发展。Altech公司紧跟时代步伐,投入大量资源研发铝合金风电线导体。这种新型导体材料不仅具有优异的导电性能,还具备出色的耐候性和抗腐蚀性,极大地提高了风电设备的运行效率和稳定性。

BTCPower公司的发展小趣事

BTCPower公司自成立以来,一直致力于研发高效能、低能耗的电源管理芯片。经过数年的努力,公司成功开发出了一款具有革命性的芯片,能够在保证性能的同时,显著降低电子设备的能耗。这一技术突破迅速吸引了市场的关注,BTCPower的产品开始被广泛应用于智能手机、平板电脑等消费电子产品中,公司因此获得了巨大的商业成功。

问答坊 | AI 解惑

请问谁有labview8.2的安装软件啊?

如题,请问谁有labview8.2的安装软件啊?我刚开始学,网上看到的下载网址都打不开,谁有的给我共享一下,谢谢。…

查看全部问答>

招募精英

本公司现招募以下职位,有意者请将个人简历发往 qianleicherry@hotmail.com 软件工程师 职位描述: 1、负责IPTV/DVB驱动软件开发 2、负责IPTV/DVB相关中间件集成 3、负责IPTV/DVB样机调试和测试 4、负责软件相关文档编写 职位要求: 1、本 ...…

查看全部问答>

求 Windows Driver Model 的源代码

Windows Driver Model 的源代码 站内有这个资源,但是我这边下不动,谁发一份到我的邮箱ch609@163.com,谢谢先 …

查看全部问答>

sd驱动问题求解~

我的系统和平台是wince5.0 + 2416 问题:在进入wince的设备里面后,插入sd卡,系统下很快就会显示出sd的盘符,sd的访问也很正常,可是在拔除sd卡的时候,sd卡的盘符要5~6秒才能消失,不知道这个是什么原因。 希望有经验的xdjm们赐教!…

查看全部问答>

空调语音解决方案

本帖最后由 jameswangsynnex 于 2015-3-3 19:58 编辑 空调语音解决方案 空调是我们每个人都不可缺少的生活用品,在竞争激烈的今天,怎样做出一款更适应市场的好空调,则是每个厂商苦恼的问题,更新和创新是一个企业发展和生存的源泉动力,市面 ...…

查看全部问答>

stm32f103+ucosII2.88运行一段时间后死机

最近在stm32f103VE上跑官方移植的ucosII2.88 ,刚开始运行的时候,系统一切正常,各个任务正常调度,大概可以持续5~7小时。但是>14小时连续运行之后,系统就不正常了,现象是:各个中断可以正常进入(通过观察led),但是有些任务已经不运行了 ...…

查看全部问答>

107USB OTG硬件问题

我的107 USB OTG自己开发的,请问各位硬件电路需要什么特别注意的地方吗?板子已经开回来了,USB的V_Bus供电没问题,但是D+,D-,还有ID上面的电压依次是3.7V,1.7V,1.7V,理论上正确的电压好像不是这样的,我打了其他正常的电压,D+,D-,ID上的电 ...…

查看全部问答>

《MSP430系列常用模块应用原理》 入门不难

买板送的资料,里面详细介绍寄存器的每位,类似于51,avr和stm32的资料,配合149的中文头文件看,入门不难。请看下面几行,有个印象再看配合看电子书和149的中文头文件。   int main(void) {       WDTCTL = WDT ...…

查看全部问答>

请教各位一个问题,关于放大电路的Q点

请看图片,我问的问题跟差分放大没什么关系了,我是看到这里才想到了这个问题。主要问题是关于戴维南定理等效出来的Vcc’和Rc’。1.红色箭头是我标注的电流方向。如果等效电阻是Rc和RL并联的话,那么电流只能这么流吧,可是这样不合理啊,RL上的电 ...…

查看全部问答>

常见三防漆固化后的去除方法

三防漆固化后的线路板还有可能会返修,这就需要把漆膜去除掉,然后才能更换元件。这里列举几种常见三防漆的去除方法。         一,加热法,不到万不得已不建议采用此方法。加热法的具体操作是,一般采用 ...…

查看全部问答>