A series of baremetal applications running on ARM Cortex-M.
This repo is my sandbox/workshop/laboratory for learning embedded programming "from scratch." It contains a series of projects that mark the path I'm taking from the raw, machine code equivalent of a "Hello world!" up to some kind of hobby OS.
I'll be documenting the journey here, so feel free to follow along if it interests you.
Each subdirectory under projects/ has a small, self-contained project that incorporates a new
concept, tool, or technique that I've learned. Subdirectories are in ascending order according
to how I learned the material.
- LLMs (specifically ChatGPT) are used as the programmer's "rubber-duck": a sounding board for ideation and exploring concepts.
- No code is generated by an LLM, it's all handwritten by me.
- I do ask ChatGPT for non-suggestive code review, occasional syntax tips (like, "What do other assemblers do in scenario X?"), and to explain idioms or useful patterns without code suggestions.