Skip to content

Latest commit

 

History

History
68 lines (48 loc) · 2.28 KB

README.md

File metadata and controls

68 lines (48 loc) · 2.28 KB

BareMetal-C

Writing C directly to the hardware!


Setup Documents

These are the instructions to follow to set up your computer to be ready to do assignments.

You need to follow all the steps from 1-4 to have a working environment for the class:

  1. Setup Tools - instructions.
  2. Setup SimulIDE - instructions.
  3. Setup Visual Studio Code (VS Code) - instructions.
  4. Test the whole system - instructions.

Your environment should be ready, but before starting lecture or a new assignment, you should:

  1. Update the system - instructions

Warning: Only perform instructions below if you have problems with Docker Desktop or VS Code. It will erase all your Docker images and reset your VS Code settings and extensions. It will not touch anything else. Your personal data files should remain safe.

But we cannot guarantee that. So, If you follow the Reset instructions below, proceed at your own risk.

  • Reset Docker and VS Code to original state. See instructions

Lecture Notes

  • Download lecture notes from https://github.com/kongkrit/BareMetal-C/tree/main/slides.

  • Right now, the following lecture notes are available. More will be available soon:

    • 00 Intro
    • 01 Welcome to the Digital World
    • 02 From Text to Machine
    • 03 A Full MVC Example
    • 04 Interrupts and Stacks

Reference Documents

These are the reference documents for the class:

  • 1. Read C99 Coding Guildlines here
  • 2. Read C99 Style Guide here
  • 3. Read C99 Operator Precedence here
  • 4. Cheat sheet

Peripherals designed

  • 0xC000-0xC003 toggle switches
  • 0xE000-0xE003 LEDs
  • 0xE010-0xE017 strip LEDs
  • numerical keypad read2clr
  • directional keypad read2clr