Class Central is learner-supported. When you buy through links on our site, we may earn an affiliate commission.

Dartmouth College

C Programming for Hardware

Dartmouth College via Coursera

Overview

Google, IBM & Meta Certificates – 40% Off
One Coursera Plus subscription covers most Professional Certificates on Coursera.
Unlock All Certificates
This course gives you the opportunity to extend your C programming experience into firmware development, writing code that talks straight to a processor. Building, running, and debugging real code, you'll discover how a variable and an address in the memory map are the same idea seen from two directions. Along the way, you'll explore processor, bus, and memory architecture; learn how C data types map to physical memory; and safely interface with memory-mapped registers. You'll manipulate individual bits to drive real peripherals, write interrupt-safe code, and master pointers, type casting, and function-pointer callbacks. Whether you're reinforcing skills or meeting these ideas for the first time, the course's hands-on, self-assessed structure turns understanding into lasting ability. Each lab runs on the same emulated silicon you'd use in practice, so the behavior you observe is the behavior the chip produces. By the end, you'll be ready to pick up an unfamiliar microcontroller, open its reference manual, and start writing real, well-organized code against its hardware.

Syllabus

  • Course Welcome
  • Technical Overview, Processor Architecture and ISA
  • Memory Architecture & Data Representation
  • Advanced Data Pointers and Memory Manipulation
  • Modular Code Design and Event Driven Programming
  • Course Completion and Next Steps

Taught by

Jason Dahlstrom

Reviews

Start your review of C Programming for Hardware

Never Stop Learning.

Get personalized course recommendations, track subjects and courses with reminders, and more.

Someone learning on their laptop while sitting on the floor.