Tiva-C LaunchPad

Last updated

The Tiva-C (a.k.a. TM4C) LaunchPads [1] are self-contained, single-board microcontrollers, about the size of a credit card, featuring an ARM Cortex-M4F 32-bit CPU operating at 80 to 120 MHz, manufactured by Texas Instruments. [2] The TM4C Series TM4C123G LaunchPad [3] is an upgrade from TI's Stellaris LaunchPad adding support options for motion control PWMs and USB Host functionality. The more recently released TM4C1294 Connected LaunchPad [4] is the first cloud-connected offering in TI's LaunchPad ecosystem and provides a solid foundation for beginning and evaluating embedded IoT designs.

Single-board microcontroller

A single-board microcontroller is a microcontroller built onto a single printed circuit board. This board provides all of the circuitry necessary for a useful control task: a microprocessor, I/O circuits, a clock generator, RAM, stored program memory and any necessary support ICs. The intention is that the board is immediately useful to an application developer, without requiring them to spend time and effort to develop controller hardware.

Texas Instruments American company that designs and makes semiconductors

Texas Instruments Inc. (TI) is an American technology company that designs and manufactures semiconductors and various integrated circuits, which it sells to electronics designers and manufacturers globally. Its headquarters are in Dallas, Texas, United States. TI is one of the top ten semiconductor companies worldwide, based on sales volume. Texas Instruments's focus is on developing analog chips and embedded processors, which accounts for more than 80% of their revenue. TI also produces TI digital light processing (DLP) technology and education technology products including calculators, microcontrollers and multi-core processors. To date, TI has more than 43,000 patents worldwide.

There are many I/O pins (40 to 80 depending upon version) that have multi-personality. This means that they can be easily configured as digital inputs or outputs, analog inputs and outputs or other functions, allowing a great variety of applications, are just the multiple serial ports have the ability to interface with more items such as test cards or other communication modules, etc. Among those pins there are included the GND and POWER (3.3 V) pins.

The clock is 80 or 120 MHz (vers based), which makes them 5 to over 7 times faster than the Arduino Uno's 16 MHz ATmega328P microcontroller. As with any Cortex M4, the CPU has some DSP (digital signal processor) instructions, with some limitations. One can do signal processing, for example, sampling a human voice with a good quality, able to be processed in MATLAB. [ citation needed ] The CPU contains the optional floating-point unit with single-precision floating point operations supported.

Arduino Uno Arduino/Genuino Uno rev3 is the third revision of Arduino/Genuino UNO open source microcontroller board

The Arduino UNO is an open-source microcontroller board based on the Microchip ATmega328P microcontroller and developed by Arduino.cc. The board is equipped with sets of digital and analog input/output (I/O) pins that may be interfaced to various expansion boards (shields) and other circuits. The board has 14 Digital pins, 6 Analog pins, and programmable with the Arduino IDE via a type B USB cable. It can be powered by a USB cable or by an external 9 volt battery, though it accepts voltages between 7 and 20 volts. It is also similar to the Arduino Nano and Leonardo. The hardware reference design is distributed under a Creative Commons Attribution Share-Alike 2.5 license and is available on the Arduino website. Layout and production files for some versions of the hardware are also available. "Uno" means one in Italian and was chosen to mark the release of Arduino Software (IDE) 1.0. The Uno board and version 1.0 of Arduino Software (IDE) were the reference versions of Arduino, now evolved to newer releases. The Uno board is the first in a series of USB Arduino boards, and the reference model for the Arduino platform. The ATmega328 on the Arduino Uno comes preprogrammed with a bootloader that allows uploading new code to it without the use of an external hardware programmer. It communicates using the original STK500 protocol. The Uno also differs from all preceding boards in that it does not use the FTDI USB-to-serial driver chip. Instead, it uses the Atmega16U2 programmed as a USB-to-serial converter.

Floating-point unit part of a computer system specially designed to carry out operations on floating point numbers

A floating-point unit is a part of a computer system specially designed to carry out operations on floating point numbers. Typical operations are addition, subtraction, multiplication, division, square root, and bitshifting. Some systems can also perform various transcendental functions such as exponential or trigonometric calculations, though in most modern processors these are done with software library routines.

They have an additional USB port which can act as USB host, allowing the connection of multiple devices and the "Connected" one has an integrated 10/100 Ethernet MAC+PHY for Internet connectivity. They also have a temperature sensor and on-board LED(s) and RGB LED(s), which allows you to generate various colors by combining the three basic colors (red, blue and green) of the additive color synthesis.

The Tiva/TM4C LaunchPads come preloaded with software to demonstrate many of the capabilities of the ARM microcontroller and with a quickstart application to get up and running within minutes.

Tiva LaunchPad

CPU and speed

The LaunchPad's TM4C123GXL CPU (ARM Cortex M4F 32-bit CPU) is capable of speeds up to 80 MHz. The CPU can be run at lower speeds to reduce energy consumption.

EK-TM4C123GXL features

The kilobyte is a multiple of the unit byte for digital information.

EEPROM nonvolatile memory comprising arrays of floating-gate transistors used in computers, microcontrollers &c. to store relatively small amounts of data but allowing individual bytes to be erased/reprogrammed in-circuit through special programming signals

EEPROM (also E2PROM) stands for electrically erasable programmable read-only memory and is a type of non-volatile memory used in computers, integrated in microcontrollers for smart cards and remote keyless systems, and other electronic devices to store relatively small amounts of data but allowing individual bytes to be erased and reprogrammed.

JTAG is an industry standard for verifying designs and testing printed circuit boards after manufacture.

  • Device mode default configuration
  • Host/OTG modes supportable
  • ICDI
  • USB device

EK-TM4C1294XL features

EK-TM4C1294XL Board Tiva-C LaunchPad EK-TM4C1294XL.JPG
EK-TM4C1294XL Board

Tiva TM4C1294NCPDTI ARM Cortex M4F 32-bit microcontroller

  • Device/Host/OTG modes supportable
  • USB 2.0 High-Speed (480Mbps) possible with external PHY
  • USB Device
  • BoosterPack

Booster packs

Both Tiva C Series LaunchPads conform to a standard for BoosterPack layout defined by Texas Instruments.

TI has a Sensor Hub BoosterPack designed exclusively to fit the TM4C123GXL LaunchPad.

Internet of Things

Internet of Things is made possible with the SimpleLink Wi-Fi CC3100 BoosterPack. [5]


A demonstration of LCD driving can be achieved with LaunchPad by fitting a Nokia LCD, graphic display (not included in the kit). However, the LCD interface consumes many of the I/O pins.

Another solution is the 320 x 240 pixel TFT QVGA display with resistive touch screen Kentec 3.5" screen [6] [7] working through the SPI bus.


The LaunchPad comes preloaded with a RGB quickstart application

Supported by TivaWare for C Series software including the USB library and the peripheral driver library

Tiva C Series TM4C123G LaunchPad BoosterPack XL Interface, which features stackable headers to expand the capabilities of the Tiva C Series LaunchPad development platform

Support for the ARM Cortex-M4 DSP instructions is provided via ARM's CMSIS-DSP software package

TivaWare for C Series includes support for FreeRTOS and TI-RTOS

The LaunchPad LM4F120 and TM3C123G can also be programmed using Energia, [8] an Arduino-like IDE based on the Wiring framework. Energia includes the libraries for the SimpleLink Wi-Fi CC3100 BoosterPack.


Software may be written for the LaunchPad using the assembly language or GCC (GNU Cprogramming language) with Energia, a free variant of the Arduino integrated development environment (IDE). A pre-installed bootloader program allows the board to be re-programmed with a standard USB 2.0 port (requiring no special hardware). The board also has ISP and JTAG ports for in-circuit programming and debugging.


The LaunchPad is becoming popular among hobbyists for its flexibility, the availability of free development software, and the ability to reprogram it without using special hardware.

LaunchPad projects

Many fully usable projects have been built using the LaunchPad as a base platform, often with few or no additional parts. There are free plans to convert the LaunchPad into a portable ARM-ISP device for programming a whole family of ARM devices. [ citation needed ] There are also available lessons and popular books [9] for learning how to program ARMs using C language, after which the LaunchPad was designed.

There are as well, related YouTube videos and a wiki about Tiva-C LaunchPad.

See also

Related Research Articles

TI MSP430 mixed-signal microcontroller family

The MSP430 is a mixed-signal microcontroller family from Texas Instruments. Built around a 16-bit CPU, the MSP430 is designed for low cost and, specifically, low power consumption embedded applications.


The OMAP family, developed by Texas Instruments, was a series of image/video processors. They are proprietary system on chips (SoCs) for portable and mobile multimedia applications. OMAP devices generally include a general-purpose ARM architecture processor core plus one or more specialized co-processors. Earlier OMAP variants commonly featured a variant of the Texas Instruments TMS320 series digital signal processor.

AVR Butterfly

The AVR Butterfly is a battery-powered single-board microcontroller developed by Atmel. It consists of an Atmel ATmega169PV Microcontroller, a liquid crystal display, joystick, speaker, serial port, real-time clock (RTC), internal flash memory, and sensors for temperature and voltage. The board is the size of a name tag and has a clothing pin on back so it can be worn as such after the user enters their name onto the LCD.

Atmel ARM-based processors are microcontrollers and microprocessors integrated circuits, by Atmel, that are based on various 32-bit ARM processor cores, with Atmel-designed peripherals and tool support. Atmel ARM families complement their 8-bit AVR and 32-bit AVR32 lines of microcontrollers.


The AVR32 is a 32-bit RISC microcontroller architecture produced by Atmel. The microcontroller architecture was designed by a handful of people educated at the Norwegian University of Science and Technology, including lead designer Øyvind Strøm and CPU architect Erik Renno in Atmel's Norwegian design center.

ARM9 is a group of older 32-bit RISC ARM processor cores licensed by ARM Holdings for microcontroller use. The ARM9 core family consists of ARM9TDMI, ARM940T, ARM9E-S, ARM966E-S, ARM920T, ARM922T, ARM946E-S, ARM9EJ-S, ARM926EJ-S, ARM968E-S, ARM996HS. Since ARM9 cores were released from 1998 to 2006, they are no longer recommended for new IC designs, instead ARM Cortex-A, ARM Cortex-M, ARM Cortex-R cores are preferred.

Programmable system-on-chip Type of integrated circuit

PSoC is a family of microcontroller integrated circuits by Cypress Semiconductor. These chips include a CPU core and mixed-signal arrays of configurable integrated analog and digital peripherals.

SEGGER Microcontroller is a private multinational company dealing in middleware for embedded devices as well as development and programming tools. The company was founded in 1992 and is headquartered in Monheim am Rhein, Germany with US offices in Gardner, Massachusetts and Milpitas, California.

Code Composer Studio integrated development environment

Code Composer Studio is an integrated development environment (IDE) to develop applications for Texas Instruments (TI) embedded processors.

The i.MX range is a family of Freescale Semiconductor proprietary microcontrollers for multimedia applications based on the ARM architecture and focused on low-power consumption. The i.MX application processors are SoCs (System-on-Chip), that integrate many processing units into one die, like the main CPU, a video processing unit and a graphics processing unit for instance. The i.MX products are qualified for automotive, industrial and consumer markets. Most of them are guaranteed for a production lifetime of 10 to 15 years.
Many devices use i.MX processors, such as Ford Sync, Kobo eReader, Amazon Kindle, Zune, Sony Reader, Onyx Boox readers/tablets, SolidRun SOM's, some Logitech Harmony remote controls and Squeezebox radio, some Toshiba Gigabeat mp4 players. The i.MX range was previously known as the "DragonBall MX" family, the fifth generation of DragonBall microcontrollers. i.MX originally stood for "innovative Multimedia eXtension".

BeagleBoard Single-board minicomputer produced by Texas Instruments

The BeagleBoard is a low-power open-source single-board computer produced by Texas Instruments in association with Digi-Key and Newark element14. The BeagleBoard was also designed with open source software development in mind, and as a way of demonstrating the Texas Instrument's OMAP3530 system-on-a-chip. The board was developed by a small team of engineers as an educational board that could be used in colleges around the world to teach open source hardware and software capabilities. It is also sold to the public under the Creative Commons share-alike license. The board was designed using Cadence OrCAD for schematics and Cadence Allegro for PCB manufacturing; no simulation software was used.

ARM express was a line of products from Coridium that are pin compatible with the BASIC Stamp. The ARM express line has been replaced with a system on a chip based on the NXP LPC1114 ARM microcontroller programmable in the ARMbasic dialect of BASIC, C, and Oberon. A compiler converts a high-level language into binary code which is then loaded into flash and then executed.

STM32 ARM Cortex-M based Microcontrollers by STMicroelectronics

STM32 is a family of 32-bit microcontroller integrated circuits by STMicroelectronics. The STM32 chips are grouped into related series that are based around the same 32-bit ARM processor core, such as the Cortex-M7F, Cortex-M4F, Cortex-M3, Cortex-M0+, or Cortex-M0. Internally, each microcontroller consists of the processor core, static RAM, flash memory, debugging interface, and various peripherals.

XMC is a family of microcontroller ICs by Infineon. The XMC microcontrollers use the 32-bit RISC ARM processor cores from ARM Holdings, such as Cortex-M4F and Cortex-M0. XMC stands for "cross-market microcontrollers", meaning that this family can cover due to compatibility and configuration options, a wide range in industrial applications. The family supports three essential trends in the industry: It increases the energy efficiency of the systems, supports a variety of communication standards and reduces software complexity in the development of the application's software environment with the parallel released eclipse-based software tool DAVE.

NXP LPC ARM Cortex-M based Microcontrollers by NXP

LPC is a family of 32-bit microcontroller integrated circuits by NXP Semiconductors. The LPC chips are grouped into related series that are based around the same 32-bit ARM processor core, such as the Cortex-M4F, Cortex-M3, Cortex-M0+, or Cortex-M0. Internally, each microcontroller consists of the processor core, static RAM memory, flash memory, debugging interface, and various peripherals. The earliest LPC series were based on the Intel 8-bit 80C51 core. As of February 2011, NXP had shipped over one billion ARM processor-based chips.

NuttX operating system

NuttX is a real-time operating system (RTOS) with an emphasis on standards compliance and small footprint. Scalable from 8-bit to 32-bit microcontroller environments, the primary governing standards in NuttX are POSIX and ANSI standards. Additional standard APIs from Unix and other common RTOSes are adopted for functionality not available under these standards, or for functionality that is not appropriate for deeply embedded environments – such as fork.

UDOO is a single-board computer with an integrated Arduino Due compatible microcontroller, designed for computer science education, the world of Makers and the Internet of Things.

The MSP432 is a mixed-signal microcontroller family from Texas Instruments. It is based on a 32-bit ARM Cortex-M4F CPU, and extends their 16-bit MSP430 line, with a larger address space for code and data, and faster integer and floating point calculation than the MSP430. Like the MSP430, it has a number of built-in peripheral devices, and is designed for low power requirements.


  1. TI LaunchPad Product Description
  2. http://www.ti.com/lit/ml/spmt284/spmt284.pdf
  3. EK-TM4C123GXL LaunchPad Evaluation Kit
  4. EK-TM4C1294XL Connected LaunchPad Evaluation Kit
  5. http://www.ti.com/tool/cc3100boost
  6. http://www.kentecdisplay.com/plus/view.php?aid=86
  7. https://store.ti.com/BOOSTXL-K350QVG-S1.aspx
  8. http://energia.nu
  9. Joseph Yiu (6 October 2013). The Definitive Guide to ARM® Cortex®-M3 and Cortex®-M4 Processors. Newnes. pp. 562–. ISBN   978-0-12-407918-2.

Further reading