The Microcontroller course follows the Digital Logic course, but it can be used independently. It targets second-semester university students, and it assumes some knowledge of digital design and some exposure to basic programming in C, Java, or a related language.
This course is built around a series of hands-on design projects that illustrate and reinforce the concepts presented in the readings and lectures. Initial projects introduce the ARM architecture and Assembly language programming, and later projects use C and introduce interrupts, the AXI bus, and the many on-chip and on-board peripherals.
Xilinx’s free SDK tool is used for design entry and to program and debug the Blackboard. A standard hardware definition file makes all Blackboard’s sensors and ports available as memory-mapped peripherals, so no knowledge of hardware design is needed. By the end of the course, students are able to write ARM Assembly programs, use the ARM interrupt system, and write higher-level C programs to access all on-chip peripherals.