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

📄 timer.txt

📁 SMDK2442所有设备的驱动测试程序。运行monitor程序
💻 TXT
📖 第 1 页 / 共 5 页
字号:
000ae0  e5900008          LDR      r0,[r0,#8]
000ae4  e3800850          ORR      r0,r0,#0x500000
000ae8  e3a01451          MOV      r1,#0x51000000
000aec  e5810008          STR      r0,[r1,#8]
;;;338        
;;;339        //Auto reload,Inverter off,No operation,Dead zone disable,Start
;;;340    	
;;;341        while(1)
000af0  e1a00000          NOP      
                  |L1.2804|
000af4  e1a00000          NOP      
;;;342        {
;;;343         if(variable4 == 8)
000af8  e59f01ac          LDR      r0,|L1.3244|
000afc  e5900000          LDR      r0,[r0,#0]  ; variable4
000b00  e3500008          CMP      r0,#8
000b04  1a000000          BNE      |L1.2828|
;;;344         break;
000b08  ea000000          B        |L1.2832|
;;;345        }
                  |L1.2828|
000b0c  eafffff8          B        |L1.2804|
;;;346          
;;;347        //Delay(1); //To compensate timer error(<1 tick period)
;;;348        
;;;349        rTCON = 0x0; //Stop Timers
                  |L1.2832|
000b10  e3a00000          MOV      r0,#0
000b14  e3a01451          MOV      r1,#0x51000000
000b18  e5810008          STR      r0,[r1,#8]
;;;350       
;;;351        if(variable4==8 && variable3==4 && variable2==2 && variable1==1 && variable0==1)
000b1c  e59f0188          LDR      r0,|L1.3244|
000b20  e5900000          LDR      r0,[r0,#0]  ; variable4
000b24  e3500008          CMP      r0,#8
000b28  1a000012          BNE      |L1.2936|
000b2c  e59f017c          LDR      r0,|L1.3248|
000b30  e5900000          LDR      r0,[r0,#0]  ; variable3
000b34  e3500004          CMP      r0,#4
000b38  1a00000e          BNE      |L1.2936|
000b3c  e59f0170          LDR      r0,|L1.3252|
000b40  e5900000          LDR      r0,[r0,#0]  ; variable2
000b44  e3500002          CMP      r0,#2
000b48  1a00000a          BNE      |L1.2936|
000b4c  e59f0164          LDR      r0,|L1.3256|
000b50  e5900000          LDR      r0,[r0,#0]  ; variable1
000b54  e3500001          CMP      r0,#1
000b58  1a000006          BNE      |L1.2936|
000b5c  e59f0158          LDR      r0,|L1.3260|
000b60  e5900000          LDR      r0,[r0,#0]  ; variable0
000b64  e3500001          CMP      r0,#1
000b68  1a000002          BNE      |L1.2936|
;;;352        {
;;;353            Uart_Printf("Timer 0,1,2,3,4 Auto-reload Interrupt Test => OK!\n");
000b6c  e28f0f63          ADR      r0,|L1.3328|
000b70  ebfffffe          BL       Uart_Printf
000b74  ea000001          B        |L1.2944|
;;;354        }        
;;;355        else
;;;356        {
;;;357            Uart_Printf("Timer 0,1,2,3,4 Auto-reload Interrupt Test => Fail............\n");
                  |L1.2936|
000b78  e28f0f6d          ADR      r0,|L1.3380|
000b7c  ebfffffe          BL       Uart_Printf
;;;358        }    
;;;359        Uart_Printf("Timer0: %d (=1)\nTimer1: %d (=1)\nTimer2: %d (=2)\nTimer3: %d (=4)\nTimer4: %d (=8)\n",
                  |L1.2944|
000b80  e59f0124          LDR      r0,|L1.3244|
000b84  e5903000          LDR      r3,[r0,#0]  ; variable4
000b88  e59f0120          LDR      r0,|L1.3248|
000b8c  e5902000          LDR      r2,[r0,#0]  ; variable3
000b90  e59f011c          LDR      r0,|L1.3252|
000b94  e88d000c          STMIA    sp,{r2,r3}
000b98  e5903000          LDR      r3,[r0,#0]  ; variable2
000b9c  e59f0114          LDR      r0,|L1.3256|
000ba0  e5902000          LDR      r2,[r0,#0]  ; variable1
000ba4  e59f0110          LDR      r0,|L1.3260|
000ba8  e5901000          LDR      r1,[r0,#0]  ; variable0
000bac  e59f01c0          LDR      r0,|L1.3444|
000bb0  ebfffffe          BL       Uart_Printf
;;;360            variable0,variable1,variable2,variable3,variable4);        
;;;361    	
;;;362    	/* OneShot Test */
;;;363      	variable0 = 0;variable1 = 0;variable2 = 0;variable3 = 0;variable4 = 0;
000bb4  e3a00000          MOV      r0,#0
000bb8  e59f10fc          LDR      r1,|L1.3260|
000bbc  e5810000          STR      r0,[r1,#0]  ; variable0
000bc0  e3a00000          MOV      r0,#0
000bc4  e59f10ec          LDR      r1,|L1.3256|
000bc8  e5810000          STR      r0,[r1,#0]  ; variable1
000bcc  e3a00000          MOV      r0,#0
000bd0  e59f10dc          LDR      r1,|L1.3252|
000bd4  e5810000          STR      r0,[r1,#0]  ; variable2
000bd8  e3a00000          MOV      r0,#0
000bdc  e59f10cc          LDR      r1,|L1.3248|
000be0  e5810000          STR      r0,[r1,#0]  ; variable3
000be4  e3a00000          MOV      r0,#0
000be8  e59f10bc          LDR      r1,|L1.3244|
000bec  e5810000          STR      r0,[r1,#0]  ; variable4
;;;364      	
;;;365      	rTCON   = rTCON & ~(0xffffff) | 0x6aaa0a;         
000bf0  e3a00451          MOV      r0,#0x51000000
000bf4  e5900008          LDR      r0,[r0,#8]
000bf8  e20004ff          AND      r0,r0,#0xff000000
000bfc  e51f156c          LDR      r1,|L1.1688|
000c00  e1800001          ORR      r0,r0,r1
000c04  e3a01451          MOV      r1,#0x51000000
000c08  e5810008          STR      r0,[r1,#8]
;;;366      	//Auto reload, Inverter off, Manual update, Dead zone disable, Stop  
;;;367        rTCON   = rTCON & ~(0xffffff) | 0x1 |(0x1)<<8| (0x1)<<12 | (0x1)<<16 | (0x1)<<20 ; 
000c0c  e3a00451          MOV      r0,#0x51000000
000c10  e5900008          LDR      r0,[r0,#8]
000c14  e20004ff          AND      r0,r0,#0xff000000
000c18  e59f1158          LDR      r1,|L1.3448|
000c1c  e1800001          ORR      r0,r0,r1
000c20  e3a01451          MOV      r1,#0x51000000
000c24  e5810008          STR      r0,[r1,#8]
;;;368        //T0,1,2,3,4= One-shot,Inverter off,No operation,Dead zone disable,Start
;;;369    
;;;370    	while(variable0 == 0);     
000c28  e1a00000          NOP      
                  |L1.3116|
000c2c  e59f0088          LDR      r0,|L1.3260|
000c30  e5900000          LDR      r0,[r0,#0]  ; variable0
000c34  e3500000          CMP      r0,#0
000c38  0afffffb          BEQ      |L1.3116|
;;;371        
;;;372        Delay(1); //To compensate timer error(<1 tick period)
000c3c  e3a00001          MOV      r0,#1
000c40  ebfffffe          BL       Delay
;;;373        rTCON = 0x0; //One-shot, Inverter off, No operation, Dead zone disable, Stop
000c44  e3a00000          MOV      r0,#0
000c48  e3a01451          MOV      r1,#0x51000000
000c4c  e5810008          STR      r0,[r1,#8]
;;;374       
;;;375        if(variable4==1 && variable3==1 && variable2==1 && variable1==1 && variable0==1)
000c50  e59f0054          LDR      r0,|L1.3244|
000c54  e5900000          LDR      r0,[r0,#0]  ; variable4
000c58  e3500001          CMP      r0,#1
000c5c  1a000052          BNE      |L1.3500|
000c60  e59f0048          LDR      r0,|L1.3248|
000c64  e5900000          LDR      r0,[r0,#0]  ; variable3
000c68  e3500001          CMP      r0,#1
000c6c  1a00004e          BNE      |L1.3500|
000c70  e59f003c          LDR      r0,|L1.3252|
000c74  e5900000          LDR      r0,[r0,#0]  ; variable2
000c78  e3500001          CMP      r0,#1
000c7c  1a00004a          BNE      |L1.3500|
000c80  e59f0030          LDR      r0,|L1.3256|
000c84  e5900000          LDR      r0,[r0,#0]  ; variable1
000c88  e3500001          CMP      r0,#1
000c8c  1a000046          BNE      |L1.3500|
000c90  e59f0024          LDR      r0,|L1.3260|
000c94  e5900000          LDR      r0,[r0,#0]  ; variable0
000c98  e3500001          CMP      r0,#1
000c9c  1a000042          BNE      |L1.3500|
;;;376        {
;;;377            Uart_Printf("Timer 0,1,2,3,4 One-shot Interrupt Test => OK!\n");
000ca0  e28f00d4          ADR      r0,|L1.3452|
000ca4  ebfffffe          BL       Uart_Printf
000ca8  ea000041          B        |L1.3508|
                  |L1.3244|
000cac  0000001c          DCD      ||.bss$2|| + 28
                  |L1.3248|
000cb0  00000018          DCD      ||.bss$2|| + 24
                  |L1.3252|
000cb4  00000014          DCD      ||.bss$2|| + 20
                  |L1.3256|
000cb8  00000010          DCD      ||.bss$2|| + 16
                  |L1.3260|
000cbc  0000000c          DCD      ||.bss$2|| + 12
                  |L1.3264|
000cc0  00000000          DCD      Timer0Done
                  |L1.3268|
000cc4  31fff000          DCD      0x31fff000
                  |L1.3272|
000cc8  00000000          DCD      Timer1Done
                  |L1.3276|
000ccc  00000000          DCD      Timer2Done
                  |L1.3280|
000cd0  00000000          DCD      Timer3Done
                  |L1.3284|
000cd4  00000000          DCD      Timer4Done
                  |L1.3288|
000cd8  69545b0a          DCB      "\n[Ti"
000cdc  2072656d          DCB      "mer "
000ce0  2c312c30          DCB      "0,1,"
000ce4  2c332c32          DCB      "2,3,"
000ce8  6e492034          DCB      "4 In"
000cec  72726574          DCB      "terr"
000cf0  20747075          DCB      "upt "
000cf4  74736554          DCB      "Test"
000cf8  000a0a5d          DCB      "]\n\n\0"
                  |L1.3324|
000cfc  00007530          DCD      0x00007530
                  |L1.3328|
000d00  656d6954          DCB      "Time"
000d04  2c302072          DCB      "r 0,"
000d08  2c322c31          DCB      "1,2,"
000d0c  20342c33          DCB      "3,4 "
000d10  6f747541          DCB      "Auto"
000d14  6c65722d          DCB      "-rel"
000d18  2064616f          DCB      "oad "
000d1c  65746e49          DCB      "Inte"
000d20  70757272          DCB      "rrup"
000d24  65542074          DCB      "t Te"
000d28  3d207473          DCB      "st ="
000d2c  4b4f203e          DCB      "> OK"
000d30  00000a21          DCB      "!\n\0\0"
                  |L1.3380|
000d34  656d6954          DCB      "Time"
000d38  2c302072          DCB      "r 0,"
000d3c  2c322c31          DCB      "1,2,"
000d40  20342c33          DCB      "3,4 "
000d44  6f747541          DCB      "Auto"
000d48  6c65722d          DCB      "-rel"
000d4c  2064616f          DCB      "oad "
000d50  65746e49          DCB      "Inte"
000d54  70757272          DCB      "rrup"
000d58  65542074          DCB      "t Te"
000d5c  3d207473          DCB      "st ="
000d60  6146203e          DCB      "> Fa"
000d64  2e2e6c69          DCB      "il.."
000d68  2e2e2e2e          DCB      "...."
000d6c  2e2e2e2e          DCB      "...."
000d70  000a2e2e          DCB      "..\n\0"
                  |L1.3444|
000d74  000001d4          DCD      ||.constdata$1|| + 468
                  |L1.3448|
000d78  00111101          DCD      0x00111101
                  |L1.3452|
000d7c  656d6954          DCB      "Time"
000d80  2c302072          DCB      "r 0,"
000d84  2c322c31          DCB      "1,2,"
000d88  20342c33          DCB      "3,4 "
000d8c  2d656e4f          DCB      "One-"
000d90  746f6873          DCB      "shot"
000d94  746e4920          DCB      " Int"
000d98  75727265          DCB      "erru"
000d9c  54207470          DCB      "pt T"
000da0  20747365          DCB      "est "
000da4  4f203e3d          DCB      "=> O"
000da8  000a214b          DCB      "K!\n\0"
;;;378        }        
;;;379        else
;;;380        {
;;;381            Uart_Printf("Timer 0,1,2,3,4 One-shot Interrupt Test => Fail............\n");
                  |L1.3500|
000dac  e28f0064          ADR      r0,|L1.3608|
000db0  ebfffffe          BL       Uart_Printf
;;;382        }    
;;;383        	Uart_Printf("Timer0: %d (=1)\nTimer1: %d (=1)\nTimer2: %d (=1)\nTimer3: %d (=1)\nTimer4: %d (=1)\n",
                  |L1.3508|
000db4  e51f0110          LDR      r0,|L1.3244|
000db8  e5903000          LDR      r3,[r0,#0]  ; variable4
000dbc  e51f0114          LDR      r0,|L1.3248|
000dc0  e5902000          LDR      r2,[r0,#0]  ; variable3
000dc4  e51f0118          LDR      r0,|L1.3252|
000dc8  e88d000c          STMIA    sp,{r2,r3}
000dcc  e5903000          LDR      r3,[r0,#0]  ; variable2
000dd0  e51f0120          LDR      r0,|L1.3256|
000dd4  e5902000          LDR      r2,[r0,#0]  ; variable1
000dd8  e51f0124          LDR      r0,|L1.3260|
000ddc  e5901000          LDR      r1,[r0,#0]  ; variable0
000de0  e59f0070          LDR      r0,|L1.3672|
000de4  ebfffffe          BL       Uart_Printf
;;;384            variable0,variable1,variable2,variable3,variable4);        
;;;385    
;;;386    	/* Timer0,1,2,3,4 Interrupt Service is masked */
;;;3

⌨️ 快捷键说明

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