李笑来登GitHub趋势榜第一缘由

文章来源:四平文学网  |  2020-04-06

MSP430G2:低功耗模式下的IO学习

MSP430最大的特点是超低功耗,本次学习的是超低功耗模式下的IO操作。

/**********************************************************

* 超低功耗频率 1.5KHZ

* P1.0有1/100的周期激活

* 超低功耗的范例

* ACLK = VL0, MCLK = VLO/8 ~1.5kHz, SMCLK = n/a,主时钟选择超低功耗,超低频率的内部晶振的8分频,

* VLO:Internal Very-Low-Power Low-Frequency Oscillator 内部的超低功耗,低频率振荡器

* BCSCTL3 是 Basic clock system control 3 ,Mode 2 for LFXT1

* 选择模式2

* IFG1:SFR interrupt flag 1(Special Function)

* INTERRUPT SOURCE:Oscillator fault 晶振错误标志位

* INTERRUPT FLAG:OFIFG

* DCO:digitally controlled oscillator 数字信号控制的晶振

* BCSCTL2 :Basic clock system control 2

* SELM_3:MCLK Source Select 3: LFXTCLK

* DIVM_3:MCLK Divider 3: /8 MCLK时钟8分频

* MCLK: Main clock 主时钟

* SCG1 + SCG0都是状态标志位

* LFXT1:Low Frequency XT1 (低频晶振1)

***************************************************************/

#include //MSP430G2231头文件

/**********************************************

* Function name: main

* Descriptions: 主函数

* input parameters: 无

* output parameters: 无

* Returned value: 无

* 超低功耗模式下的IO端口操作

**************************************************************/

void main(void)

{

volatile unsigned int i; // Volatile to prevent removal

WDTCTL = WDTPW + WDTHOLD; // Stop watchdog timer 禁止看门狗

BCSCTL3 |= LFXT1S_2; // LFXT1 = VLO ,低频晶振选择内部的超低功耗,超低频率晶振。

IFG1 &= ~OFIFG; // Clear OSCFault flag,清除晶振错误标志位

__bis_SR_register(SCG1 + SCG0); // Stop DCO 禁止数控晶振

BCSCTL2 |= SELM_3 + DIVM_3; // MCLK = LFXT1/8 主时钟源选择LFXT1,分频系数选择8分频。

P1DIR = 0xFF; // All P1.x outputs 所有的P1端口都设置为输出

P1OUT = 0; // All P1.x reset P1端口值都清零

P2DIR = 0xFF; // All P2.x outputs 所有的P1端口都设置为输出

P2OUT = 0; // All P2.x reset P2端口值都清零

for (;;) // 主循环

{

P1OUT |= 0x01; // P1.0 set P1.0置位

for (i = 10; i > 0; i--); // Delay 1x 延时

P1OUT &= ~0x01; // P1.0 reset P1.0清零

for (i = 1000; i > 0; i--); // Delay 100x 延时

}

}

小孩子不消化吃什么好宝宝脾虚怎么办小孩为何不爱吃饭郴州癫痫病医院

内蒙古男科医院

动脉粥样硬化严重可以吃通心络吗

希爱力和必利劲对比

怎么样缓解前列腺增生

小儿支气管炎吃什么药好

活络油是如何起作用
唐山治疗阴道炎医院
益母颗粒怎么喝
友情链接