Question
===NEED TO USE ARM ASSEMBLY=== =====ARM SIM==== Safe Control: Program electronic safe in ARM Assembly Similar to this http://www.chegg.com/homework-help/questions-and-answerseed-help-project-comp-science-class-must-arm-assembly-language-requirements-code-got-far--q17035175 Objective: Lern to exrcise compnents on
===NEED TO USE ARM ASSEMBLY===
=====ARM SIM====
Safe Control: Program electronic safe in ARM Assembly
Similar to this http://www.chegg.com/homework-help/questions-and-answerseed-help-project-comp-science-class-must-arm-assembly-language-requirements-code-got-far--q17035175
Objective: Lern to exrcise compnents on the contrller e.g, LEDs, LCD, take inputs and disply output to LEDs and LCD. Allocate memory dynamically for variable user codes. Use only digits 0 - 9 for code and use one of the keys that is not used for digits to be toggle key that can display the entered code on the LCD screen, or to hide the entered code and display * for each entered digit. The Keypad map is assumed to be numbered like so:
Pressing any of the N/A buttons will display a message on the LCD indicating that wrong key is pressed, use digits from 0 to 9. Try again. Once a digit is pressed during programming or attempt to open the lock the message should be cleared.
Safe Control
Program the control unit for an electronic safe.
Each time an input key is pressed the red LEDs should blink to indicate that a key is pressed. For example: 1. If any of the blue keypad keys is pressed both red LEDs must blink. 2. If the left black button is pressed the left red LED must blink 3. If the right black button is pressed the right red LED must blink. To distinguish the output letter from numbers on eight segment LEDs, you must display the period (.) segment. For example, an output of the letter B should also have the period displayed but an output of the number 8 should not display a period.
The 8-Segment display and LEDs will show the status of the safe: U: unlocked L: locked P: programming a code C: confirming a new code F: forgetting an old code A: a programming request was successful 'E': programming fault.
The safe starts unlocked. The safe cannot be locked if there are no valid codes.
To lock the safe (this should work at ANY time): 1. press the left black button (assuming you have valid code).
To unlock the safe (This should work ONLY when the safe is locked): 1. Enter a valid code sequence 2. Press the left black button.
To learn a new code (codes must be minimum 5, and max 16 digits long): 1. Press the right black button once 2. 8-segment should show 'P' 3. Enter a new code sequence 4. Press the right black button again. 5. 8-segment should show 'C' 6. Enter the same code sequence 7. Press the right black button a third time. 8. If the code was correct 8-segment displays 'A' 9. If the code was incorrect 8-segment display 'E'
To forget an old code: 1. Press the right black button 2. 8-segment should show 'P' 3. Enter an old code sequence 4. Press the right black button again. 5. 8-segment should show 'F' 6. Enter the same code sequence 7. Press the right black button a third time 8. If the codes match 8-segment displays 'A' 9. If the codes did not match 8-segment displays 'E
The Keypad map is assumed to be numbered like so: 7 89 Toggle 4 5 6 N/A 1 23 N/A N/A 0 N/A N/A The Keypad map is assumed to be numbered like so: 7 89 Toggle 4 5 6 N/A 1 23 N/A N/A 0 N/A N/AStep 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