Documenti di Didattica
Documenti di Professioni
Documenti di Cultura
Preface
The intent of this workshop is to be a place where a person with a few C skills and some microcontroller experience
can familiarize themself with the Tiva C Series parts, Code Composer Studio, TivaWare for C Series and the process
of programming these microcontrollers. If you lack C programming skills, there are many courses on the Internet
where you can gain them ... that knowledge can form the basis for a rewarding career.
If you are migrating from earlier Stellaris devices, please refer to this [1] document for more information.
The labs in this workshop (with the exception of Chapter 15's PWM lab) will also work perfectly well on the
Stellaris LM4F120 LaunchPad ... no changes are required.
Introduction
The Getting Started with the TIVA C
Series TM4C123G LaunchPad
Workshop is an in-depth, hands-on
introduction into Tiva C Series basics
including:
1. Introduction to the ARM
Cortex-M4F and Peripherals
2. Introduction to Code Composer
Studio
3. TivaWare, Initialization and GPIO
4. Interrupts and the Timers
5. ADC12
6. The Hibernation Module
7. USB
8. Memory and Security
9. The Floating-Point Unit
10. BoosterPacks and the Graphics
Library
11. Synchronous Serial Interface
12. UART
13. uDMA
14. Sensor Hub
15. PWM
Each of these sections includes an in-depth lab that will step you through the usage, programming and testing of the
peripheral(s) or tool(s) covered.
Getting Started with the TIVAC Series TM4C123G LaunchPad 2
The workshop labs are constructed using TivaWare[8]. TivaWare is an extensive suite of license and royalty-free
software designed to simplify and speed development of Tiva C Series based microcontroller applications. TivaWare
includes the Peripheral Driver Library and the Graphics Library. The Peripheral Driver library is a set of functions
for controlling the peripherals found on the Tiva C Series family of ARM Cortex-M microcontrollers. All TM4C
devices provide this code in on-board ROM. The TivaWare Graphics Library is a set of graphics primitives and
widgets for creating graphical user interfaces on TIVA C Series microcontroller-based boards that have a graphical
display.
Video [14]
Chapter 15 PWM
Chapter 15 of the workshop covers the PWM module. To complete lab15 you will need a hobby-type servo. If you
are attending a live workshop, the instructor will have several for attendees to use. Otherwise you will need to
purchase one: [20]
Video [21]
Hardware Requirements
To run the labs, you will need the following:
A 32 or 64-bit Windows XP, Windows 7 or Windows 8 laptop with 2G or more of free hard drive space. 1G of
RAM should be considered a minimum more is better.
A laptop with Wi-Fi is highly desirable
If you are working the labs from home, a second monitor will make the process much easier. If you are attending
a live workshop, you are welcome to bring one.
If you are attending a live workshop, please bring a set of earphones or ear-buds.
If you are attending a live workshop, you will receive an evaluation board; otherwise you need to purchase
one.[2]
If you are attending a live workshop, a digital multi-meter will be provided; otherwise you need to purchase one
like the inexpensive version here [23]
If you are attending a live workshop, you will receive a second A-male to micro-B-male USB cable. Otherwise,
you will need to provide your own to complete Lab 7.
If you are attending a live workshop, you will receive a Kentec 3.5 TFT LCD Touch Screen BoosterPack [9]
(Part# EB-LM4F120-L35). Otherwise, you will need to provide your own to complete Lab 10. You can purchase
the BoosterPack directly from the manufacturer [10] or through Newark [24] Electronics.
If you are attending a live workshop, Olimex 8x8 LED BoosterPacks will be available for use with both
modifications. If you want to run this lab from home you will need to obtain and modify the board as detailed in
the chapter 11 lab.
Getting Started with the TIVAC Series TM4C123G LaunchPad 4
If you are attending a live workshop, Sensor Hub BoosterPacks will be available for use. If you want to run this
lab from home you will need to obtain one. [18]
If you are attending a live workshop, modified servos will be available for use. If you want to run this lab from
home you will need to obtain one like this: [20]
Software Requirements
To run the labs, you will need the following:
Code Composer Studio 5.4 or later[25]
TivaWare for C Series [26]
The LM Flash Programmer[27]
The lab installation file found in the Workshop Materials section
The workshop workbook file found in the Workshop Materials section.
A terminal program like HyperTerminal (WinXP) or PuTTY[28]
The Windows side USB examples[29]
GIMP image manipulation tool[30]
Complete instructions for downloading and installing this software is in Chapter 1 of the workbook found in
the Workshop materials section
Workshop Material
The workbook [31] pdf file
The labs installation [32] file (if this file downloads without the exe filename extension, please rename the file to
add it)
The zipped PowerPoint presentation [33]
The Word doc [34] files used to create the workbook
The installation guide [35] for workshop attendees
Videos
Chapter One [36] - Introduction to ARM Cortex-M4F and Peripherals
Lab One [37]
Chapter Two [38] - Code Composer Studio
Chapter Three [39] - Introduction to TivaWare, Initialization and the GPIO
Chapter Four [40] - Interrupts and the Timers
Chapter Five [41] - ADC12
Chapter Six [42] - Hibernation Module
Chapter Seven [43] - USB
Chapter Eight [44] - Memory
Chapter Nine [45] - Floating-Point
Chapter Ten [46] - Boosterpacks and grLib
Chapter Eleven [17] - Synchronous Serial Interface
Chapter Twelve [47] - UART
Chapter Thirteen [48] - uDMA
Chapter Fourteen [19] - Sensor Hub
Getting Started with the TIVAC Series TM4C123G LaunchPad 5
References
[1] http:/ / www. ti. com/ general/ docs/ lit/ getliterature. tsp?literatureNumber=spma050a& fileType=pdf
[2] http:/ / www. ti. com/ tool/ ek-tm4c123gxl
[3] http:/ / www. ti. com/ lsds/ ti/ microcontroller/ tiva_arm_cortex/ c_series/ tm4c_arm_cortex-m4/ overview. page?DCMP=tivac-series&
HQS=tiva
[4] http:/ / www. mentor. com/ embedded-software/
[5] http:/ / www. iar. com/
[6] http:/ / www. keil. com/ arm/ mdk. asp
[7] http:/ / www. ti. com/ tool/ ccstudio
[8] http:/ / www. ti. com/ lsds/ ti/ microcontroller/ tiva_arm_cortex/ c_series/ tm4c_arm_cortex-m4/ tools_software. page?DCMP=tivac-series&
HQS=tivaware#software
[9] http:/ / www. kentecdisplay. com/ uploads/ soft/ Products_spec/ EB-LM4F120-L35_UserGuide_04. pdf
[10] http:/ / www. kentecdisplay. com
[11] http:/ / www. newark. com/ kentec-electronics/ eb-lm4f120-l35/ exp-board-lcd-boosterpack-stellaris/ dp/ 48W2063?Ntt=EB-LM4F120-L35
[12] http:/ / danirebollo. es/ index. php/ items?option=com_content& view=article& showall=1& id=5
[13] http:/ / lcdbpv2. danirebollo. es/
[14] http:/ / www. youtube. com/ watch?v=9Z1u8aXQJAM
[15] https:/ / www. olimex. com/ Products/ MSP430/ Booster/ MSP430-LED8x8-B00STERPACK/
[16] http:/ / www. mouser. com/ new/ olimex/ olimexLED8x8/
[17] http:/ / focus. ti. com/ general/ docs/ video/ Portal. tsp?lang=en& entryid=0_nv7h0opi
[18] http:/ / www. ti. com/ tool/ boostxl-senshub
[19] http:/ / focus. ti. com/ general/ docs/ video/ Portal. tsp?lang=en& entryid=0_qszr1gao
[20] http:/ / www. hobbyking. com/ hobbyking/ store/ __662__HXT900_9g_1_6kg_12sec_Micro_Servo. html
[21] http:/ / focus. ti. com/ general/ docs/ video/ Portal. tsp?entryid=0_p6zf60u8& lang=en
[22] http:/ / trainingcenter. ti. com/ ti/ training/ sessions?1& cName=1056
[23] http:/ / www. harborfreight. com/ catalogsearch/ result?q=multimeter
[24] http:/ / www. newark. com
[25] http:/ / processors. wiki. ti. com/ index. php/ Download_CCS
[26] http:/ / www. ti. com/ tool/ sw-tm4c
[27] http:/ / www. ti. com/ tool/ lmflashprogrammer
[28] http:/ / the. earth. li/ ~sgtatham/ putty/ latest/ x86/ putty. exe
[29] http:/ / www. ti. com/ sw-usb-win
[30] http:/ / www. gimp. org/
[31] http:/ / software-dl. ti. com/ trainingTTO/ trainingTTO_public_sw/ GSW-TM4C123G-LaunchPad/
TM4C123G_LaunchPad_Workshop_Workbook. pdf
[32] http:/ / software-dl. ti. com/ trainingTTO/ trainingTTO_public_sw/ GSW-TM4C123G-LaunchPad/ TM4C123GLaunchPadWorkshopSetup.
exe
[33] http:/ / software-dl. ti. com/ trainingTTO/ trainingTTO_public_sw/ GSW-TM4C123G-LaunchPad/ Tiva_C_Series_LaunchPad. zip
[34] http:/ / software-dl. ti. com/ trainingTTO/ trainingTTO_public_sw/ GSW-TM4C123G-LaunchPad/ docs. zip
[35] http:/ / software-dl. ti. com/ trainingTTO/ trainingTTO_public_sw/ GSW-TM4C123G-LaunchPad/
TM4C123GXL-LaunchPad-Installation-Steps. pdf
[36] http:/ / focus. ti. com/ general/ docs/ video/ Portal. tsp?lang=en& entryid=0_4hsuqbm9
[37] http:/ / focus. ti. com/ general/ docs/ video/ Portal. tsp?lang=en& entryid=0_4ru695kk
[38] http:/ / focus. ti. com/ general/ docs/ video/ Portal. tsp?lang=en& entryid=0_4epje0lu
[39] http:/ / focus. ti. com/ general/ docs/ video/ Portal. tsp?lang=en& entryid=0_jd3hte57
[40] http:/ / focus. ti. com/ general/ docs/ video/ Portal. tsp?lang=en& entryid=0_c6zbo3hd
[41] http:/ / focus. ti. com/ general/ docs/ video/ Portal. tsp?lang=en& entryid=0_j2mev8b9
[42] http:/ / focus. ti. com/ general/ docs/ video/ Portal. tsp?lang=en& entryid=0_d6m3zw1d
[43] http:/ / focus. ti. com/ general/ docs/ video/ Portal. tsp?lang=en& entryid=0_dkpcoqdb
[44] http:/ / focus. ti. com/ general/ docs/ video/ Portal. tsp?lang=en& entryid=0_ubsltbng
[45] http:/ / focus. ti. com/ general/ docs/ video/ Portal. tsp?lang=en& entryid=0_czclnyle
[46] http:/ / focus. ti. com/ general/ docs/ video/ Portal. tsp?lang=en& entryid=0_npo9855h
[47] http:/ / focus. ti. com/ general/ docs/ video/ Portal. tsp?lang=en& entryid=0_5fngemk5
[48] http:/ / focus. ti. com/ general/ docs/ video/ Portal. tsp?lang=en& entryid=0_k1qy7niq
Article Sources and Contributors 6