Readme

Example Summary

This example configures the UART as a LIN Responder, and demonstrates basic transmit and receive of LIN 2.0 packets using enhanced checksum. LIN is a feature only usable with a UART Extend instance.

Peripherals & Pin Assignments

Peripheral Pin Function
GPIOB PB15 Standard Output
GPIOB PB22 Standard Output
GPIOB PB26 Standard Output
SYSCTL
UART0 PA11 RX Pin
UART0 PA10 TX Pin
EVENT
DEBUGSS PA20 Debug Clock
DEBUGSS PA19 Debug Data In Out

BoosterPacks, Board Resources & Jumper Settings

Visit LP_MSPM0G3507 for LaunchPad information, including user guide and hardware files.

Pin Peripheral Function LaunchPad Pin LaunchPad Settings
PB15 GPIOB PB15 J2_17 N/A
PB22 GPIOB PB22 J27_5
  • PB22 can be connected to LED2 Blue
    • J5 ON Connect to LED2 Blue
    • J15 OFF Disconnect from LED2 Blue
PB26 GPIOB PB26 J27_8
  • PB26 can be connected to LED2 Red
    • J6 ON Connect to LED2 Red
    • J6 OFF Disconnect from LED2 Red
PA11 UART0 RX J4_33/J26_6
  • PA11 can be used as UART RX connected to XDS-110 backchannel, to boosterpack connector or to CAN/LIN connector:
    • To use backchannel UART on J101:
      J22 1:2: Connects XDS-110 backchannel UART RX to J101
      J101 7:8 Connects XDS-110 backchannel to UART RX
    • To use UART on boosterpack connector:
      J22 2:3: Connects UART RX to J4_33
    • To use on J26 CAN/LIN connector:
      R63 is populated by default and connects pin to J26_6
PA10 UART0 TX J4_34/J26_5
  • PA10 can be used as UART TX connected to XDS-110 backchannel, to boosterpack connector or to CAN/LIN connector:
    • To use backchannel UART on J101:
      J21 1:2: Connects XDS-110 backchannel UART TX to J101
      J101 9:10 Connects XDS-110 backchannel to UART TX
    • To use UART on boosterpack connector:
      J21 2:3: Connects UART TX to J4_34
    • To use on J26 CAN/LIN connector:
      R62 is populated by default and connects pin to J26_5
PA20 DEBUGSS SWCLK N/A
  • PA20 is used by SWD during debugging
    • J101 15:16 ON Connect to XDS-110 SWCLK while debugging
    • J101 15:16 OFF Disconnect from XDS-110 SWCLK if using pin in application
PA19 DEBUGSS SWDIO N/A
  • PA19 is used by SWD during debugging
    • J101 13:14 ON Connect to XDS-110 SWDIO while debugging
    • J101 13:14 OFF Disconnect from XDS-110 SWDIO if using pin in application

Device Migration Recommendations

This project was developed for a superset device included in the LP_MSPM0G3507 LaunchPad. Please visit the CCS User’s Guide for information about migrating to other MSPM0 devices.

Low-Power Recommendations

TI recommends to terminate unused pins by setting the corresponding functions to GPIO and configure the pins to output low or input with internal pullup/pulldown resistor.

SysConfig allows developers to easily configure unused pins by selecting BoardConfigure Unused Pins.

For more information about jumper configuration to achieve low-power using the MSPM0 LaunchPad, please visit the LP-MSPM0G3507 User’s Guide.

Example Usage

Connect the LIN Commander to a LIN BoosterPack with the following connections:

Connect the LIN Responder to a LIN BoosterPack with the following connections:

Note: the BOOSTXL-CANFD-LIN BoosterPack is not directly compatible with the LP_MSPM0L1306 LaunchPad since the pins on the UART connector don’t support LIN. For this reason, the BoosterPack shouldn’t be stacked on top of the LaunchPad.

Connect the LIN Commander BoosterPack and the LIN Responder BoosterPack using the LIN bus lines in J5.

NOTE: Alternatively, a Network Analyzer compatible with LIN 2.0 can be substituted for a LIN Responder. To use the Network Analyzer, make the following connections between the Network Analyzer and LIN BoosterPack:

The LIN responder is configured to run at 32MHz at 19200 baud. These settings can be updated in SysConfig.

Compile, load and run the example.

Send the LIN 2.0 packets with enhanced checksum using the LIN Commander/Network Analyzer. The list of acceptable PID commands are:

The PIDs, message size, and functionality of the callback handlers can be modified and customized in the “responderMessageTable” array in lin_responder.c.

When the LIN Responder receives a packet, LED1 will toggle.

When the LIN Responder transmits a packet, LED2 will toggle.