; generated by Component: ARM Compiler 5.06 update 4 (build 422) Tool: ArmCC [4d3604]
; commandline ArmCC [--c99 --list --split_sections --debug -c --asm --interleave -o.\obj\lib_driver_wdt_pan159.o --asm_dir=.\lst\ --list_dir=.\lst\ --depend=.\obj\lib_driver_wdt_pan159.d --cpu=Cortex-M0 --apcs=interwork -O3 --diag_suppress=9931 -I..\..\..\Library\CMSIS\Include -I..\..\..\Library\Device\Nuvoton\Mini58Series\Include -I..\..\..\Library\StdDriver\inc -I..\..\Template -I..\..\..\Library\StdDriver\driver -I.\RTE\_Template -ID:\Keil_v5\ARM\PACK\Nuvoton\NuMicro_DFP\1.0.9\Device\Mini58\Include -ID:\Keil_v5\ARM\CMSIS\Include -D__MICROLIB -D__UVISION_VERSION=523 --omf_browse=.\obj\lib_driver_wdt_pan159.crf ..\..\..\Library\StdDriver\driver\lib_driver_wdt_pan159.c]
                          THUMB

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

                  DrvWDT_Feed PROC
;;;33     
;;;34     void DrvWDT_Feed(void)
000000  4803              LDR      r0,|L1.16|
;;;35     {
;;;36         WDT_RESET_COUNTER();
000002  6801              LDR      r1,[r0,#0]
000004  222c              MOVS     r2,#0x2c
000006  4391              BICS     r1,r1,r2
000008  2201              MOVS     r2,#1
00000a  4311              ORRS     r1,r1,r2
00000c  6001              STR      r1,[r0,#0]
;;;37     }
00000e  4770              BX       lr
;;;38     
                          ENDP

                  |L1.16|
                          DCD      0x40004000

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

                  DrvWDT_Init PROC
;;;22     */
;;;23     void DrvWDT_Init(uint32_t u32TimeoutInterval)
000000  b570              PUSH     {r4-r6,lr}
;;;24     {
000002  4604              MOV      r4,r0
000004  2059              MOVS     r0,#0x59
000006  490b              LDR      r1,|L2.52|
000008  2316              MOVS     r3,#0x16
00000a  2288              MOVS     r2,#0x88
                  |L2.12|
00000c  6008              STR      r0,[r1,#0]
00000e  600b              STR      r3,[r1,#0]
000010  600a              STR      r2,[r1,#0]
000012  680d              LDR      r5,[r1,#0]
000014  2d00              CMP      r5,#0
000016  d0f9              BEQ      |L2.12|
;;;25         SYS_UnlockReg();
;;;26         CLK->CLKSEL1 |= 0x00000003;
000018  4807              LDR      r0,|L2.56|
00001a  6941              LDR      r1,[r0,#0x14]
00001c  2503              MOVS     r5,#3
00001e  4329              ORRS     r1,r1,r5
000020  6141              STR      r1,[r0,#0x14]
;;;27         SystemCoreClockUpdate();
000022  f7fffffe          BL       SystemCoreClockUpdate
;;;28         WDT->CTL = u32TimeoutInterval | WDT_CTL_WDTEN_Msk |
000026  2082              MOVS     r0,#0x82
000028  4304              ORRS     r4,r4,r0
00002a  4804              LDR      r0,|L2.60|
00002c  6004              STR      r4,[r0,#0]
;;;29                    (TRUE << WDT_CTL_RSTEN_Pos) |
;;;30                    (FALSE << WDT_CTL_WKEN_Pos);
;;;31         WDT->ALTCTL = WDT_RESET_DELAY_3CLK;
00002e  6045              STR      r5,[r0,#4]
;;;32     }
000030  bd70              POP      {r4-r6,pc}
;;;33     
                          ENDP

000032  0000              DCW      0x0000
                  |L2.52|
                          DCD      0x50000100
                  |L2.56|
                          DCD      0x50000200
                  |L2.60|
                          DCD      0x40004000

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

                  DrvWDT_close PROC
;;;38     
;;;39     void DrvWDT_close(void)
000000  4901              LDR      r1,|L3.8|
;;;40     {
;;;41         WDT->CTL = 0;
000002  2000              MOVS     r0,#0
000004  6008              STR      r0,[r1,#0]
;;;42     }
000006  4770              BX       lr
;;;43     
                          ENDP

                  |L3.8|
                          DCD      0x40004000

;*** Start embedded assembler ***

#line 1 "..\\..\\..\\Library\\StdDriver\\driver\\lib_driver_wdt_pan159.c"
	AREA ||.rev16_text||, CODE
	THUMB
	EXPORT |__asm___23_lib_driver_wdt_pan159_c_f9ea1963____REV16|
#line 388 "..\\..\\..\\Library\\CMSIS\\Include\\cmsis_armcc.h"
|__asm___23_lib_driver_wdt_pan159_c_f9ea1963____REV16| PROC
#line 389

 rev16 r0, r0
 bx lr
	ENDP
	AREA ||.revsh_text||, CODE
	THUMB
	EXPORT |__asm___23_lib_driver_wdt_pan159_c_f9ea1963____REVSH|
#line 402
|__asm___23_lib_driver_wdt_pan159_c_f9ea1963____REVSH| PROC
#line 403

 revsh r0, r0
 bx lr
	ENDP

;*** End   embedded assembler ***
