⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 irq_wd.paf.arm

📁 ARM入门的好帮手.包含了从简单到相对较复杂的程序.
💻 ARM
字号:
#line 1

#line 2

#line 3

#line 4

#line 5

#line 6

#line 7

#line 8

#line 9

#line 10

#line 11

#line 12

#line 13

#line 14

#line 15

#line 16

#line 17
;.section ".AT91Lib","ax" 
;.AT91Lib
#line 18
#line 18

#line 19

#line 19

#line 19

#line 19

#line 19

#line 19

#line 19

#line 19

#line 19

#line 19

#line 19

#line 19

#line 19

#line 19

#line 19

#line 19

#line 19

#line 19

#line 19

#line 19

#line 19

#line 19

#line 19

#line 19

#line 19

#line 19

#line 19

#line 19

#line 19

#line 19

#line 19

#line 19

#line 19

#line 19

#line 19

#line 19

#line 19

#line 19

#line 19

#line 19

#line 19

#line 19

#line 19

#line 19

#line 19

#line 19

#line 19

#line 19

#line 19

#line 19

#line 19

#line 19

#line 19

#line 19

#line 19

#line 19

#line 19

#line 19
#define AIC_PRIOR                            0x07    
#line 19

#line 19
#define AIC_SRCTYPE                          0x60    
#line 19
#define AIC_SRCTYPE_INT_LEVEL_SENSITIVE      0x00    
#line 19
#define AIC_SRCTYPE_INT_EDGE_TRIGGERED       0x20    
#line 19
#define AIC_SRCTYPE_EXT_LOW_LEVEL            0x00    
#line 19
#define AIC_SRCTYPE_EXT_NEGATIVE_EDGE        0x20    
#line 19
#define AIC_SRCTYPE_EXT_HIGH_LEVEL           0x40    
#line 19
#define AIC_SRCTYPE_EXT_POSITIVE_EDGE        0x60    
#line 19

#line 19

#line 19

#line 19

#line 19

#line 19
#define AIC_IRQID                    0x1F            
#line 19

#line 19

#line 19

#line 19

#line 19

#line 19
#define AIC_NFIQ                     0x01            
#line 19
#define AIC_NIRQ                     0x02            
#line 19

#line 19

#line 19

#line 19

#line 19

#line 19
#define AIC_BASE                     0xFFFFF000
#line 19

#line 19
	/*END*/
#line 19

#line 19

#line 19

#line 19

#line 19

#line 19

#line 19

#line 19

#line 19

#line 19

#line 19

#line 19

#line 19

#line 19

#line 19

#line 19

#line 19

#line 19

#line 19

#line 19

#line 19
#define ARM_MODE_USER                0x10
#line 19
#define ARM_MODE_FIQ                 0x11
#line 19
#define ARM_MODE_IRQ                 0x12
#line 19
#define ARM_MODE_SVC                 0x13
#line 19
#define ARM_MODE_ABORT               0x17
#line 19
#define ARM_MODE_UNDEF               0x1B
#line 19
#define ARM_MODE_SYS                 0x1F
#line 19

#line 19
#define I_BIT                        0x80
#line 19
#define F_BIT                        0x40
#line 19
#define T_BIT                        0x20
#line 19

#line 19
            /*END*/
#line 19

#line 19

#line 19

#line 19

#line 19

#line 19

#line 19

#line 19

#line 19

#line 19

#line 19
            /*END*/
#line 19

#line 19
#line 20
#line 20

#line 20

#line 20

#line 20

#line 20

#line 20

#line 20

#line 20

#line 20

#line 20

#line 20

#line 20

#line 20

#line 20

#line 20

#line 20

#line 20

#line 20

#line 20

#line 20

#line 20

#line 20

#line 20

#line 20

#line 20

#line 20

#line 20

#line 20

#line 20

#line 20

#line 20
#define WD_WDEN                  0x01        
#line 20
#define WD_RSTEN                 0x02        
#line 20
#define WD_IRQEN                 0x04        
#line 20
#define WD_EXTEN                 0x08        
#line 20
#define WD_OKEY                  0x2340      
#line 20

#line 20

#line 20

#line 20

#line 20

#line 20
#define WD_WDCLKS                0x03        
#line 20
#define WD_WDCLKS_MCK8           0x0
#line 20
#define WD_WDCLKS_MCK32          0x1
#line 20
#define WD_WDCLKS_MCK128         0x2
#line 20
#define WD_WDCLKS_MCK1024        0x3
#line 20

#line 20
#define WD_HPCV                  (0x0F << 2)    
#line 20

#line 20
#define WD_CKEY                  (0x06E << 7)   
#line 20

#line 20

#line 20

#line 20

#line 20

#line 20
#define WD_RSTKEY                0xC071      
#line 20

#line 20

#line 20

#line 20

#line 20

#line 20
#define WD_WDOVF                 0x1         
#line 20

#line 20

#line 20

#line 20

#line 20

#line 20

#line 20
#define WD_TMRKEY                0xD64A0000  
#line 20
#define WD_TESTEN                0x2         
#line 20

#line 20

#line 20
                /*END*/
#line 20

#line 20
#line 21
#line 21

#line 22
            IMPORT      SaveWDHandler
#line 23
            IMPORT      WD_BASE
#line 24

#line 25
PtWDBase
#line 26
            
	.word         WD_BASE
#line 27

#line 28

#line 29

#line 30

#line 31

#line 32

#line 33

#line 34

#line 35

#line 36

#line 37

#line 38
            EXPORT      at91_watch_dog_interrupt_handler
#line 39

#line 40
at91_watch_dog_interrupt_handler
#line 41

#line 42

#line 43
#line 43
#line 43

#line 43
#line 43
#line 43

#line 43
#line 43
#line 43
            sub         r14, r14, 4
#line 43
#line 43
#line 43
            stmfd       sp!, {r14}
#line 43
#line 43
#line 43

#line 43
#line 43
#line 43

#line 43
#line 43
#line 43

#line 43
#line 43
#line 43

#line 43
#line 43
#line 43
            ldr         r14, =AIC_BASE
#line 43
#line 43
#line 43
            str         r14, [r14, 0x100]
#line 43
#line 43
#line 43

#line 43
#line 43
#line 43

#line 43
#line 43
#line 43
            mrs         r14, SPSR
#line 43
#line 43
#line 43
            stmfd       sp!, {r0, r14}
#line 43
#line 43
#line 43

#line 43
#line 43
#line 43

#line 43
#line 43
#line 43
            mrs         r0, CPSR
#line 43
#line 43
#line 43
            bic         r0, r0, I_BIT
#line 43
#line 43
#line 43
            orr         r0, r0, ARM_MODE_SYS
#line 43
#line 43
#line 43
            msr         CPSR_c, r0
#line 43
#line 43
#line 43

#line 43
#line 43
#line 43

#line 43
#line 43
#line 43
            #if 1;  "" == ""
#line 43
#line 43
#line 43
            stmfd       sp!, { r1-r3, r12, r14}
#line 43
#line 43
#line 43
            #else
#line 43
#line 43
#line 43
            stmfd       sp!, { r1-r3, , r12, r14}
#line 43
#line 43
#line 43
            #endif
#line 43
#line 43
#line 43

#line 43
#line 43
#line 43

#line 44

#line 45

#line 46
            ldr         r0, PtWDBase
#line 47

#line 48

#line 49
            ldr         r1, =SaveWDHandler
#line 50
            ldr         r1, [r1]
#line 51
            mov         r14, pc
#line 52
            bx          r1
#line 53

#line 54

#line 55
#line 55
#line 55
   
#line 55
#line 55
#line 55

#line 55
#line 55
#line 55
            #if 1;  "" == ""
#line 55
#line 55
#line 55
            ldmia       sp!, { r1-r3, r12, r14}
#line 55
#line 55
#line 55
            #else
#line 55
#line 55
#line 55
            ldmia       sp!, { r1-r3, , r12, r14}
#line 55
#line 55
#line 55
            #endif
#line 55
#line 55
#line 55

#line 55
#line 55
#line 55

#line 55
#line 55
#line 55
            mrs         r0, CPSR
#line 55
#line 55
#line 55
            bic         r0, r0, ARM_MODE_SYS
#line 55
#line 55
#line 55
            orr         r0, r0, I_BIT | ARM_MODE_IRQ
#line 55
#line 55
#line 55
            msr         CPSR_c, r0
#line 55
#line 55
#line 55

#line 55
#line 55
#line 55

#line 55
#line 55
#line 55
            ldr         r0, =AIC_BASE
#line 55
#line 55
#line 55
            str         r0, [r0, 0x130]
#line 55
#line 55
#line 55

#line 55
#line 55
#line 55

#line 55
#line 55
#line 55
            ldmia       sp!, {r0, r14}
#line 55
#line 55
#line 55
            msr         SPSR_cxsf, r14
#line 55
#line 55
#line 55

#line 55
#line 55
#line 55

#line 55
#line 55
#line 55
            ldmia       sp!, {pc}^
#line 55
#line 55
#line 55

#line 55
#line 55
#line 55

#line 56

#line 57
            /*END*/
#line 58

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -