Welcome To Micropedia!
If you are new to embedded systems and want to learn a little faster than I did, Micropedia is built with you in mind!
The articles here do assume you have a basic understanding of computer architecture (e.g. what a clock is, the different logic gates, maybe how Assembly language works, etc.) which you'd get from any introductory book or university module, but if you don't that's okay! You might have to just read up when you come across an unfamiliar concept.
The reason for this assumption is because Micropedia is built for those who want to learn register-level programming instead of abstractions like the STM32 HAL. As such, the articles have to be hardware-specific and so are focused on the STM32 microcontroller family, in particular the STM32H7RS series.
This is owned and maintained by @yani-again. I'm a 2nd year university student in Computer Science and I became heavily interested in embedded systems during my most recent semester.
However, as I tried to learn (first on a Raspberry Pi Pico and now an STM32), I found existing resources rarely taught register-level programming to people with little microcontroller knowledge - especially the datasheets and reference manuals, which are usually targeted at more seasoned developers.
So, I made my own resource!
Every article in Micropedia tries to answer one core question: “what did I need to learn before I felt confident that I understood this topic?”
I also want to clarify this isn't a complete reference manual or something designed to replace credible sources, Micropedia focuses on the concepts, assumptions, mistakes, and insights that helped me learn bare-metal.
If you're new to embedded systems and want to understand what's happening beneath the abstractions, I hope these notes help you learn a little faster than I did.
Just don't expect example code (at least not in most articles) - the goal of Micropedia is to teach concepts and occasionally mention specific register names when it makes sense, I'm not trying to make this into a coding guide, unless an article states otherwise.
NOTE! I'm still a university student who's very much learning, so mistakes will definitely happen. If you spot one, have a suggestion, or just extra context to add, please let me know through GitHub.
Recent Articles
Some Of My Favourite Sources
In case you want to research yourself.