MSPM0 SDK 示例指南

1.引言

MSPM0 SDK 随附大量代码示例, 可帮助工程师使用德州仪器 (TI) 的 MSPM0 系列微控制器开发应用。

示例文件夹分为 RTOS 和非 RTOS 子文件夹(目前 仅支持非 RTOS)。这些文件夹包含每个 LaunchPad 的示例,并根据功能进行整理,例如较低层的 Driverlib 示例、较高层的 TI 驱动程序示例,以及 GUI Composer、LIN、IQMath 等中间层的示例。

一些示例支持 SysConfig, 可简化器件配置并加快软件开发。 请参阅“SDK 快速入门指南”,更详细地了解如何 开始使用 SysConfig 并在下面各节中搜索 SysConfig 字符 image0

2.MSPM0 SDK 示例

2.1 演示

MSPM0 SDK 包含多个演示,展示了 各种器件的功能。

每个演示都自带文档、完整的源代码,以及对应 其所支持的不同 IDE 和编译器的工程文件, 因而使得演示简单易用。

敬请期待更多示例和功能。

工程名称

说明

EVM

LP_MSPM0G3507

LP_MSPM0L1306

blood_pressure_monitor

Blood Pressure Monitor demos

bq769x2_control_i2c

Demonstrate BQ769x2 control through I2C

image1

dualray_smoke_detector

Dualray smoke detector demo

image2

one_wire

1-wire target emulating a EEPROM interface

image3

out_of_box

Out of Box experience for MSPM0 LaunchPads

pulse_oximeter

Pulse oximeter demos

image4

2.2 DriverLib

DriverLib 是一组底层驱动程序,可提供用于 访问 MSPM0 寄存器和完整器件功能的 API。

以下示例使用 Driverlib API 演示了 器件功能,既涵盖了切换 GPIO 输出引脚等简单用例, 也介绍了使用多个外设的更复杂 用例。

每个示例都自带文档、完整的源代码,以及 对应其所支持的不同 IDE 和编译器的工程文件, 因而使得示例简单易用。

2.2.1 AES Accelerator (AES)

工程名称

说明

EVM

LP_MSPM0G3507

LP_MSPM0L1306

aes_cbc_256_enc_dec

AES256 CBC encryption and decryption example

image5

aes_cfb_256_decrypt

AES CFB 256 bit decryption example

image6

aes_ofb_128_encrypt

AES OFB 128 bit encryption example

image7

2.2.2 Analog-to-Digital Converter (ADC)

工程名称

说明

EVM

LP_MSPM0G3507

LP_MSPM0L1306

adc12_14bit_resolution

ADC12 conversion at maximum frequency using DMA with hardware averaging enabled

image8

image9

adc12_internal_temp_sensor_mathacl

ADC12 samples internal temperature sensor and converts reading to Celsius and Fahrenheit degrees

image10

adc12_max_freq_dma

ADC12 conversion at maximum frequency using DMA

image11

image12

adc12_max_freq_dma_8bit

ADC12 conversion at maximum frequency using DMA in 8 bit resolution

image13

image14

adc12_monitor_supply

ADC12 monitors voltage supply channel

image15

image16

adc12_sequence_conversion

Demonstrate configuring ADC to trigger sequence of conversions on 4 different channels

image17

image18

adc12_simultaneous_trigger_event

Dual ADC12 conversion triggered by a Timer event

image19

adc12_simultaneous_trigger_event_stop

Dual ADC12 conversion triggered by a Timer event while in STOP mode

image20

adc12_single_conversion

ADC12 simple single conversion triggered by software

image21

image22

adc12_single_conversion_vref_external

ADC12 single conversion triggered by software using external reference

image23

image24

adc12_single_conversion_vref_internal

ADC12 single conversion triggered by software using internal VREF

image25

image26

adc12_triggered_by_timer_event

ADC12 conversion triggered by a Timer event

image27

image28

adc12_triggered_by_timer_event_stop

ADC12 conversion triggered by a Timer event while in STOP mode

image29

image30

adc12_window_comparator

ADC12 single conversion in repeat mode using window comparator feature

image31

image32

2.2.3 Comparator (COMP)

工程名称

说明

EVM

LP_MSPM0G3507

LP_MSPM0L1306

comp_analog_filter

Comparator using external inputs with hysteresis and output analog filter

image33

image34

comp_dac_to_timer_event

Comparator output using 8-bit DAC triggers a timer event to measure timing

image35

image36

comp_hs_dac_vref_external

Comparator in high-speed mode using 8-bit DAC with external VREF

image37

image38

comp_hs_tima_pwm_fault

Comparator in high-speed mode triggers a TIMA fault

image39

comp_lp_dac_vref_internal

Comparator in low-power mode using 8-bit DAC with internal VREF

image40

2.2.4 Controller Area Network (CAN)

工程名称

说明

EVM

LP_MSPM0G3507

LP_MSPM0L1306

mcan_loopback

MCAN transmits and receives messages using loopback mode

image41

mcan_message_rx

Example configured to receive CAN and CAN-FD frames

image42

mcan_message_rx_tcan114x

Example configured to receive CAN and CAN-FD frames using BOOSTXL-TCAN1145 boosterpack.

image43

mcan_multi_message_tx

CAN-FD transmits two messages with unique ID on GPIO interrupt

image44

mcan_multi_message_tx_tcan114x

CAN-FD transmits two messages with unique ID on GPIO interrupt using BOOSTXL-TCAN1145 boosterpack.

image45

mcan_single_message_tx

CAN-FD transmits a single message on GPIO interrupt

image46

2.2.5 Cyclic Redundancy Check (CRC)

工程名称

说明

EVM

LP_MSPM0G3507

LP_MSPM0L1306

crc_calculate_checksum

CRC32 checksum calculation of a memory block

image47

image48

crc_calculate_checksum_dma

CRC32 checksum calculation of a memory block using DMA block transfer

image49

image50

2.2.6 Digital-to-Analog Converter (DAC)

工程名称

说明

EVM

LP_MSPM0G3507

LP_MSPM0L1306

dac12_dma_sampletimegen

DAC12 using DMA with sample time generator to generate sine wave

image51

dac12_fifo_sampletimegen

DAC12 sending repetitive signal using FIFO and sample timer generator

image52

dac12_fifo_timer_event

DAC12 sending a sawtooth signal using FIFO and triggered by a Timer event

image53

dac12_fixed_voltage_vref_internal

DAC12 setting a fixed voltage output

image54

2.2.7 Direct Memory Access (DMA)

工程名称

说明

EVM

LP_MSPM0G3507

LP_MSPM0L1306

dma_block_transfer

DMA copies from Flash main memory to SRAM memory

image55

image56

dma_fill_data

DMA memory fill of SRAM using DMA

image57

image58

dma_table_transfer

DMA using Table mode with DMA

image59

image60

2.2.8 Events Manager

工程名称

说明

EVM

LP_MSPM0G3507

LP_MSPM0L1306

event_input_triggers_output

Event configuration to toggle LED when switch is pressed

image61

image62

2.2.9 GPIO

工程名称

说明

EVM

LP_MSPM0G3507

LP_MSPM0L1306

gpio_input_capture

GPIO triggers interrupt by input capture pin

image63

image64

gpio_simultaneous_interrupts

Demonstrates how to simultaneously service three GPIO interrupts

image65

gpio_software_poll

GPIO output is set based on polled input

image66

image67

gpio_toggle_output

GPIO toggling an output pin

image68

image69

gpio_toggle_output_cpp

GPIO toggling output pins using C++

image70

image71

gpio_toggle_output_hiz

GPIO toggling an ouputput pin configured as Hi-Z

image72

image73

2.2.10 General-Purpose Amplifier (GPAMP)

工程名称

说明

EVM

LP_MSPM0G3507

LP_MSPM0L1306

gpamp_buffer_to_adc

GPAmp configured in buffer mode with output to ADC

image74

image75

gpamp_general_purpose_rri

GPAmp configured in general purpose Rail-to-Rail mode

image76

image77

2.2.11 Inter-Integrated Circuit (I2C)

工程名称

说明

EVM

LP_MSPM0G3507

LP_MSPM0L1306

i2c_controller_rw_multibyte_fifo_interrupts

I2C Controller reading and writing multiple bytes using interrupts with FIFO

image78

image79

i2c_controller_rw_multibyte_fifo_poll

I2C Controller reading and writing multiple bytes polling FIFO

image80

image81

i2c_controller_target_dynamic_switching

I2C dynamic switching between Controller and Target modes

image82

image83

i2c_multicontroller_arbitration

I2C Controller detecting arbitration error

image84

image85

i2c_target_rw_multibyte_fifo_interrupts

I2C Target reading and writing multiple bytes using interrupts

image86

image87

i2c_target_rw_multibyte_fifo_interrupts_stop

I2C Target reading and writing multiple bytes using interrupts while in STOP mode

image88

image89

i2c_target_rw_multibyte_fifo_poll

I2C Target reading and writing multiple bytes polling FIFO

image90

image91

2.2.12 Math Accelerator (MATHACL)

工程名称

说明

EVM

LP_MSPM0G3507

LP_MSPM0L1306

mathacl_mpy_div_op

MATHACL multiply and divide using fixed point

image92

mathacl_trig_op

MATHACL implementation of trigonometric functions

image93

2.2.13 Non-Volatile Memory (FLASHCTL)

工程名称

说明

EVM

LP_MSPM0G3507

LP_MSPM0L1306

flashctl_blank_verify

Implementation of Flash Blank Verify command

image94

image95

flashctl_dynamic_memory_protection

Flash configured with dynamic protection

image96

image97

flashctl_ecc_error_injection

Flash ECC testing and SEC and DED error detection

image98

flashctl_multiple_size_read_verify

Implementation of Flash read verify commands on multiple data sizes, with and without ECC

image99

image100

flashctl_multiple_size_write

Flash writing of different size data

image101

image102

flashctl_nonmain_memory_write

Read-write of Non-Main Flash memory

image103

image104

flashctl_program_with_ecc

Flash programming with ECC

image105

2.2.14 Operational Amplifier (OPA)

工程名称

说明

EVM

LP_MSPM0G3507

LP_MSPM0L1306

opa_burnout_current_source_to_adc

OPA in buffer mode enabling burnout current source to ADC

image106

image107

opa_dac8_output_buffer

OPA in output buffer mode using 8-bit DAC

image108

image109

opa_general_purpose_rri

OPA in general purpose mode with Rail-to-Rail configuration

image110

image111

opa_inverting_pga_with_dac

OPA in inverting PGA configuration using DAC12 as bias

image112

opa_non_inverting_pga

OPA in non-inverting PGA configuration

image113

image114

opa_signal_chain_to_adc

Two OPAs configured in TIA and PGA, connected to ADC

image115

2.2.15 Other

工程名称

说明

EVM

LP_MSPM0G3507

LP_MSPM0L1306

cinit_bypass

Bypass CINIT skipping variable initialization

image116

image117

empty

Empty start-up project using DriverLib

image118

image119

empty_cpp

Empty C++ start-up project using DriverLib

image120

image121

empty_driverlib_src

Empty start-up project using DriverLib

image122

image123

empty_library

Empty start-up library project using DriverLib

nvic_interrupt_disable

NVIC used to demonstrate best approach to disable interrupts

image124

image125

nvic_interrupt_grouping

NVIC configuration and use of interrupt grouping

image126

image127

sram_parity

Initializes and uses Parity SRAM

image128

systick_periodic_timer

SysTick generates periodic interrupt

image129

image130

2.2.16 Real-Time Clock (RTC)

工程名称

说明

EVM

LP_MSPM0G3507

LP_MSPM0L1306

rtc_calendar_alarm_standby

RTC sets calendar alarm and toggles GPIO when alarm is triggered

image131

rtc_offset_calibration_lfxt

RTC offset correction of crystal

image132

rtc_periodic_alarm_lfosc_standby

RTC implementation of periodic alarm in STANDBY using LFOSC

image133

rtc_periodic_alarm_lfxt_standby

RTC implementation of periodic alarm in STANDBY using LFXT

image134

2.2.17 Serial Peripheral Interface (SPI)

工程名称

说明

EVM

LP_MSPM0G3507

LP_MSPM0L1306

spi_controller_command_data_control

SPI Controller transmit using command data (CD) control

image135

image136

spi_controller_echo_interrupts

SPI Controller transmits data using Motorola format

image137

image138

spi_controller_internal_loopback_poll

SPI Controller with internal loopback using polling

image139

image140

spi_controller_multibyte_fifo_dma_interrupts

SPI Controller reading and writing multiple bytes using FIFO and DMA

image141

image142

spi_controller_multibyte_fifo_poll

SPI Controller reading and writing multiple bytes polling FIFO

image143

image144

spi_controller_register_format

SPI Controller transmit and read data using register format

image145

image146

spi_controller_repeated_multibyte_fifo_dma_interrupts

SPI Controller reading and writing multiple bytes using FIFO and DMA every second

image147

image148

spi_peripheral_echo_interrupts

SPI Peripheral echoes data using Motorola format

image149

image150

spi_peripheral_multibyte_fifo_dma_interrupts

SPI Peripheral reading and writing multiple bytes using FIFO and DMA

image151

image152

spi_peripheral_multibyte_fifo_poll

SPI Peripheral reading and writing multiple bytes polling FIFO

image153

image154

spi_peripheral_register_format

SPI Peripheral transmit and read data using register format

image155

image156

spi_peripheral_repeated_multibyte_fifo_dma_interrupts

SPI Peripheral reading and writing multiple bytes using FIFO and DMA

image157

image158

2.2.18 System Controller (SYSCTL)

工程名称

说明

EVM

LP_MSPM0G3507

LP_MSPM0L1306

sysctl_frequency_clock_counter

Monitor SYSOSC via Frequency Clock Counter (FCC)

image159

sysctl_hfxt_run

Sets external HFXT as source to HSCLK and MCLK (48MHz)

image160

sysctl_lfxt_standby

Sets LFXT as source to LFCLK (32kHz) and power policy in STANDBY0

image161

sysctl_mclk_syspll

Sets MCLK to run from SYSPLL (80MHz)

image162

sysctl_power_policy_sleep_to_standby

SYSCTL switches between SLEEP mode and STANDBY modes

image163

image164

sysctl_power_policy_sleep_to_stop

SYSCTL switches between SLEEP mode and STOP modes

image165

image166

sysctl_shutdown

Show correct wake-up mechanism after SHUTDOWN vs STOP, STANDBY and SLEEP

image167

image168

2.2.19 Timer - Advanced (TIMA)

工程名称

说明

EVM

LP_MSPM0G3507

LP_MSPM0L1306

tima_timer_mode_periodic_repeat_count

TimerA in periodic mode using repeat-count feature

image169

tima_timer_mode_pwm_dead_band

TimerA outputs PWM signals with dead band insertion

image170

tima_trigger_fail_mechanism

TimerA demonstrating fault detection

image171

2.2.20 Timer - General Purpose (TIMG)

工程名称

说明

EVM

LP_MSPM0G3507

LP_MSPM0L1306

timg_32bit_timer_mode_periodic_sleep

32-bit timer in periodic mode while device is in SLEEP mode

image172

timg_32bit_timer_mode_pwm_edge_sleep

32-bit timer in PWM edge aligned mode while device is in SLEEP mode

image173

timg_qei_mode

TimerG uses QEI to decode relative position output of a quadrature encoder

image174

2.2.21 Timer - Generic (TIMx)

工程名称

说明

EVM

LP_MSPM0G3507

LP_MSPM0L1306

timx_timer_mode_capture_duty_and_period

Timer calculates period and duty cycle

image175

image176

timx_timer_mode_capture_edge_capture

Timer edge time detection using Timer capture mode

image177

image178

timx_timer_mode_compare_edge_count

Timer edge counting capability using compare mode

image179

image180

timx_timer_mode_one_shot_standby

Timer in one-shot mode while device is in STANDBY mode

image181

image182

timx_timer_mode_periodic_sleep

Timer in periodic mode while device is in SLEEP mode

image183

image184

timx_timer_mode_periodic_standby

Timer in periodic mode while device is in STANDBY mode

image185

image186

timx_timer_mode_periodic_stop

Timer in periodic mode while device is in STOP mode

image187

image188

timx_timer_mode_pwm_center_stop

Timer in PWM center aligned mode while device is in STOP mode

image189

image190

timx_timer_mode_pwm_cross_trigger_stop_restore

Timer in PWM mode after coming out of STOP with retention in SW

image191

timx_timer_mode_pwm_edge_sleep

Timer in PWM edge aligned mode while device is in SLEEP mode

image192

image193

timx_timer_mode_pwm_edge_sleep_shadow

Timer updating PWM duty cycle using shadow load feature

image194

image195

2.2.22 True Random Number Generator (TRNG)

工程名称

说明

EVM

LP_MSPM0G3507

LP_MSPM0L1306

trng_sample

TRNG sampling to fill a buffer with random data

image196

trng_sample_stop_restore

TRNG sample random data after coming out of STOP with retention in SW

image197

2.2.23 Universal Asynchronous Receiver-Transmitter (UART)

工程名称

说明

EVM

LP_MSPM0G3507

LP_MSPM0L1306

uart_echo_interrupts_standby

UART RX/TX echo using interrupts while device is in STANDBY mode

image198

image199

uart_extend_manchester_echo

UART Extend using Manchester encoding, echo received packet

image200

image201

uart_extend_manchester_send_packet

UART Extend using Manchester encoding and decoding, send a packet

image202

image203

uart_external_loopback_interrupt

UART RX/TX external loopback using interrupts

image204

image205

uart_internal_loopback_standby_restore

UART internal loopback after coming out of STANDBY with retention in SW

image206

uart_rs485_receive_packet

Demonstrate UART in RS485 mode, receive a packet

image207

uart_rs485_send_packet

Demonstrate UART in RS485 mode, send a packet

image208

uart_rw_multibyte_fifo_poll

UART RX/TX using FIFOs with polling

image209

image210

uart_rx_hw_flow_control

UART RX using HW flow control

image211

image212

uart_rx_multibyte_fifo_dma_interrupts

UART RX using a DMA trigger

image213

image214

uart_tx_console_multibyte_repeated_fifo_dma

UART TX to console using a continuous DMA Triggers

image215

image216

uart_tx_hw_flow_control

UART TX using hardware flow control

image217

image218

uart_tx_multibyte_fifo_dma_interrupts

UART TX using a DMA trigger

image219

image220

2.2.24 Window Watchdog Timer (WWDT)

工程名称

说明

EVM

LP_MSPM0G3507

LP_MSPM0L1306

wwdt_interval_timer_lfosc_standby

WWDT interval timer mode using LFOSC while device is in STANDBY mode

image221

image222

wwdt_interval_timer_lfxt_standby

WWDT interval timer mode using LFXT while device is in STANDBY mode

image223

wwdt_window_mode_periodic_reset

WWDT Window watchdog mode with periodic reset

image224

image225

2.3 TI-Drivers

“TI 驱动程序”提供了一系列稳健而直观的 功能 API,使开发人员能够以可移植、功能丰富的方式访问外设。

MSPM0 的 TI 驱动程序正在开发当中,但下面的示例简要介绍了 预期的功能。

2.3.1 FreeRTOS

工程名称

说明

EVM

LP_MSPM0G3507

LP_MSPM0L1306

gpio_interrupt

Toggles the LED(s) using a GPIO pin interrupt

i2c_tmp

Read temperature from Tmp117 Sensor using I2C

uart_callback

UART simple echo using callback

uart_echo

UART simple echo

2.3.2 No RTOS

工程名称

说明

EVM

LP_MSPM0G3507

LP_MSPM0L1306

uart_echo

UART simple echo

2.4 启动映像管理器 (BIM)

MSPM0 SDK 包括启动映像管理器实现, 展示了用户如何验证器件中所加载映像的 完整性和真实性。

工程名称

说明

EVM

LP_MSPM0G3507

LP_MSPM0L1306

bim_sample_image

Sample GPIO toggle image for BIM

image226

image227

boot_application

Boot Image Manager Using MCUBoot

image228

image229

2.5 引导加载程序 (BSL)

引导加载程序 (BSL) 提供了一种 通过标准 UART 或 I2C 串行接口对器件存储器进行编程和/或验证的 方法。此外,BSL 还支持 MAIN 闪存插件,以启用 其他接口和功能。

MSPM0 SDK 包含多个示例,展示了如何在 MAIN 闪存中实现各种插件以及其他 BSL 功能。

工程名称

说明

EVM

LP_MSPM0G3507

LP_MSPM0L1306

bsl_host_mcu_i2c_to_m0g_target

Shows an implementation of BSL I2C Flash interface with MSPM0G as host to MSPM0G target

image230

bsl_host_mcu_i2c_to_m0l_target

Shows an implementation of BSL I2C Flash interface with MSPM0G as host to MSPM0L target

image231

bsl_host_mcu_spi

Shows an implementation of a BSL host utilizing SPI interface

bsl_host_mcu_uart_to_m0g_target

Shows an implementation of BSL UART Flash interface with MSPM0G as host to MSPM0G target

image232

bsl_host_mcu_uart_to_m0l_target

Shows an implementation of BSL UART Flash interface with MSPM0G as host to MSPM0L target

image233

bsl_i2c_flash_interface

Shows an implementation of BSL I2C Flash interface

image234

image235

bsl_software_invoke

Jump to ROM bootloader on application request

image236

image237

bsl_spi_flash_interface

Shows an implementation of a BSL SPI Flash interface

image238

image239

bsl_uart_flash_interface

Shows an implementation of a BSL UART Flash interface

image240

image241

secondary_bsl

Implements a secondary bootloader in Main overriding the ROM BSL

image242

image243

2.6 CMSIS-DSP

The CMSIS DSP software library includes a comprehensive set of signal processing functions for use on Cortex-M MCUs.

The MSPM0 SDK includes examples showing how to get started using CMSIS DSP.

工程名称

说明

EVM

LP_MSPM0G3507

LP_MSPM0L1306

cmsis_dsp_empty

Empty example using CMSIS-DSP

image244

image245

cmsis_dsp_fft_q15

FFT of fixed point array using CMSIS-DSP

image246

image247

2.7 指导手册

“MSPM0 SDK 指导手册”包含多个实例,展示了使用多个外设实现更复杂的功能。

这些示例使用多个 DriverLib API 并包括完整的源代码和文档以及详细的使用说明。

工程名称

说明

EVM

LP_MSPM0G3507

LP_MSPM0L1306

adc_dma_ping_pong

Capture ADC data into 2 (ping-pong) buffers

image248

adc_to_pwm

Convert analog voltage to PWM

image249

image250

adc_to_spi_peripheral

Sample ADC and respond to SPI commands sent by a controller

image251

image252

adc_to_uart

Configures the ADC0 to trigger single conversion and send the ADC data through UART

image253

image254

digital_mux

Emulate a digital mux with GPIO

image255

diode_matrix

Drive LEDs with fewer pins using diode matrix

image256

fir_low_pass_filter

Applies digital FIR low-pass filter to sampled ADC signals

image257

iir_low_pass_filter

Applies digital IIR filter to sampled ADC signals

image258

power_sequencing

This sub system allows for different pins/applications be turned on/off in a sequence as to not over load the device from simultaneous power consumption.

image259

image260

programmable_gain_amplifier_1

Use programmable gain amplifier to dynamically adjust gain

image261

programmable_gain_amplifier_2

Use programmable gain amplifier to dynamically adjust gain and capture values with integrated ADC

image262

pushbutton_change_pwm

This example demonstrates using the two switches on the MSPM0 Launchpad to change the period and duty cycle on TIMA1 PWM output channels CC0 and CC1.

image263

pwm_dac

Use a timer to create a PWM DAC

image264

pwm_led_driver

Create a pulsating LED effect using timers

image265

image266

signal_acquisition

OPA supports two different sensor input voltages and uses common ADC channel

image267

temp_sense_thermistor

Sample LaunchPad thermistor using integrated Op-Amp and ADC

image268

transimpedance_amplifier

Configure Op-amp in transimpedance amplifier topology

image269

2.8 DALI

MSPM0 supports the DALI Protocol via the UART module. DALI (Digitally Addressable Lighting Interface) is a serial protocol for digital lighting control that allows for simple and efficient communication between various lighting application gear and controllers.

The MSPM0 SDK includes the source code and examples showing the implementation of supported solutions.

工程名称

说明

EVM

LP_MSPM0G3507

LP_MSPM0L1306

dali_led_demo

Demonstrates usage of DALI protocol with an LED control demo

image270

2.9 EEPROM

MSPM0 通过其内部闪存支持 EEPROM 仿真。 与使用外部串行 EEPROM 相比,使用内部闪存的 EEPROM 仿真可节省引脚用量和成本。

MSPM0 SDK 包含一个库和多个示例,展示了其所支持的解决方案 实现方式。

2.9.1 Type-A

工程名称

说明

EVM

LP_MSPM0G3507

LP_MSPM0L1306

eeprom_emulation_type_a

Demonstrates Type A EEPROM emulation to store non-volatile data

eeprom_emulation_type_a_test

Demonstrates a more detailed use case of Type A EEPROM emulation to store blocks of non-volatile data

2.9.2 Type-B

工程名称

说明

EVM

LP_MSPM0G3507

LP_MSPM0L1306

eeprom_emulation_type_b

Demonstrates Type B EEPROM emulation to store user data

eeprom_emulation_type_b_test

Demonstrates a more detailed use case of Type B EEPROM emulation to store user data

2.10 GUI Composer

GUI Composer 是一款基于浏览器的工具,用于开发 PC 端 基于 HTML 的 GUI,从而补充嵌入式工程或应用程序。

MSPM0 SDK 包含一个库和多个示例,展示了其所支持的协议 实现方式。

2.10.1 流媒体协议

工程名称

说明

EVM

LP_MSPM0G3507

LP_MSPM0L1306

gc_simple_json

Demonstrates basic usage of GUI Composer communication using JSON-formatted strings

image271

image272

gc_simple_messagepack

Demonstrates basic usage of GUI Composer communication using MessagePack protocol

image273

image274

2.11 IQMath

IQMath 是一组高度优化的 高精度定点数运算函数库。

MSPM0 SDK 包括 IQMath 的使用示例,使用简单的 C 运行时系统 (RTS) 函数,并利用 MathAcl 硬件加速器。

2.11.1 Compiler RTS library

工程名称

说明

EVM

LP_MSPM0G3507

LP_MSPM0L1306

iqmath_rts_ops_test

Implements various fixed-point operations leveraging the RTS implementation of IQMath

image275

image276

2.11.2 MathACL

工程名称

说明

EVM

LP_MSPM0G3507

LP_MSPM0L1306

iqmath_mathacl_ops_test

Implements various fixed-point operations leveraging the MathACL implementation of IQMath

image277

2.12 RTOS Kernel

The MSPM0 SDK includes a collection of examples to test kernel functionality.

工程名称

说明

EVM

LP_MSPM0G3507

LP_MSPM0L1306

blink_led

Simple FreeRTOS LED blinky demo using two tasks

image278

image279

posix_demo

Simple Posix FreeRTOS blinky LED demo

image280

image281

2.13 LIN

本地互连网络 (LIN) 是汽车中 常用的一种易于实现的低成本多点通信总线。

MSPM0 SDK 包含易于使用的指挥官和 响应者示例。

2.13.1 指挥官

工程名称

说明

EVM

LP_MSPM0G3507

LP_MSPM0L1306

lin_commander

Demonstrates basic implementation of LIN commander to transmit and receive LIN 2.0 packets using UART

image282

image283

2.13.2 响应者

工程名称

说明

EVM

LP_MSPM0G3507

LP_MSPM0L1306

lin_responder

Demonstrates basic implementation of LIN responder to transmit and receive LIN 2.0 packets using UART

image284

image285

2.14 Sensored Trap Hall Motor Control

The MSPM0 SDK includes examples to evaluate the sensored trap hall motor control library with the DRV8316REVM and DRV8329AEVM. These firmware are designed for a GUI to make testing and evaluation quick for the user.

Stay tuned for more examples and functionality coming soon.

2.14.1 DRV8316

工程名称

说明

EVM

LP_MSPM0G3507

LP_MSPM0L1306

drv8316revm-gui-firmware

Firmware for LP_MSPM0G3507 and DRV8316R EVM GUI

image286

2.14.2 DRV8329

工程名称

说明

EVM

LP_MSPM0G3507

LP_MSPM0L1306

drv8329aevm-gui-firmware

Firmware for LP_MSPM0G3507 and DRV8329A EVM GUI

image287

2.15 Sensorless FOC Motor Control

The MSPM0 SDK includes examples to evaluate the sensorless FOC motor control library with the DRV8323RS EVM. These firmware are designed for a GUI to make testing and evaluation quick for the user.

Stay tuned for more examples and functionality coming soon.

2.15.1 DRV8323RS

工程名称

说明

EVM

LP_MSPM0G3507

LP_MSPM0L1306

sensorless-foc-demo

Demo sensorless FOC code for LP_MSPM0G3507 and DRV8323RS EVM GUI

image288

2.16 有刷电机控制

MSPM0 SDK 包含一个示例,用于 通过 DRV8706-Q1 EVM 评估有刷电机控制库。该固件有专用的 GUI 上位机,旨在帮助用户快速进行测试和评估。

2.16.1 DRV8706-Q1

工程名称

说明

EVM

LP_MSPM0G3507

LP_MSPM0L1306

drv8706s-q1evm-gui-firmware

Firmware for LP_MSPM0L1306 and DRV8706S-Q1 EVM GUI

image289

2.17 步进电机控制

MSPM0 SDK 包含多个示例,用于 通过 DRV8411A 和 DRV8889-q1 EVM 评估步进电机控制库。这些固件 有专用的 GUI 上位机,旨在帮助用户快速进行测试和评估。

更多示例和功能即将推出,敬请期待。

2.17.1 DRV8411A

工程名称

说明

EVM

LP_MSPM0G3507

LP_MSPM0L1306

drv8411aevm-gui-firmware

Firmware for LP_MSPM0L1306 and DRV8411AEVM GUI

image290

2.17.2 DRV8889-Q1

工程名称

说明

EVM

LP_MSPM0G3507

LP_MSPM0L1306

drv8889-q1evm-gui-firmware

Firmware for LP_MSPM0L1306 and DRV8889-Q1 EVM GUI

image291

2.18 PMBUS

PMBus is a protocol design to interface with power management devices. It uses the SMBus protocol as a base.

The MSPM0 SDK includes a ready-to-go example for using an MSPM0 devices as a PMBus controller for a TPS544B20 device.

2.18.1 Controller

工程名称

说明

EVM

LP_MSPM0G3507

LP_MSPM0L1306

pmbus_controller_tps544b20evm

Use MSPM0 to configure TPS544B20EVM over PMBus

image292

image293

2.19 SMBus

系统管理总线 (SMBus) 是一种适用于轻量级通信的 简单单端双线总线。

MSPM0 SDK 包含适用于控制器和 目标的易用示例。

2.19.1 控制器

工程名称

说明

EVM

LP_MSPM0G3507

LP_MSPM0L1306

smbus_controller

Demonstrates basic implementation of SMBus Controller testing all SMBus 2.0 protocols using I2C

image294

image295

2.19.2 目标

工程名称

说明

EVM

LP_MSPM0G3507

LP_MSPM0L1306

smbus_target

Demonstrates basic implementation of SMBus Target testing all SMBus 2.0 protocols using I2C

image296

image297