Question: Write an assembly program that turns on the LED as soon as BTN 0 is pressed and turns it off as soon as it is

Write an assembly program that turns on the LED as soon as BTN0 is pressed and turns it off as soon as it is released. The program must also use TIMER0 timer to measure the duration of pressing the button and print this duration in milliseconds in the terminal window upon the button release. The program must be capable to measure the press duration up to 200 seconds. Configure button pin for falling and rising edge interrupts. Note that by default TIMER0 works in 16-bit mode, that is, it counts up to 0xFFFF and then resets to 0. Make sure to process GPIO and TIMER0 hardware interrupts by using interrupt handlers and NVIC, so no flags polling. WRITE IT IN THIS FORMAT:
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!