; generated by Component: ARM Compiler 5.04 update 1 (build 49) Tool: ArmCC [5040049]
; commandline ArmCC [--list --split_sections --debug -c --asm --interleave -o.\obj\ecap.o --asm_dir=.\lst\ --list_dir=.\lst\ --depend=.\obj\ecap.d --cpu=Cortex-M0 --apcs=interwork -I..\..\..\..\Library\CMSIS\Include -I..\..\..\..\Library\Device\Nuvoton\NM1120\Include -I..\..\..\..\Library\StdDriver\inc -I.\source -IC:\Keil_v5\ARM\RV31\INC -IC:\Keil_v5\ARM\PACK\ARM\CMSIS\3.20.4\CMSIS\Include -D__MICROLIB --omf_browse=.\obj\ecap.crf ..\..\..\..\Library\StdDriver\src\ecap.c]
                          THUMB

                          AREA ||i.ECAP_Close||, CODE, READONLY, ALIGN=1

                  ECAP_Close PROC
;;;52       */
;;;53     void ECAP_Close(ECAP_T *ecap)
000000  6941              LDR      r1,[r0,#0x14]
;;;54     {
;;;55         ecap->CTR0 &= ~ECAP_CTR0_CAPEN_Msk;
000002  2201              MOVS     r2,#1
000004  0752              LSLS     r2,r2,#29
000006  4391              BICS     r1,r1,r2
000008  6141              STR      r1,[r0,#0x14]
;;;56     }
00000a  4770              BX       lr
;;;57     
                          ENDP


                          AREA ||i.ECAP_DisableINT||, CODE, READONLY, ALIGN=2

                  ECAP_DisableINT PROC
;;;90       */
;;;91     void ECAP_DisableINT(ECAP_T* ecap, uint32_t u32Mask)
000000  6942              LDR      r2,[r0,#0x14]
;;;92     {
;;;93         /* Disable input channel interrupt */
;;;94         ecap->CTR0 &= ~u32Mask;
000002  438a              BICS     r2,r2,r1
000004  6142              STR      r2,[r0,#0x14]
000006  2001              MOVS     r0,#1
000008  4901              LDR      r1,|L2.16|
00000a  03c0              LSLS     r0,r0,#15
00000c  6008              STR      r0,[r1,#0]
;;;95     
;;;96         /* Disable NVIC ECAP IRQ */
;;;97         NVIC_DisableIRQ(ECAP_IRQn);
;;;98     }
00000e  4770              BX       lr
;;;99     
                          ENDP

                  |L2.16|
                          DCD      0xe000e180

                          AREA ||i.ECAP_EnableINT||, CODE, READONLY, ALIGN=2

                  ECAP_EnableINT PROC
;;;69       */
;;;70     void ECAP_EnableINT(ECAP_T* ecap, uint32_t u32Mask)
000000  6942              LDR      r2,[r0,#0x14]
;;;71     {
;;;72         /* Enable input channel interrupt */
;;;73         ecap->CTR0 |= u32Mask;
000002  430a              ORRS     r2,r2,r1
000004  6142              STR      r2,[r0,#0x14]
000006  2001              MOVS     r0,#1
000008  4901              LDR      r1,|L3.16|
00000a  03c0              LSLS     r0,r0,#15
00000c  6008              STR      r0,[r1,#0]
;;;74     
;;;75         /* Enable NVIC ECAP IRQ */
;;;76         NVIC_EnableIRQ(ECAP_IRQn);
;;;77     }
00000e  4770              BX       lr
;;;78     
                          ENDP

                  |L3.16|
                          DCD      0xe000e100

                          AREA ||i.ECAP_Open||, CODE, READONLY, ALIGN=1

                  ECAP_Open PROC
;;;36       */
;;;37     void ECAP_Open(ECAP_T* ecap, uint32_t u32FuncMask)
000000  6942              LDR      r2,[r0,#0x14]
;;;38     {
;;;39         /* Clear Input capture mode*/
;;;40         ecap->CTR0 = ecap->CTR0 & ~(ECAP_CTR0_RLDEN_Msk | ECAP_CTR0_CMPEN_Msk);
000002  2303              MOVS     r3,#3
000004  06db              LSLS     r3,r3,#27
000006  439a              BICS     r2,r2,r3
000008  6142              STR      r2,[r0,#0x14]
;;;41     
;;;42         /* Enable Input Capture and set mode */
;;;43         ecap->CTR0 |= ECAP_CTR0_CAPEN_Msk |
00000a  6942              LDR      r2,[r0,#0x14]
00000c  06c9              LSLS     r1,r1,#27
00000e  2301              MOVS     r3,#1
000010  075b              LSLS     r3,r3,#29
000012  4319              ORRS     r1,r1,r3
000014  430a              ORRS     r2,r2,r1
000016  6142              STR      r2,[r0,#0x14]
;;;44                       ((u32FuncMask) << ECAP_CTR0_RLDEN_Pos);
;;;45     }
000018  4770              BX       lr
;;;46     
                          ENDP


;*** Start embedded assembler ***

#line 1 "..\\..\\..\\..\\Library\\StdDriver\\src\\ecap.c"
	AREA ||.rev16_text||, CODE
	THUMB
	EXPORT |__asm___6_ecap_c_a4a94a4e____REV16|
#line 118 "..\\..\\..\\..\\Library\\CMSIS\\Include\\core_cmInstr.h"
|__asm___6_ecap_c_a4a94a4e____REV16| PROC
#line 119

 rev16 r0, r0
 bx lr
	ENDP
	AREA ||.revsh_text||, CODE
	THUMB
	EXPORT |__asm___6_ecap_c_a4a94a4e____REVSH|
#line 132
|__asm___6_ecap_c_a4a94a4e____REVSH| PROC
#line 133

 revsh r0, r0
 bx lr
	ENDP

;*** End   embedded assembler ***
