/* p2_7.c Toggling LED in C references registers by addresses. * This program toggles red LED for 0.5 second ON and 0.5 second OFF. * The red LED is connected to P1.0. * The LEDs are high active (a '1' turns ON the LED). * * Tested with Keil 5.20 and MSP432 Device Family Pack V2.2.0. * * www.microDigitalEd.com */ #define P1_DIR (*((volatile unsigned char*)0x40004C04)) #define P1_OUT (*((volatile unsigned char*)0x40004C02)) void delayMs(int n); int main(void) { P1_DIR |= 1; /* P1.0 set as output */ while (1) { P1_OUT |= 1; /* turn on P1.0 red LED */ delayMs(500); P1_OUT &= ~1; /* turn off P1.0 red LED */ delayMs(500); } } /* delay milliseconds when system clock is at 3 MHz */ void delayMs(int n) { int i, j; for (j = 0; j < n; j++) for (i = 250; i > 0; i--); /* Delay 1 ms */ }