Question: Write UART interrupt driven assembly program that controls the LED brightness by capturing keys pressed on the keyboard. Every press of the ' + '

Write UART interrupt driven assembly program that controls the LED brightness by capturing keys pressed on the keyboard. Every press of the '+' key should increase brightness and every press of the '-' key should decrease it. Upon reaching minimum brightness further presses of the "-" key should not modify it. Similarly maximum brightness must be saturated. The space key should turn the LED off and on at the currently set brightness. The LED control must be implemented within the UART interrupt handler. Implement 32 grades of brightness, generate PWM with period equal 10ms by using TIMER0 and use 0 as initial brightness level. Set initial brightness at 50%.
IN THIS FORMAT PLEASE:
INCLUDE EFR32BG22.inc ; CPU register definitions
INCLUDE terminal.inc ; terminal function definitions
EXPORT main
IMPORT LETIMER_setup ; import names from other code files
IMPORT GPIO_setup
;------------------------------------- ; non-initialized DATA segment in RAM
AREA RAM, DATA, NOINIT, READWRITE, ALIGN=3
;myWord SPACE 4 ; 32-bit variable (MUST BE ALIGHED!)
;myHalf SPACE 2 ; 16-bit variable (MUST BE ALIGHED!)
;myByte SPACE 1 ; 8-bit variable (NO alighment required)
;------------------------------------- ; CODE segment in flash (ROM)
AREA |.text|, CODE, READONLY
main PROC ; main user code
bl Terminal_setup ; setup TeraTerm communication
; bl GPIO_setup ; configure port pins
; bl LETIMER_setup ; start 1-sec timer for periodic events
; your code starts here
loop ; periodic task starts here
b loop ; repeat periodic task
ENDP
;-------------------------------------
;prompt DCB "Enter a number: ",0 ; allocate constant strings here
ALIGN
;constW DCD 15 ; initialized 32-bit constant
;constH DCW 23 ; initialized 16-bit constant
;constB DCB 17 ; initialized 8-bit constant
ALIGN
END

Step by Step Solution

There are 3 Steps involved in it

1 Expert Approved Answer
Step: 1 Unlock blur-text-image
Question Has Been Solved by an Expert!

Get step-by-step solutions from verified subject matter experts

Step: 2 Unlock
Step: 3 Unlock

Students Have Also Explored These Related Programming Questions!