Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/electronvector/tiva-launchpad-project-template
A project template for working with the Tiva Launchpad board from TI
https://github.com/electronvector/tiva-launchpad-project-template
Last synced: 6 days ago
JSON representation
A project template for working with the Tiva Launchpad board from TI
- Host: GitHub
- URL: https://github.com/electronvector/tiva-launchpad-project-template
- Owner: ElectronVector
- License: mit
- Created: 2021-02-04T04:26:00.000Z (almost 4 years ago)
- Default Branch: master
- Last Pushed: 2021-06-15T02:22:34.000Z (over 3 years ago)
- Last Synced: 2024-11-11T12:17:08.126Z (2 months ago)
- Language: C
- Size: 3.59 MB
- Stars: 0
- Watchers: 2
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# A Project Template for the Tiva C Series Launchpad
This is an example project for the Tiva C Series Launchpad (EK-TM4C123GXL).
It provides:
- A sample application that blinks the LED on the board in different colors.
- A Vagrant based VM that can be used for building, running tests and deploying to a target board.
- Example unit tests that can be run with Ceedling on the host.
- Builds the TivaWare library and the application for the target.
- Load to the target board.
- Github Actions for automated test runs and building of the target binary (see the Actions tab above).
- A Dockerfile that can be used to build in a container.## Tiva Launchpad
The [Tiva C Series Launchpad (EK-TM4C123GXL)](http://www.ti.com/ww/en/launchpad/launchpads-connected-ek-tm4c123gxl.html) is a low-cost evaluation board from TI for their powerful line of ARM Cortex-M4F-based microcontrollers. You can get it for [about $13](https://store.ti.com/Tiva-C-LaunchPad.aspx).
Tiva C Series Launchpad (EK-TM4C123GXL):
## Requirements
This build environment requires that [Vagrant](http://www.vagrantup.com/downloads) and [Virtualbox](https://www.virtualbox.org/wiki/Downloads) are installed.
## Starting the Environment
Launch the environment with: `vagrant up`.
Connect to it with: `vagrant ssh`.
Exit the environment with `exit`.
## Building and Loading
Execute all unit tests with `ceedling test:all`.
Run a single test with `ceedling test:`, e.g. `ceedling test:led`.
Load the app on the board with: `ceedling load`.
The load command also builds the application if necessary. Just build the application with: `ceedling release`.
## Example Project Description
Included with this environment is an example project with unit tests. When loaded and run the Launchpad LED flashes -- switching between red, green and blue.
There are two software modules -- **state** and **led** -- used to determine the LED color (the state) and to set the color of the LED. Each of these modules implements units tests. Unit tests are in the **test** folder.
In the **led** module, the TivaWare Peripheral Driver Library is used to initialize and control the GPIO pins connected the multi-color LED. This library is in **lib/TivaWare/driverlib** and is built automatically if necessary.
## Using the Docker container
Use run the `ev` script (`ev.bat` on Windows) to execute commands in an environment as defined by the Dockerfile. If the Docker container doesn't exist, it is created when `ev` is first run. Log into the container with `ev --build`. Learn more about the [`ev-build` tool in its repo](https://github.com/ElectronVector/ev-build). Note that the Docker container does not provide USB support for connecting to a board.# TODO
- Update compiler