RTOS_MSPM0  1.1
ECE445M starter code
Macros | Functions
LaunchPad.h File Reference

Initialize LaunchPad switches and LEDs. More...

#include <stdint.h>

Go to the source code of this file.

Macros

#define RED1   1
 RED1 is a constant to select red LED1 on Port A, PA0.
 
#define BLUE   (1<<22)
 BLUE is a constant to select blue LED2 on Port B, PB22.
 
#define RED   (1<<26)
 RED is a constant to select red LED2 on Port B, PB26.
 
#define GREEN   (1<<27)
 GREEN is a constant to select green LED2 on Port B, PB27.
 
#define S1   (1<<18)
 S1 is a constant to select switch S1 on Port A, PA18.
 
#define S2   (1<<21)
 S2 is a constant to select switch S2 on Port B, PB21.
 
#define PA0INDEX   0
 The following constants are used to index into the PINCM table.
 
#define PA1INDEX   1
 
#define PA2INDEX   6
 
#define PA3INDEX   7
 
#define PA4INDEX   8
 
#define PA5INDEX   9
 
#define PA6INDEX   10
 
#define PA7INDEX   13
 
#define PA8INDEX   18
 
#define PA9INDEX   19
 
#define PA10INDEX   20
 
#define PA11INDEX   21
 
#define PA12INDEX   33
 
#define PA13INDEX   34
 
#define PA14INDEX   35
 
#define PA15INDEX   36
 
#define PA16INDEX   37
 
#define PA17INDEX   38
 
#define PA18INDEX   39
 
#define PA19INDEX   40
 
#define PA20INDEX   41
 
#define PA21INDEX   45
 
#define PA22INDEX   46
 
#define PA23INDEX   52
 
#define PA24INDEX   53
 
#define PA25INDEX   54
 
#define PA26INDEX   58
 
#define PA27INDEX   59
 
#define PA28INDEX   2
 
#define PA29INDEX   3
 
#define PA30INDEX   4
 
#define PA31INDEX   5
 
#define PB0INDEX   11
 
#define PB1INDEX   12
 
#define PB2INDEX   14
 
#define PB3INDEX   15
 
#define PB4INDEX   16
 
#define PB5INDEX   17
 
#define PB6INDEX   22
 
#define PB7INDEX   23
 
#define PB8INDEX   24
 
#define PB9INDEX   25
 
#define PB10INDEX   26
 
#define PB11INDEX   27
 
#define PB12INDEX   28
 
#define PB13INDEX   29
 
#define PB14INDEX   30
 
#define PB15INDEX   31
 
#define PB16INDEX   32
 
#define PB17INDEX   42
 
#define PB18INDEX   43
 
#define PB19INDEX   44
 
#define PB20INDEX   47
 
#define PB21INDEX   48
 
#define PB22INDEX   49
 
#define PB23INDEX   50
 
#define PB24INDEX   51
 
#define PB25INDEX   55
 
#define PB26INDEX   56
 
#define PB27INDEX   57
 

Functions

void LaunchPad_Init (void)
 Initialize LaunchPad. More...
 
uint32_t LaunchPad_InS1 (void)
 Input S1. More...
 
uint32_t LaunchPad_InS2 (void)
 Input S2. More...
 
void LaunchPad_LED1 (uint32_t led)
 Output to LED1. More...
 
void LaunchPad_LED1on (void)
 Turn on LED1. More...
 
void LaunchPad_LED1off (void)
 Turn off LED1. More...
 
void LaunchPad_LED (uint32_t led)
 Output to LED. More...
 
void LaunchPad_LEDwhite (void)
 Make LED white. More...
 
void LaunchPad_LEDoff (void)
 Turn off LED. More...
 

Detailed Description

Initialize LaunchPad switches and LEDs.

MSPM0G3507 LaunchPad Development Kit (LP-MSPM0G3507)
For more information see
https://www.ti.com/product/LP-MSPM0G3507/part-details/LP-MSPM0G3507

The following is a simplified circuit diagram

Version
ECE319K v1.2
Author
Daniel Valvano and Jonathan Valvano
Warning
AS-IS
Note
For more information see http://users.ece.utexas.edu/~valvano/
Date
November 3, 2025
Pins on the MSPM0G3507 LaunchPad
Pin GPIOHardware
PA0 outputRED LED1, index 0 in IOMUX PINCM table, negative logic
PB22outputBLUE LED2, index 49 in IOMUX PINCM table
PB26outputRED LED2, index 56 in IOMUX PINCM table
PB27outputGREEN LED2, index 57 in IOMUX PINCM table
PA18input S1 positive logic switch, index 39 in IOMUX PINCM table
PB21input

S2 negative logic switch, index 48 in IOMUX PINCM table

Mode=0 selects the GPIO pin
PINCM Mode values for the MSPM0G3507
NameValueMode=2Mode=3Mode=4Mode=5Mode=6Mode=7Mode=8Mode=9
PA0INDEX0UART0_TXI2C0_SDATIMA0_C0TIMA_FAL1TIMG8_C1FCC_IN
PA1INDEX1UART0_RXI2C0_SCLTIMA0_C1TIMA_FAL2TIMG8_IDXTIMG8_C0
PA2INDEX6TIMG8_C1SPI0_CS0TIMG7_C1SPI1_CS0
PA3INDEX7TIMG8_C0SPI0_CS1UART2_CTSTIMA0_C2COMP1_OUTTIMG7_C0TIMA0_C1I2C1_SDA
PA4INDEX8TIMG8_C1SPI0_POCIUART2_RTSTIMA0_C3LFCLK_INTIMG7_C1TIMA0_C1NI2C1_SCL
PA5INDEX9TIMG8_C0SPI0_PICOTIMA_FAL1TIMG0_C0TIMG6_C0FCC_IN
PA6INDEX10TTIMG8_C1SPI0_SCKTIMA_FAL0TIMG0_C1HFCLK_INTIMG6_C1TIMA0_C2N
PA7INDEX13COMP0_OUTCLK_OUTTIMG8_C0TIMA0_C2TIMG8_IDXTIMG7_C1TIMA0_C1
PA8INDEX18UART1_TXSPI0_CS0UART0_RTSTIMA0_C0TIMA1_C0N
PA9INDEX19UART1_RXSPI0_PICOUART0_CTSTIMA0_C1RTC_OUTTIMA0_C0NTIMA1_C1NCLK_OUT
PA10INDEX20UART0_TXSPI0_POCII2C0_SDATIMA1_C0TIMG12_C0TIMA0_C2I2C1_SDACLK_OUT
PA11INDEX21UART0_RXSPI0_SCKI2C0_SCLTIMA1_C1COMP0_OUTTIMA0_C2NI2C1_SCL
PA12INDEX33UART3_CTSSPI0_SCKTIMG0_C0CAN_TXTIMA0_C3FCC_IN
PA13INDEX34UART3_RTSSPI0_POCIUART3_RXTIMG0_C1CAN_RXTIMA0_C3N
PA14INDEX35UART0_CTSSPI0_PICOUART3_TXTIMG12_C0CLK_OUT
PA15INDEX36UART0_RTSSPI1_CS2I2C1_SCLTIMA1_C0TIMG8_IDXTIMA1_C0NTIMA0_C2
PA16INDEX37COMP2_OUTSPI1_POCII2C1_SDATIMA1_C1TIMA1_C1NTIMA0_C2NFCC_IN
PA17INDEX38UART1_TXSPI1_SCKI2C1_SCLTIMA0_C3TIMG7_C0TIMA1_C0
PA18INDEX39UART1_RXSPI1_PICOI2C1_SDATIMA0_C3NTIMG7_C1TIMA1_C1
PA19INDEX40SWDIO
PA20INDEX41SWCLK
PA21INDEX45UART2_TXTIMG8_C0UART1_CTSTIMA0_C0TIMG6_C0
PA22INDEX46UART2_RXTIMG8_C1UART1_RTSTIMA0_C1CLK_OUTTIMA0_C0NTIMG6_C1
PA23INDEX52UART2_TXSPI0_CS3TIMA0_C3TIMG0_C0UART3_CTSTIMG7_C0TIMG8_C0
PA24INDEX53UART2_RXSPI0_CS2TIMA0_C3NTIMG0_C1UART3_RTSTIMG7_C1TIMA1_C1
PA25INDEX54UART3_RXSPI1_CS3TIMG12_C1TIMA0_C3TIMA0_C1N
PA26INDEX58UART3_TXSPI1_CS0TIMG8_C0TIMA_FAL0CAN_TXTIMG7_C0
PA27INDEX59RTC_OUTSPI1_CS1TIMG8_C1TIMA_FAL2CAN_RXTIMG7_C1
PA28INDEX2UART0_TXI2C0_SDATIMA0_C3TIMA_FAL0TIMG7_C0TIMA1_C0
PA29INDEX3I2C1_SCLUART2_RTSTIMG8_C0TIMG6_C0
PA30INDEX4I2C1_SDAUART2_CTSTIMG8_C1TIMG6_C1
PA31INDEX5UART0_RXI2C0_SCLTIMA0_C3NTIMG12_C1CLK_OUTTIMG7_C1TIMA1_C1
PB0INDEX11UART0_TXSPI1_CS2TIMA1_C0TIMA0_C2
PB1INDEX12UART0_RXSPI1_CS3TIMA1_C1TIMA0_C2N
PB2INDEX14UART3_TXUART2_CTSI2C1_SCLTIMA0_C3UART1_CTSTIMG6_C0TIMA1_C0
PB3INDEX15UART3_RXUART2_RTSI2C1_SDATIMA0_C3NUART1_RTSTIMG6_C1TIMA1_C1
PB4INDEX16UART1_TXUART3_CTSTIMA1_C0TIMA0_C2TIMA1_C0N
PB5INDEX17UART1_RXUART3_RTSTIMA1_C1TIMA0_C2NTIMA1_C1N
PB6INDEX22UART1_TXSPI1_CS0SPI0_CS1TIMG8_C0UART2_CTSTIMG6_C0TIMA1_C0N
PB7INDEX23UART1_RXSPI1_POCISPI0_CS2TIMG8_C1UART2_RTSTIMG6_C1TIMA1_C1N
PB8INDEX24UART1_CTSSPI1_PICOTIMA0_C0COMP1_OUT
PB9INDEX25UART1_RTSSPI1_SCKTIMA0_C1TIMA0_C0N
PB10INDEX26TIMG0_C0TIMG8_C0COMP1_OUTTIMG6_C0
PB11INDEX27TIMG0_C1TIMG8_C1CLK_OUTTIMG6_C1
PB12INDEX28UART3_TXTIMA0_C2TIMA_FAL1TIMA0_C1
PB13INDEX29UART3_RXTIMA0_C3TIMG12_C0TIMA0_C1N
PB14INDEX30SPI1_CS3SPI1_POCISPI0_CS3TIMG12_C1TIMG8_IDXTIMA0_C0
PB15INDEX31UART2_TXSPI1_PICOUART3_CTSTIMG8_C0TIMG7_C0
PB16INDEX32UART2_RXSPI1_SCKUART3_RTSTIMG8_C1TIMG7_C1
PB17INDEX42UART2_TXSPI0_PICOSPI1_CS1TIMA1_C0TIMA0_C2
PB18INDEX43UART2_RXSPI0_SCKSPI1_CS2TIMA1_C1TIMA0_C2N
PB19INDEX44COMP2_OUTSPI0_POCITIMG8_C1UART0_CTSTIMG7_C1
PB20INDEX47SPI0_CS2SPI1_CS0TIMA0_C2TIMG12_C0TIMA_FAL1TIMA0_C1TIMA1_C1N
PB21INDEX48SPI1_POCITIMG8_C0
PB22INDEX49SPI1_PICOTIMG8_C1
PB23INDEX50SPI1_SCKCOMP0_OUTTIMA_FAL0
PB24INDEX51SPI0_CS3SPI0_CS1TIMA0_C3TIMG12_C1TIMA0_C1NTIMA1_C0N
PB25INDEX55UART0_CTSSPI0_CS0TIMA_FAL2
PB26INDEX56UART0_RTSSPI0_CS1TIMA0_C3TIMG6_C0TIMA1_C0
PB27INDEX57COMP2_OUTSPI1_CS1TIMA0_C3NTIMG6_C1TIMA1_C1