Lab 1: The purpose of this assignment is to exercise C programming immediately on the bare metal computer hardware, and to concretely illustrate some of the fundamental limitations of ordinary sequential programming.
Grade: Passed!
Lab 2: The purpose of this lab assignment is to provide insights into the techniques by which multiple parallel threads can be implemented on a single sequential processor.
Grade: Passed!
Lab 3: Explore the benefits of threaded concurrency by revisiting the problem studied in lab 1.
Grade: Passed!
Lab 4: Exercise programming according to the reactive objects model of TinyTimber kernel, and in particular, gain acquaintance with event baselines and the AFTER primitive. The concrete task is to implement two separate pulse generators on the AVR Butterfly, and a Graphical User Interface (GUI) for controlling them using the on-board joystick and display.
Grade: Passed!
Lab 5: This assignment is about implementing a program for controlling car access to a narrow bridge by means of traffic lights. The lab will consist of two parts that work together: The AVR butterfly will be the traffic light controller and the PC will be the car simulator. The PC and the AVR butterfly will communicate by means of a serial cable.
Grade: