LPM4 current can be measured ; with the LED removed, all unused P1.x/P2.x configured as output or inputs ; pulled high or low, and ensure the P2.0 interrupt input does not float.. Dang ;
Trang 1; MSP430G2xx1 Demo - Software Port Interrupt on P1.4 from LPM4
;
; Description: A hi/low transition on P1.4 will trigger P1_ISR which,
; toggles P1.0 Normal mode is LPM4 ~ 0.1uA LPM4 current can be measured
; with the LED removed, all unused P1.x/P2.x configured as output or inputs
; pulled high or low, and ensure the P2.0 interrupt input does not float
; ACLK = n/a, MCLK = SMCLK = default DCO
;
; MSP430G2xx1
;
-; /|\|
XIN|-; | | |
; |RST
XOUT|-; /|\ | |
; o |P1.4 P1.0| >LED
; \|/
;
; D Dang
; Texas Instruments Inc
; October 2010
; Built with IAR Embedded Workbench Version: 5.10
;*******************************************************************************
#include "msp430g2231.h"
ORG 0F800h ; Program Reset
; -RESET mov.w #0280h,SP ; Initialize stackpointer
StopWDT mov.w #WDTPW+WDTHOLD,&WDTCTL ; Stop WDT
SetupPx bis.b #001h,&P1DIR ; P1.0 output
bis.b #010h,&P1IE ; P1.4 Interrupt enabled
bis.b #010h,&P1IES ; P1.4 hi/low edge
bic.b #010h,&P1IFG ; P1.4 IFG Cleared
;
Mainloop bis.w #LPM4+GIE,SR ; LPM4, enable interrupts
nop ; Required only for debugger
;
; -P1_ISR; Toggle P1.0 Output
xor.b #001h,&P1OUT ; P1.0 = toggle
bic.b #010h,&P1IFG ; P1.4 IFG Cleared
reti ; Return from ISR
;
; -; Interrupt Vectors
ORG 0FFFEh ; MSP430 RESET Vector
DW RESET ;
ORG 0FFE4h ; P1.x Vector
DW P1_ISR ;
END