Question
Write a program in PLP assembly that repeatedly reads the value of the switches (address: 0xf0100000) and displays a pattern on the LED array based
Write a program in PLP assembly that repeatedly reads the value of the switches (address: 0xf0100000) and displays a pattern on the LED array based on what switches. Each time the switch value is read, the pattern should be displayed (regardless of whether the switch value has changed or not since the last time it was read). The table below indicates the pattern that should be displayed for each possible switch setting:
Hint: Logical shifts are not required to complete this project, but they can be used to make your program shorter and more readable than hard coding every value to be written to the LEDs. Shifts can also be useful to generate the value that you compare with the value of the switches.
Learning Objectives: Use PLP branch instructions . Read from a memory mapped I/O device The Task: Write a program in PLP assembly that repeatedly reads the value of the switches (address: Oxfe100000) and displays a pattern on the LED array based on what switches. Each time the switch value is read, the pattern should be displayed (regardless of whether the switch value has changed or not since the last time it was read) The table below indicates the pattern that should be displayed for each possible switch setting Switch LED Pattern Hexadecimal Switch Value Switch Value Switch Value 0x00000001 0b00000001 Binary Decimal Number Turn on all 8 LEDs and then turn off all 8 LEDS Turn on all even numbered LEDs and then turn off all 8 LEDs Turn on all odd numbered LEDs and then turn off all 8 LEDs Cycle through all 8 LEDs in order with only one LED on at a time (a marquee) All LEDs off 1 0x000000020b00000010 2 2 0x00000004 0b00000100 4 0x000000080b00001000 8 Other Other Other Other Hint: Logical shifts are not required to complete this project, but they can be used to make your program shorter and more readable than hard coding every value to be written to the LEDs. Shifts can also be useful to generate the value that you compare with the value of the switches Learning Objectives: Use PLP branch instructions . Read from a memory mapped I/O device The Task: Write a program in PLP assembly that repeatedly reads the value of the switches (address: Oxfe100000) and displays a pattern on the LED array based on what switches. Each time the switch value is read, the pattern should be displayed (regardless of whether the switch value has changed or not since the last time it was read) The table below indicates the pattern that should be displayed for each possible switch setting Switch LED Pattern Hexadecimal Switch Value Switch Value Switch Value 0x00000001 0b00000001 Binary Decimal Number Turn on all 8 LEDs and then turn off all 8 LEDS Turn on all even numbered LEDs and then turn off all 8 LEDs Turn on all odd numbered LEDs and then turn off all 8 LEDs Cycle through all 8 LEDs in order with only one LED on at a time (a marquee) All LEDs off 1 0x000000020b00000010 2 2 0x00000004 0b00000100 4 0x000000080b00001000 8 Other Other Other Other Hint: Logical shifts are not required to complete this project, but they can be used to make your program shorter and more readable than hard coding every value to be written to the LEDs. Shifts can also be useful to generate the value that you compare with the value of the switchesStep by Step Solution
There are 3 Steps involved in it
Step: 1
Get Instant Access to Expert-Tailored Solutions
See step-by-step solutions with expert insights and AI powered tools for academic success
Step: 2
Step: 3
Ace Your Homework with AI
Get the answers you need in no time with our AI-driven, step-by-step assistance
Get Started