CPTR-215 Assembly Language Programming


HW#15. Due Wednesday.

Read sections 9.1 and 9.2 for sure in the text. Would be good read 9.3 as well.

A goal for this homework is to use the hardware boards for the first time. Modify the blink8 program that I demonstrated in class so that rather than all eight LEDs turning on together they turn on in a particular sequence that repeats endlessly. I'll let you be creative in determining the sequence you wish to implement, but the minimum would be to have two LEDS that alternately turn on and off at a rate that humans can see and thereby allow counting the number of flashes.

A more advanced solution might be a light that appears to travel down a row of lamps.

You can use the blink8.s source file to start your solution (its also on the K: drive as k:class\cptr\215\blink8.s). Or if you wish to start the program with a "clean page" you can use shell_2148.s file that has the setup code for the hardware board but no main program (also available on the k: drive as k:class\cptr\215\shell_hdwr.s).

Run your program on the ARM embedded boards. You can look at the contents of memory with the debugger either as you single step the program or after it runs. Turn in hardcopy of your program at class time. On your hardcopy write a note stating if or not the program worked. And, email me a copy of your program.

As mentioned last Wednesday in class, we will be using the hardware in the Linux lab. You will need to install the virtual MS Windows XP environment by following these instructions (pdf)

Once the virtual windows environment is loaded and started you can click on the Keil uVision icon and start the Keil software. To set up the Keil environment for downloading to the hardware board and debugging see the download notes (pdf). There may be an error message displayed when you try to download because the path to a file needed by the download routines is not set properly. Refer to help with download error (pdf).

Turn in a hardcopy with a note about success or failure and email me a copy of your source (.s) file.


Larry Aamodt PhD, PE
Professor of Engineering and Computer Science
Walla Walla College
Contact:
via email: AamoLa (at) wallawalla.edu
via phone: x2058