Git Product home page Git Product logo

ee445l-linux's Introduction

ee445l-linux

A complete repository for writing, compiling and flashing code for the TI Stellaris, along with a sample project. Based on a completely open-source toolchain, without the need to rely on cumbersome development environments.

TM4C123GXL

Tested on OS X. Should work on most GNU/Linux/POSIX environments.

Requirements

Follow the instructions in the next section to install the required packages.

Installing

  1. Create a duplicate of this repository for you own local development by doing the following:

    1. Create a new github repository and name it to your liking. Make sure it is Private.
    2. Open terminal.
    3. Create a bare clone of the repository:
      $ git clone --bare https://github.com/jishminor/ee445l-linux.git
      
    4. Mirror push to the new repository made in step i:
      $ cd ee445l-linux.git
      $ git push --mirror https://github.com/exampleuser/your-repository.git
      
    5. Remove the temporary local repository you created in step iii:
      $ cd ..
      $ rm -rf ee445l-linux.git
      
    6. Now navigate to a directory of your choice and clone your new repository:
      $ git clone https://github.com/exampleuser/your-repository.git
      
  2. In the root directory of your repo, run

    $ bash setup.sh
    

    to install all dependencies.

  3. If prompted to override rwxr-xr-x root/admin for /usr/local/bin/lm4flash, enter y and press enter.

Run Test Project

Hook up an unlocked TM4C via USB on the debug port (top). Move to the TestProject directory then build the project and flash by running:

$ cd TestProject
$ make flash

If all goes correctly, the blue LED should come on and your up and running!

Working on a New Project

The general workflow for beginning a new project is a follows:

  1. Create directory in git root directory corresponding to the lab you are working on (ie lab1, lab2, etc). To use the given gitignore, make sure it is all lower case.
    $ mkdir lab1
    
  2. Copy over Makefile from the TestProject directory into the new lab directory.
    $ cp TestProject/Makefile lab1/
    
  3. Run text editor of choice to modify lab1/Makefile, for example vim
    $ vim lab1/Makefile
    
  4. Find the line
    PROJ_NAME = TestProject
    
    and change it to
    PROJ_NAME = lab1
    
  5. Add all the starter files you need to the lab1 directory and get coding!

Good Practice: The shared directory is great to for placing the modules you write that can be shared across projects. There's already a few in there from ValvanoWare which you will find useful through the semester. To include files from this directory in your projects just place a

#include shared/your_file.h

at the top of a c file which you need the module in.

Usage

To build project in current directory:

$ make

To flash the TM4C:

$ make flash

To clean up the directory:

$ make clean

Authors

Acknowledgments

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.