日本黄色一级经典视频|伊人久久精品视频|亚洲黄色色周成人视频九九九|av免费网址黄色小短片|黄色Av无码亚洲成年人|亚洲1区2区3区无码|真人黄片免费观看|无码一级小说欧美日免费三级|日韩中文字幕91在线看|精品久久久无码中文字幕边打电话

當(dāng)前位置:首頁 > 單片機 > 單片機
[導(dǎo)讀]MSP430最大的特點是超低功耗,本次學(xué)習(xí)的是超低功耗模式下的IO操作。/******************************************************************************* 超低功耗頻率 1.5KHZ* P1.0有1/100的周期激活* 超低功耗的范

MSP430最大的特點是超低功耗,本次學(xué)習(xí)的是超低功耗模式下的IO操作。

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

* 超低功耗頻率 1.5KHZ

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

* 超低功耗的范例

* ACLK = VL0, MCLK = VLO/8 ~1.5kHz, SMCLK = n/a,主時鐘選擇超低功耗,超低頻率的內(nèi)部晶振的8分頻,

* VLO:Internal Very-Low-Power Low-Frequency Oscillator 內(nèi)部的超低功耗,低頻率振蕩器

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

* 選擇模式2

* IFG1:SFR interrupt flag 1(Special Function)

* INTERRUPT SOURCE:Oscillator fault 晶振錯誤標(biāo)志位

* INTERRUPT FLAG:OFIFG

* DCO:digitally controlled oscillator 數(shù)字信號控制的晶振

* 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都是狀態(tài)標(biāo)志位

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

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

#include //MSP430G2231頭文件

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

* Function name: main

* Descriptions: 主函數(shù)

* 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 ,低頻晶振選擇內(nèi)部的超低功耗,超低頻率晶振。

IFG1 &= ~OFIFG; // Clear OSCFault flag,清除晶振錯誤標(biāo)志位

__bis_SR_register(SCG1 + SCG0); // Stop DCO 禁止數(shù)控晶振

BCSCTL2 |= SELM_3 + DIVM_3; // MCLK = LFXT1/8 主時鐘源選擇LFXT1,分頻系數(shù)選擇8分頻。

P1DIR = 0xFF; // All P1.x outputs 所有的P1端口都設(shè)置為輸出

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

P2DIR = 0xFF; // All P2.x outputs 所有的P1端口都設(shè)置為輸出

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

for (;;) // 主循環(huán)

{

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 延時

}

}

本站聲明: 本文章由作者或相關(guān)機構(gòu)授權(quán)發(fā)布,目的在于傳遞更多信息,并不代表本站贊同其觀點,本站亦不保證或承諾內(nèi)容真實性等。需要轉(zhuǎn)載請聯(lián)系該專欄作者,如若文章內(nèi)容侵犯您的權(quán)益,請及時聯(lián)系本站刪除( 郵箱:macysun@21ic.com )。
換一批
延伸閱讀
關(guān)閉