Companion repository to the "Modern Embedded Systems Programming" video course.

Modern Embedded Programming Course

What is it?

This repository is a companion to the "Modern Embedded Systems Programming" video course, which consists of focused, fast-paced, hands-on lessons that teach you how to program embedded microcontrollers in C. The course begins with the fundamentals, but gradually covers increasingly advanced concepts all the way to the contemporary modern embedded programming practice.

The course is specifically designed not just to be watched, but to be actively followed along on your own computer (Windows based PC) and a small, self-contained, very inexpensive evaluation board. This companion web-page provides the project downloads that you can open in a specific embedded toolchain and run on your PC at home.

The goal of the course is not just to teach C--other sources do it already quite well. But there are virtually no courses that would step down to the machine level and show you exactly what happens inside a microcontroller.

So, starting from Lesson 1 you will actually see how the ARM Cortex-M processor executes your code, how it manipulates registers, and how an embedded microcontroller can "do" things in the real world, such as turn on and off an LED.

This deeper understanding will allow you to use the C language more efficiently and with greater confidence. You will gain understanding not just what your program does, but also how the C statements translate to machine instructions and get a sense for how fast the processor can execute them. Also, you will get some familiarity with the ARM Cortex-M core, which will look really good on your resume.

The course has been going from January 2013, but it is never too late to join. Stay tuned...


Comments/Discussion

If you'd like to discuss this course or related subjects, plese use the "Issues" tab.


Contact Information

www.state-machine.com/quickstart

Similar Resources

Several Proteus projects using Arduino Boards and sensors, these were parts of IoT course homework #1.

1. Print Print your name on virtual terminal using one of the Arduino family microcontrollers. 2. Highway Based on the position of the car in highway,

Nov 3, 2021

Practical assignments for the XDU compiler course: The interpreter of function drawing language.

drawing-lang-interpreter Practical assignments for the XDU compiler course: The toy interpreter of function drawing language, written by XDU Zhang Yi(

Sep 30, 2022

Code for Stepper Motors and Robot Kinematics YouTube course

Code for YouTube course: Stepper Motors and Robot Kinematics: Theory and Practice on STM32 This repo contains the code for my YouTube course Stepper M

Jan 6, 2022

Undergrad Course CS252 Project Solutions

191CV210_CS252_PROJECT Details/Documentation for individual project constituting of the following problem statements from the 10th edition of Silbersc

Nov 21, 2021

Bau Bau is a DIY 4 legged quadruped robot inspired for construction robotics course.

Bau-Bau-Robot Bau Bau is a DIY 4 legged quadruped robot inspired for construction robotics course. In this course, we are looking forward to solve a p

Nov 19, 2021

Homework for Computer Aided Geometric Design Course

Homework for Computer Aided Geometric Design Course

Computer Aided Geometric Design Introduction MATH6110P: Computer Aided Geometric Design (Autumn-Winter 2021-2022) Instructors: Renjie Chen Webpage: ht

Sep 10, 2022

The final project for the Udacity C++ Nanodegree Concurrency course

The final project for the Udacity C++ Nanodegree Concurrency course

CPPND: Program a Concurrent Traffic Simulation This is the project for the fourth course in the Udacity C++ Nanodegree Program: Concurrency. Throughou

Oct 15, 2021

Examples for the "Introduction to programming" course given by me and @bzareva @ Faculty of Mathematics and Informatics, Sofia University (2021/22)

Теми от практикумите по "Увод в програмирането", зимен семестър 2021/2022, спец. "Информатика", група 5 Тема 1 (04.10.2021) : Променливи. Типове проме

Dec 3, 2022

All the work I've done in ECE551. A fantastic course.

Welcome to your ece551 git repository. The first thing you should do is git pull Once you have done that, you will see your intial assignment.

Dec 22, 2021
Companion source code for "Programming with C++20 - Concepts, Coroutines, Ranges, and more"
Companion source code for

Companion Source Code for "Programming with C++20 - Concepts, Coroutines, Ranges, and more" 1. Edition Code examples This repository contains runnable

Nov 24, 2022
Public repository for the HPPS course
Public repository for the HPPS course

Syllabus and Material for High Performance Programming and Systems (HPPS) Welcome to the course website for HPPS! While assignment handin is still on

Oct 18, 2022
This is official repository of the course Industrial Informatics LT, Year 2021/22, at University of Modena and Reggio Emilia, held at Fondazione Universitaria di Mantova
This is official repository of the course Industrial Informatics LT, Year 2021/22, at University of Modena and Reggio Emilia, held at Fondazione Universitaria di Mantova

Industrial informatics LT - Mantova - 2021/22 This is official repository of the course Industrial Informatics LT, Year 2020/21, at University of Mode

Jun 27, 2022
This repository is for everyone for Hacktoberfest 2021. Anyone can contribute anything for your Swags (T- Shirt), must be relevant that can add some value to this repository.
This repository is for everyone for Hacktoberfest 2021. Anyone can contribute anything for your Swags (T- Shirt), must be relevant that can add some value to this repository.

Hacktober Fest 2021 For Everyone! Upload Projects or Different Types of Programs in any Language Use this project to make your first contribution to a

Nov 27, 2022
This Repository is created to help fellow coders learn open source contributions. This Repository is created for Hacktoberfest 2021

Hacktoberfest 2021 Follow the README below to get started! This Repository is created to help fellow coders learn open source contributions This Repos

Oct 24, 2022
This repository is a study repository to implement the LCD 16x2 in my project below
 This repository is a study repository to implement the LCD 16x2 in my project below

This repository is a study repository to implement the LCD 16x2 in my project below. Index ?? About ?? Functionalities ?? Deploy ?? Requirements ?? Pi

Jun 7, 2022
Doom port for InfOS - the University of Edinburgh Informatics research operating system used in the UG3 OS course
Doom port for InfOS - the University of Edinburgh Informatics research operating system used in the UG3 OS course

Doom on InfOS InfOS is the Informatics research operating system, designed specifically for the UG3 Operating Systems course. This project aims to por

Aug 20, 2022
Vaccine Monitor app implemented in C with system Programming techniques.Projects implemented as part of the course Syspro K24

System_Programming_Projects Vaccine Monitor app implemented in C with system Programming techniques.Projects implemented as part of the course Syspro

Dec 30, 2021
A C program game that James and I made for a course based off of Oregon Trail

ENGG1340 Course Project 2020/2021 Team members (Alphabetical Order) James & Collin Game description It is the modern era of the 21st Century and Chris

Nov 18, 2022
this is all about the EE222 course project

Embedded_System course project (Folder) 嵌入式 contains all details about EE222 include some code in the project and some homework in this class. (Folder

Oct 1, 2022