====== Microcontroller canonical curriculum ====== :!: //This page is under development.// Following is a list of the typical stuff to work through. It assumes teaching with a high-level language (e.g., C or JALv2). The order may need to be tweaked. * Hello world :: blink LED * Basic interaction, polling :: switch controlled LED * State, switch bouncing debouncing :: toggle LED with switch * S/W debouncing algorithms * delay (inline and function or macro) * "confidence counting" * H/W debouncing * S/R flipflop * Schmitt trigger * Multiple states :: switch toggled multiple LEDs * PWM :: switch stepped LED intensity * ADC :: {something else} stepped LED intensity * Interrupts * External :: switch controlled LED rewrite (w/ and w/o state) * Timers :: blink LED rewrite * Multiple external :: Multiple switch-based {something} * Watchdog timers * Libraries * 7-segment displays * LCD displays * Communication buses * Serial * SPI * I2C * Switch matrices