What is the purpose of the
gpio.h file? Disassemble the gpio.o
file and look at the assembly. Do you see anything related to the
gpio.h file? Explain.
Disassemble the main.o file. Do you see the function call into your gpio.o file? Explain.
Is LED 1 really permanently turned on? Verify using an oscilloscope to see if LED 1 is really turned on continuously. What is the frequency of the signal that you see? How does this related to the CPU clock frequency?
Explain the difference between the GDB commands
stepi. Use the GDB
help command to find the
Explain what this application does and how the C values get passed to the inline assembly function. Hint: use the disassembly function of Soft Console.
Write a simple blinking LED function in Assembler with the following function
void blink(uint8_t num, uint8_t state) where
num is the LED number and
state the state the led
should be put in (0: OFF, 1: ON). Put this function into its own object file.
Call this function from within your C code.
We showed you where the
Reset_Handler is located. Describe what
this function does, and describe the initialization procedure. On which line
and file do we call our actual
main function? Explain.
Create a "Knight Rider" effect with all the LEDs. The LEDs should fade, not just toggle, between each other.
You may work with a partner for this assignment. Submit all C and assembler code as well as a text file containing the answers from the questions asked during the lab, and the post-lab assignment. You can use