The Exercises page consists of the following: List of class exercises. List of solutions to each class exercise. Miscellaneous exercises with advanced topics. ============================================================================================================= The exercises were built in a layered fashion. Each class exercise contains "empty" functions that have to be filled in by the students. Each "empty" function contains comments on how and what to do inside. ============================================================================================================= Source code associated with advanced topics was not revealed until the specific topic was discussed at class. For instance, the source code for console IO, is not available in the first exercises. Those routines are part of a library which has been provided in order to build the executables, using console IO capabilities. Excercise 7 is the one in which the students will have to implement the console IO routines. ============================================================================================================= Here is a brief description of the relevant contents: Exercise_1 : Class_1.1.zip : General read write tests. Test DM9000 access, in order to assemble the DM9000 device_id. Exercise_2 : Class_1.2.zip : Turning leds on and off using GPIO. Exercise_3 : Class_2.1.zip : Use timer 4 in order to issue a delay measured by milliseconds. Exercise_4 : Class_2.2.zip : Use timer 4 in order to issue a delay measured by microseconds. Exercise_5 : Class_2.3.zip : Use timer 0 to produce output to the buzzer, using PWM capabilities. Exercise_6 : Class_3.1.zip : Test Timer 4 Isr operation. Trigger an interrupt each second. Check how much time has elapsed since the test was activated. Exercise_7 : Class_4.1.zip : Implement console IO routines. Exercise_8 : Class_4.2.zip : Miscellaneous admission UART tests.Will be covered at class. Exercise_9 : Class_5.1.zip : Test realtime clock. Initialize the clock and print the current time on each interrupt. Exercise_10 : Class_6.1.zip : Test watchdog timer operation. Force the watchdog to issue a board reset after 8 seconds. Clocking_Class: Recalculate Pclock and check correctenss of timer operation based on new settings. IIC Demo: Enumerating IIC on-board devices. Final_Class: Contains the full source code of all the tests. Overall: Contains the full source code of all the tests. Also contains assembly code for CPU cache manipulation and MMU initialization.