LaunchPad MSP432: RTOS for Everyone
How to combine the best of ultra-low-power from the MSP430 family and high performance from the Cortex-M4-based TM4C family?a
Here comes the MSP432 from Texas Instruments! The MSP432P401R is end-of-life. The MSP432P401R is no longer listed among the Arm-based microcontrollers line of MCUs on the Texas Instruments website. Moreover, the page for the MSP432P401R LaunchPad is dead and the page for the MSP432P401R MCU reroutes to the MSP430FR5994 MCU.
Distributors confirm the product is end-of-life. |
Hardware
The MSP432 LaunchPad features the MSP432P401R with 256 KB of Flash and 64 KB of RAM running at 48 MHz. As always, the programmer-debugger connects through USB.
The board also features one red LED and one RGB LED, one reset plus two user-buttons, and connectors for a 40-pin BoosterPack. There is an extra connector J5 on the bottom of the LaunchPad for all the pins not already used. This is a great idea, similar to the Connected LaunchPad Tiva C Series TM4C129. |
Software
Texas Instruments offers a wide choice of IDEs: CCS, IAR, Energia.
The Arduino-compatible IDE or integrated development environment is called Energīa. It is derived from the Wiring framework and is compatible with the popular Arduino 1.0. As Processing-based Wiring-derived, it is platform-agnostic and runs on Windows, Mac OS X or Linux. Code Composer Studio has been updated to version 6.1 and is now also available on the cloud with CCS Cloud. CCS Cloud runs virtually everywhere. I've tested it successfully on Mac OS X with Safari and Chrome. An extension is required to upload the executable to the LaunchPad. |
The real surprise comes from Energia with a major new release: Energia MT.
Energia MT stands for Energia Multi-Tasking and is based on Texas Instruments RTOS, aka. Real Time Operating System. Real-time means each task is completed within a determined period of time, and RTOS is an operating system built on it. Texas Instruments RTOS features, among many other features,
The Galaxia library provides an easy access to the tasks and synchronisation elements. The MSP432 LaunchPad is now fully supported by embedXcode, embedded computing on Xcode. The support includes debugging. |
RTOS for Everyone
Let's take an example: we'd like to blink 3 LEDs, each one at a different speed.
Managing the 3 LEDs in one single sketch is doable, but difficult. With Energia MT, each LED is managed by a task defined in a separate sketch. Each sketch includes the standard setup...() and loop...() functions. So we have 3 different sketches, one per LED:
|
One sketch per task
|
Energia identifies the setup...() and loop...() functions and proceeds with the compilation as usual.
Developing standard sketches remains possible. In this case, they are considered as a mono-task projects. The real-time operating system fits into less than 46 KB out of the 256 KB available in the MSP432. |
Pins Maps
I've designed two pins maps:
|
A Perfect Introduction to RTOS
At less than USD13, the MSP432 is the perfect kit to start with embedded systems and explore real time applications with the easy-to-use Energia IDE based on the Wiring / Arduino framework.
As usual, Energia MT comes with different multi-tasking examples, and Texas Instruments provides great learning material for the real time operation system. Chapters include an introduction to RTOS, hardware interrupts, software interrupts, tasks, semaphores, timers, ... Also, tutorials are available for the new CCS Cloud. The Galaxia library provides an easy access to the RTOS element including tasks and synchronisation elements. |
The MSP432 LaunchPad Turns Red
The programmer part of the LaunchPad, labelled XDS100 Out, can be used as a stand-alone XDS100 programmer, while the MSP432 part of the board, labelled MSP432 In, can be connected to an external emulator. Remove all the jumpers before. |
The document Moving From Evaluation to Production With MSP432P401x MCUs details all the modifications.
|
Pros
|
Cons
|
Wrap-Up
|
Links
Posted: 18 Jun 2015
Updated: 02 Sep 2016, 14 Nov 2021