Skip to content

Experiment Navigator ​

Welcome to the Experiment Navigator! This document serves as a guide to the various experiments and resources available for ARM assembly language programming and embedded systems development using the TM4C123G LaunchPad.

ARM Cortex-M4 Assembly Language Basics ​

ExperimentDescription
Experiment 1: Assembly Basics and Program StructureLearn ARM Cortex-M4 architecture, registers, memory mapping, instruction formats, and assembly programming fundamentals.
Experiment 2: Data Processing and Memory OperationsMaster data-processing instructions (arithmetic, logical, barrel shifter), load/store operations, memory addressing modes, and assembler directives for data declaration.
Experiment 3: Control Flow and SubroutinesImplement branching, conditional execution, loop structures (for/while), procedure calls with AAPCS, stack operations (PUSH/POP), and nested procedures.

EK-TM4C123GXL Microcontroller ​

Make sure to have the TM4C123G LaunchPad connected to your computer and the Keil uVision5 IDE is configured and set up for development. To set up the IDE, follow the instructions in the Setup Guide.

ExperimentDescription
Experiment 4: Microcontroller Architecture and GPIO OutputExplore TM4C123 architecture, core peripherals (NVIC, SysTick), memory map, and GPIO configuration for controlling on-board LEDs.
Experiment 5: GPIO Inputs and Interrupt HandlingConfigure GPIO pins as inputs, implement edge-triggered interrupts, handle button debouncing, and manage interrupt priorities using NVIC.
Experiment 6: Hardware Timers and Timing ControlConfigure SysTick for periodic interrupts and delays, program GPTM modules in one-shot and periodic modes, and implement accurate timing for embedded applications.
Experiment 7: Character LCD Display InterfaceInterface with character LCD modules using GPIO, implement initialization sequences, and display text and custom characters.
Experiment 8: Analog-to-Digital Converter (ADC)Configure 12-bit ADC channels, perform single and continuous sampling, read analog sensors, and implement software averaging.
Experiment 9: Universal Asynchronous Receiver-Transmitter (UART)Configure UART for serial communication, implement transmit and receive functions, handle interrupts, and interface with PC terminal applications.

Additional Resources ​