关于msp430f149外部晶振和内部doc振荡器的问题
-
我之前用的是msp430g2553,它可以通过软件编程内部doc振荡器使系统时钟频率达到稳定16MHz,只需要使用两个语句DCOCTL=CALDCO_16MHZ;BCSCTL1=CALBC1_16MHZ;现在我想换成msp430f149,在... 我之前用的是msp430g2553,它可以通过软件编程内部doc振荡器使系统时钟频率达到稳定16MHz,只需要使用两个语句 DCOCTL=CALDCO_16MHZ; BCSCTL1=CALBC1_16MHZ; 现在我想换成msp430f149,在网上找到的示例程序里面基本都是使用外部高频晶振,而且都是8MHz,请问: (1)可不可以使用更高频率的外部晶振?如果可以,Z高能到多少? (2)可不可以像g2553一样用软件编写内部DCO振荡器?如果可以,应该怎么写语句? 希望有识之士能帮忙解答一下,感激不尽~ 展开
全部评论(1条)
-
- zhangqi0929 2017-09-25 00:00:00
- 不可以使用更高频率的外部晶振 可以像用软件编写内部DCO振荡器 分频可以 例如BCSCTL2 |= SELM_3; //主时钟8分频 MSP430 频率(时钟)配置 MSP430时钟: 1、在MSP430单片机中一共有四个时钟源: (1)LFXT1CLK,为低速/高速晶振源,通常接32.768kHz晶振 (2)XT2CLK,可选高频振荡器,外接标准高速晶振,通常是接8Mhz,也可以接400kHz~16Mhz; (3)DCOCLK,数控振荡器,为内部时钟,由RC震荡回路构成,受温度和电压的影响较大;若外部不接稳定的晶振电路,直接由内部时钟工作,则会因环境变化而导致性能不稳定。 (4)VLOCLK,内部低频振荡器,12kHz标准振荡器。(要得到标准的12k则必须外接32768等晶振) 2、在MSP430单片机内部一共有三个时钟系统: (1)ACLK:辅助时钟,通常由LFXT1CLK或VLOCLK作为时钟源,可以通过软件控制更改时钟的分频系数; (2)MCLK:主时钟,为系统内核提供时钟,它可以通过软件从四个时钟源选择或者从四个时钟源分频后选择为主时钟; (3)SMCLK:子时钟,也是可以由软件选择时钟源。 3、MSP430的时钟设置包括3个寄存器,DCOCTL、BCSCTL1、BCSCTL2、BCSCTL3 DCOCTL,DCO控制寄存器,地址为56H,初始值为60H DCO2 DCO1 DCO0 MOD4 MOD3 MOD2 MOD1 MOD0 DCO0~DCO2: DCO Select Bit,定义了8种频率之一,而频率由注入直流发生器的电流定义。 MOD0~MOD4: Modulation Bit,频率的微调。 一般不需要DCO的场合保持默认初始值就行了。 BCSCTL1,地址为57H,初始值为84H XT2OFF XTS DIVA1 DIVA0 XT5V RSEL2 RSEL1 RSEL0 RSEL0~RSEL2: 选择某个内部电阻以决定标称频率.0Z低,7Z高。 XT5V: 1. DIVA0~DIVA1:选择ACLK的分频系数。DIVA=0,1,2,3,ACLK的分频系数分别是1,2,4,8; XTS: 选择LFXT1工作在低频晶体模式(XTS=0)还是高频晶体模式(XTS=1)。 XT2OFF: 控制XT2振荡器的开启(XT2OFF=0)与关闭(XT2OFF=1)。 正常情况下把XT2OFF复位就可以了. BCSCTL2,地址为58H,初始值为00H SEM1 SELM0 DIVM1 DIVM0 SELS DIVS1 DIVS0 DCOR DCOR: 0,选择内部电阻;1,选择外部电阻 DIVS0~DIVS1: DIVS=0,1,2,3对应SMCLK的分频因子为1,2,4,8 SELS: 选择SMCLK的时钟源, 0:DCOCLK; 1:XT2CLK/LFXTCLK. DIVM0~1: 选择MCLK的分频因子, DIVM=0,1,2,3对应分频因子为1,2,4,8. SELM0~1: 选择MCLK的时钟源, 0,1:DCOCLK, 2:XT2CLK, 3:LFXT1CLK 我用的时候一般都把SMCLK与MCLK的时钟源选择为XT2。 其它: 1. LFXT1: 一次有效的PUC信号将使OSCOFF复位,允许LFXT1工作,如果LFXT1信号没有用作SMCLK或MCLK,可软件置OSCOFF关闭LFXT1. 2. XT2: XT2产生XT2CLK时钟信号,如果XT2CLK信号没有用作时钟MCLK和SMCLK,可以通过置XT2OFF关闭XT2,PUC信号后置XT2OFF,即XT2的关闭的。 3. DCO振荡器:振荡器失效时,DCO振荡器会自动被选做MCLK的时钟源。如果DCO信号没有用作SMCLK和MCLK时钟信号时,可置SCG0位关闭DCO直流发生器。 4. 在PUC信号后,由DCOCLK作MCLK的时钟信号,根据需要可将MCLK的时钟源另外设置为LFXT1或XT2,设置顺序如下: (1)清OSCOFF/XT2 (2)清OFIFG (3)延时等待至少50uS (4)再次检查OFIFG,如果仍置位,则重复(1)-(4)步,直到OFIFG=0为止。 (5)设置BCSCTL2的相应SELM。 实例分析 1、CPU运行在VLO时钟下: 这是Z慢的时钟,在约12千赫兹下运行。因此,我们将通过可视化的LED闪烁的红色慢慢地在约每3秒钟率。我们可以让时钟系统默认这种状态,设置专门来操作VLO。我们将不使用任何ALCK外设时钟在此实验室工作,但你应该认识到,ACLK来自VLO时钟。 #include<msp430g2131.h> /*---------------------------------------------------------------------------------------------*/ Void main() { WDTCTL = WDTPW + WDTHOLD; // 关闭看门狗定时器 BCSCTL1 |= XT2OFF; //XT2关闭 ACLK=32768hz DCO为默认值约800k BCSCTL3 |= LFXT1S_2; // LFXT1 = VLO =12khz(大约) // BCSCTL3 |= LFXT1S_0; // LFXT1 = 32.768khz (大约) IE1 &= ~OFIE; //清除时钟错误中断 IFG1 &= ~OFIFG; // Clear OSCFault flag BCSCTL2 |= SELM_3+SELS;// mclk时钟源为LFXT1CLK,smclk=LFXT1CLK=32768hz // BCSCTL2 |= SELM_0+SELS; // mclk时钟源为DCOCLK,smclk=LFXT1CLK=32768hz __delay_cycles(1000); //小延时等待振荡稳定 P1DIR=BIT0; //P1.0配置输出 P1OUT=BIT0; //P1.0输出高电平 While() { P1OUT^= BIT0; //P1.0电平反转; _delay_cycles(100000); } } /*---------------------------------------------------------------------------------------------*/
-
赞(6)
回复(0)
热门问答
- 关于msp430f149外部晶振和内部doc振荡器的问题
- 我之前用的是msp430g2553,它可以通过软件编程内部doc振荡器使系统时钟频率达到稳定16MHz,只需要使用两个语句DCOCTL=CALDCO_16MHZ;BCSCTL1=CALBC1_16MHZ;现在我想换成msp430f149,在... 我之前用的是msp430g2553,它可以通过软件编程内部doc振荡器使系统时钟频率达到稳定16MHz,只需要使用两个语句 DCOCTL=CALDCO_16MHZ; BCSCTL1=CALBC1_16MHZ; 现在我想换成msp430f149,在网上找到的示例程序里面基本都是使用外部高频晶振,而且都是8MHz,请问: (1)可不可以使用更高频率的外部晶振?如果可以,Z高能到多少? (2)可不可以像g2553一样用软件编写内部DCO振荡器?如果可以,应该怎么写语句? 希望有识之士能帮忙解答一下,感激不尽~ 展开
2017-09-24 16:30:04
484
1
- 晶振和振荡器的关系?
- 据说在很多芯片(80C51、CC2530等)使用时,都是外部接有晶振,然后跟内部的放大器什么的构成振荡器......麻烦高手过来说清楚一点,振荡器跟晶振到底是什么关系?... 据说在很多芯片(80C51、CC2530等)使用时,都是外部接有晶振,然后跟内部的放大器什么的构成振荡器......麻烦高手过来说清楚一点,振荡器跟晶振到底是什么关系? 展开
2015-08-14 16:49:00
656
3
- 晶振和振荡器的关系是什么?
2018-02-03 05:41:33
821
1
- 振荡器就是晶振吗
2012-11-26 14:27:14
292
2
- 单片机 内部 有 OSC (振荡器) 为什么还可以 接 晶振?
- 就是说单片机内部已有振荡器也就有谐振器难道两个谐振器可以并联吗?(内部的一个和外部的晶振谐振器)... 就是说单片机内部已有振荡器 也就有谐振器 难道两个谐振器可以并联吗?(内部的一个和外部的晶振谐振器) 展开
2010-11-20 20:50:24
546
4
- C8051F020 怎么使能外部晶振
2011-07-13 03:25:40
285
2
- STM32使用内部振荡器及其和外部晶体振荡器的区别
2018-04-04 13:43:57
286
1
- 振荡器频率和晶振频率有什么关系吗
2014-10-17 09:42:25
587
2
- 做一个由555电路和晶振构成的振荡器
- 由于555多谢振荡器的稳定度不是很高,所以希望在电路中使用晶振稳定频率输出。对占空比要求不高,但是希望上升沿间能有稳定的时间间隔。如果能给出电路工作原理更好,谢谢... 由于555多谢振荡器的稳定度不是很高,所以希望在电路中使用晶振稳定频率输出。对占空比要求不高,但是希望上升沿间能有稳定的时间间隔。 如果能给出电路工作原理更好,谢谢 展开
2009-11-14 03:04:04
495
2
- 晶振、振荡器、定时控制电路三者的关系
- 单片机原理书上说,单片机的基本组成之一,微处理器CPU包括控制器和运算器,而控制器又包括程序计数器、指令寄存器、指令译码器、振荡器和定时控制电路。这里的振荡器和定时控制电路二... 单片机原理书上说,单片机的基本组成之一,微处理器CPU包括控制器和运算器,而控制器又包括程序计数器、指令寄存器、指令译码器、振荡器和定时控制电路。 这里的振荡器和定时控制电路二者,是不是就构成了常说的晶振?还是晶振是振荡器的一种,那定时控制电路是干嘛用的? 求详细解释 展开
2016-02-16 11:59:46
593
1
- 晶振和钟振的區別
2014-07-30 13:12:07
493
3
- 什么是RC振荡器?与晶振有什么区别
2016-12-01 02:50:13
366
1
- 晶振如何起振
2014-04-07 01:18:39
504
3
- 关于Gel Doc XR+凝胶成像系统的额定功率的问题
- 有谁知道Gel Doc XR+凝胶成像系统的额定功率的吗?急急急,谢谢
2018-12-04 05:54:05
532
0
- 电子天平的内部和外部矫正是什么意思
2015-10-02 19:50:07
383
2
- 什么是外部光电效应和内部光电效应?
2016-12-01 14:59:01
493
1
- 关于multisim仿真振荡器的问题
- 您好,麻烦您帮我看看这个电路图,我在Multisim上仿真就是出不来波形,到底是怎么回事?找了一晚上就是找不到问题所在,麻烦您了... 您好,麻烦您 帮我看看这个电路图,我在Multisim上仿真就是出不来波形,到底是怎么回事?找了一晚上就是找不到问题所在,麻烦您了 展开
2016-05-19 13:01:35
564
2
- 晶振和谐振器分别是什么
2012-05-16 01:42:51
473
3
- 晶振内部电路(或陶瓷片)的谐振频率如何推导的?
- 有俩个谐振一个是串联谐振:这个我懂了另一个并联谐振(到底是如何推导?):一直很困惑,到底是如何推导出来,居然求电路总电容是俩个电容串联公式来得出... 有俩个谐振 一个是串联谐振:这个我懂了 另一个并联谐振(到底是如何推导?):一直很困惑,到底是如何推导出来,居然求电路总电容是俩个电容串联公式来得出 展开
2016-11-30 08:15:30
679
2
1月突出贡献榜
推荐主页
最新话题
-
- #八一建军节——科技铸盾,仪器护航#
- 如何选择到合适的磷青铜绞线?磷青铜绞线的质量...如何选择到合适的磷青铜绞线?磷青铜绞线的质量解析和如何选择到合适的绞线?磷青铜绞线是一种特殊的铜合金导线,由铜、锡和磷等元素组成,具有很好的机械性能、电气性能和耐腐蚀性。磷青铜绞线基本定义与特性:磷青铜是铜与锡、磷的合金,质地坚硬,可制弹簧。典型成分为铜(90%)、锡(6-9%)及磷(0.03-0.6%)锡元素提升合金的强度和耐腐蚀性,磷则细化晶粒、增强耐磨性铸造性能。耐磨性:表面氧化层使其在特殊环境下耐腐蚀,使用寿命长导电性:保持铜很好导电性能的同时有化电子传输路径非铁磁性:不含铁元素,避免在强磁场环境中产生额外能量损耗弹性:受到外力作用时能迅速恢复原状
- 八一建军节 铁血铸军魂













参与评论
登录后参与评论