新聞中心

EEPW首頁 > 嵌入式系統(tǒng) > 設(shè)計應(yīng)用 > MSP430入門教程專題(五)——IO中斷檢測

MSP430入門教程專題(五)——IO中斷檢測

作者: 時間:2016-11-26 來源:網(wǎng)絡(luò) 收藏
MSP430入門教程專題(五)——IO中斷檢測

//MSP430F14-IO口中斷演示程序

//以下是結(jié)合MC430F14開發(fā)板來實現(xiàn)的按鍵檢處理程序?qū)嶒?
//設(shè)置P2.0為中斷口,通過對IO的下邊沿觸發(fā),使其中斷,并將板上的D2 LED取反.
//應(yīng)用目標(biāo)板: MC430F14x開發(fā)板

#include <msp430x14x.h>

void main(void)
{
WDTCTL = WDTPW + WDTHOLD;// 停止看門狗
P1DIR |= BIT1;// 設(shè)P1.1為輸出

P2IE |= BIT0;// P2.0中斷使能
P2IES |= BIT0;// P2.0 IO口邊沿中斷觸發(fā)模式,下邊沿有效
P2IFG &= ~BIT0;// P2.0 清IO中斷標(biāo)志位

_EINT();//開總中斷允許
LPM4;//進(jìn)入低功耗模式4,此時單片機(jī)功耗最低.
}

//*************************************************************************
// P2口中斷服務(wù)程序
#pragma vector=PORT2_VECTOR
__interrupt void Port_2(void)
{
P1OUT ^= BIT1;// P1.1取反
P2IFG &= ~0x01;// P2.0清除相應(yīng)中斷標(biāo)志位
}
//*************************************************************************
//使IO中斷時新手們要了解以下幾點:
//1- MSP430的IO中,只有P1,P2才有IO中斷功能.
//2- P1,P2每組IO是多源中斷源,P1IG0-P1IG7或P2IG0-P2IG7是共一個中斷源的,用戶可以
//通過查房方式來得到是那個IO產(chǎn)生了中斷.
//3- 改變P1IES或P2IES中的位可能會引起相應(yīng)中斷標(biāo)志位置位,與引腳電平有關(guān).
//PxIES.xPxIN.xPxIFG.x
//0->10不變
//0->11可能置位
//1->00可能置位
//1->01不變
//所以,改變P1IES或P2IES后,根據(jù)需要清除相關(guān)的PxIG.x位.
//4- PxIFG.x所有中斷標(biāo)志位在置位后是需要人為清除的.硬件不會自動清除該標(biāo)位.

本文引用地址:http://2s4d.com/article/201611/321918.htm


關(guān)鍵詞: MSP430入門教程IO中斷檢

評論


技術(shù)專區(qū)

關(guān)閉