Skip to content

Importing External Libraries

We have prepared several libraries to help you use the board peripherals more easily and modularly. These libraries allow you to write cleaner code without having to configure all registers manually.


LibraryDescription
buttonsDriverManages hardware buttons with debouncing, and supports click, double click, and long press callbacks.
displayIncludes Texas Instruments drivers for the Crystalfontz 128×128 ST7735 LCD display.
timerLibInitializes a hardware timer to control time-based events without using SysTick. Ideal for periodic tasks.
elapsedTimeWorks with timerLib to measure elapsed time between events easily using one timer source.
HAL_TM4C1294XLDefines pin names and mappings for the TM4C1294XL to make code clearer and portable.
joystickDriverSimplifies joystick input: provides Cartesian and polar coordinates, plus callbacks for directional events (N, S, E, W).
PLLCalculates the actual MCU frequency after PLL configuration so timing values stay accurate.

When you open your workspace, you will find two main folders:

  • DirectoryLab_x
    • DirectoryLab_x_workspace
    • Directorylibraries
      • DirectorybuttonsDriver
      • Directorydisplay
      • DirectorytimerLib
      • DirectoryelapsedTime
      • DirectoryHAL_TM4C1294XL
      • DirectoryjoystickDriver
      • DirectoryPLL

Importing the Libraries into Code Composer Studio

Section titled “Importing the Libraries into Code Composer Studio”
  1. Open your CCS workspace.
  2. Drag the entire libraries folder into the CCS Project Explorer panel.

Drag libraries folder into CCS
Drag the libraries folder into Code Composer Studio

  1. When the import dialog appears, choose:
    • Link to files and recreate folder structure with virtual folders
    • Create link location relative to PROJECT_LOC

CCS link to files options
Always link files relative to PROJECT_LOC

  1. CCS will then ask if you want to add include paths automatically. Select:
    • Do this for all header files currently being added
    • Yes

Include path confirmation
Confirm include path for all header files


After importing, your project should look like this:

Project structure after importing libraries
Project structure with linked libraries folder


To confirm everything is correctly linked:

  1. Right-click your project → Properties
  2. Navigate to:
    Build → ARM Compiler → Include Options
  3. You should see entries similar to:
    ${PROJECT_LOC}/libraries/buttonsDriver
    ${PROJECT_LOC}/libraries/display
    ${PROJECT_LOC}/libraries/timerLib
    ${PROJECT_LOC}/libraries/elapsedTime
    ${PROJECT_LOC}/libraries/HAL_TM4C1294XL
    ${PROJECT_LOC}/libraries/joystickDriver
    ${PROJECT_LOC}/libraries/PLL

Verify include paths in CCS
Include paths confirmation in CCS project properties


✅ Once all libraries are linked and visible in Project Explorer, you can include them in your code normally:

#include "buttonDriver.h"
#include "timerLib.h"
#include "elapsedTime.h"
#include "HAL_TM4C1294XL.h"

You are now ready to use modular drivers and utilities for your Lab development!