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

📄 modemif.txt

📁 支持三星原产的S3C24A0开发板
💻 TXT
📖 第 1 页 / 共 5 页
字号:
0002e8  eafffff9          B        |L1.724|
;;;599    	{
;;;600    		*(unsigned char *)(_MDM_TX_Queue+i) = *(txdata+i);				// push data into DPSRAM		
                  |L1.748|
0002ec  e7d60004          LDRB     r0,[r6,r4]
0002f0  e3a01660          MOV      r1,#0x6000000
0002f4  e7c10004          STRB     r0,[r1,r4]
;;;601    		Tx_Done_Flag++;
0002f8  e59f0048          LDR      r0,|L1.840|
0002fc  e5900000          LDR      r0,[r0,#0]  ; Tx_Done_Flag
000300  e2800001          ADD      r0,r0,#1
000304  e59f103c          LDR      r1,|L1.840|
000308  e5810000          STR      r0,[r1,#0]  ; Tx_Done_Flag
;;;602    	//	if(Tx_Done_Flag == _DPSRAM_TXRX_BUFLEN)
;;;603    	//	{
;;;604    	//		txdata = (unsigned char *)(_MEM_MDM_TX_Buffer);
;;;605    	//	}
;;;606    	}
00030c  eafffff4          B        |L1.740|
;;;607    	
;;;608    	//Request irq to AP---------------STOP
;;;609    	Uart_Printf("[ MODEM Tx Stop]\n");
                  |L1.784|
000310  e28f00c8          ADR      r0,|L1.992|
000314  ebfffffe          BL       _printf
;;;610    	*(unsigned char *)(_MDM_TX_Queue_Irq_Port)=0x00;
000318  e3a00000          MOV      r0,#0
00031c  e3a01660          MOV      r1,#0x6000000
000320  e5c103ff          STRB     r0,[r1,#0x3ff]
;;;611    	}
000324  eaffffdf          B        |L1.680|
;;;612    
;;;613    	/*
;;;614    	txdata = (unsigned char *)(_MEM_MDM_TX_Buffer);
;;;615    	for(i=0;i<_DPSRAM_TXRX_BUFLEN;i++);
;;;616    		Uart_Printf("0x%x=%03x	",(txdata+i),*(txdata+i));	
;;;617    	*/
;;;618    	rINTMSK|=(BIT_MODEM);  
                  |L1.808|
000328  e51f0228          LDR      r0,|L1.264|
00032c  e5900008          LDR      r0,[r0,#8]
000330  e3800a80          ORR      r0,r0,#0x80000
000334  e51f1234          LDR      r1,|L1.264|
000338  e5810008          STR      r0,[r1,#8]
;;;619    
;;;620    	Uart_Printf("[ MODEM Tx with RX test END]\n");	
00033c  e28f00b0          ADR      r0,|L1.1012|
000340  ebfffffe          BL       _printf
;;;621    
;;;622    }
000344  e8bd80f8          LDMFD    sp!,{r3-r7,pc}
                  |L1.840|
000348  00000000          DCD      ||.bss$2||
                  |L1.844|
00034c  4f4d205b          DCB      "[ MO"
000350  204d4544          DCB      "DEM "
000354  77207854          DCB      "Tx w"
000358  20687469          DCB      "ith "
00035c  74205852          DCB      "RX t"
000360  20747365          DCB      "est "
000364  6e697375          DCB      "usin"
000368  6f4d2067          DCB      "g Mo"
00036c  206d6564          DCB      "dem "
000370  20462f49          DCB      "I/F "
000374  00000a5d          DCB      "]\n\0\0"
                  |L1.888|
000378  000003ff          DCD      0x000003ff
                  |L1.892|
00037c  41180000          DCD      0x41180000
                  |L1.896|
000380  544e4972          DCB      "rINT"
000384  2c504132          DCB      "2AP,"
000388  544e4972          DCB      "rINT"
00038c  4d444d32          DCB      "2MDM"
000390  25783020          DCB      " 0x%"
000394  30207833          DCB      "3x 0"
000398  78332578          DCB      "x%3x"
00039c  0000000a          DCB      "\n\0\0\0"
                  |L1.928|
0003a0  00000000          DCD      AP_Int_Rx
                  |L1.932|
0003a4  13fff000          DCD      0x13fff000
                  |L1.936|
0003a8  11000800          DCD      0x11000800
                  |L1.940|
0003ac  4f4d205b          DCB      "[ MO"
0003b0  204d4544          DCB      "DEM "
0003b4  53207854          DCB      "Tx S"
0003b8  74726174          DCB      "tart"
0003bc  6425203a          DCB      ": %d"
0003c0  000a5d20          DCB      " ]\n\0"
                  |L1.964|
0003c4  4f4d205b          DCB      "[ MO"
0003c8  204d4544          DCB      "DEM "
0003cc  74697257          DCB      "Writ"
0003d0  2e676e69          DCB      "ing."
0003d4  2e2e2e2e          DCB      "...."
0003d8  0a5d2e2e          DCB      "..]\n"
0003dc  00000000          DCB      "\0\0\0\0"
                  |L1.992|
0003e0  4f4d205b          DCB      "[ MO"
0003e4  204d4544          DCB      "DEM "
0003e8  53207854          DCB      "Tx S"
0003ec  5d706f74          DCB      "top]"
0003f0  0000000a          DCB      "\n\0\0\0"
                  |L1.1012|
0003f4  4f4d205b          DCB      "[ MO"
0003f8  204d4544          DCB      "DEM "
0003fc  77207854          DCB      "Tx w"
000400  20687469          DCB      "ith "
000404  74205852          DCB      "RX t"
000408  20747365          DCB      "est "
00040c  5d444e45          DCB      "END]"
000410  0000000a          DCB      "\n\0\0\0"
                          ENDP

                  MODEM_Int_Rx PROC
;;;292    void __irq MODEM_Int_Rx(void)
;;;293    {
000414  e92d50ff          STMFD    sp!,{r0-r7,r12,lr}
;;;294    	unsigned int i;
;;;295    	unsigned char *rxdata,temp;	
;;;296    	unsigned int queue_depth=0;
000418  e3a06000          MOV      r6,#0
;;;297    	
;;;298    	//Clear irq from AP--------------START
;;;299    
;;;300    	temp=(*(unsigned char *)_MDM_RX_Queue_Irq_Port)&0xff;
00041c  e3a00660          MOV      r0,#0x6000000
000420  e5d057ff          LDRB     r5,[r0,#0x7ff]
;;;301    	rEINTPEND=(1<<12); //EINTPEND[12] is cleared.
000424  e3a00d40          MOV      r0,#0x1000
000428  e59f1120          LDR      r1,|L1.1360|
00042c  e5810038          STR      r0,[r1,#0x38]
;;;302    	ClearPending(BIT_EINT11_14);	
000430  e3a00008          MOV      r0,#8
000434  e2411646          SUB      r1,r1,#0x4600000
000438  e5810000          STR      r0,[r1,#0]
00043c  e1c10000          BIC      r0,r1,r0
000440  e5900010          LDR      r0,[r0,#0x10]
000444  e5810010          STR      r0,[r1,#0x10]
000448  e1a00001          MOV      r0,r1
00044c  e5900010          LDR      r0,[r0,#0x10]
;;;303    	rINTMSK|=(BIT_EINT11_14);  
000450  e1a00001          MOV      r0,r1
000454  e5900008          LDR      r0,[r0,#8]
000458  e3800008          ORR      r0,r0,#8
00045c  e5810008          STR      r0,[r1,#8]
;;;304    	rEINTMASK=rEINTMASK&~(1<<12)|(1<<12); //EINTMASK[12]=MASK interrupt.	
000460  e2810646          ADD      r0,r1,#0x4600000
000464  e5900034          LDR      r0,[r0,#0x34]
000468  e3800d40          ORR      r0,r0,#0x1000
00046c  e2811646          ADD      r1,r1,#0x4600000
000470  e5810034          STR      r0,[r1,#0x34]
;;;305    
;;;306    	if( temp == 0xff)
000474  e35500ff          CMP      r5,#0xff
000478  1a000009          BNE      |L1.1188|
;;;307    	{
;;;308    
;;;309    	Uart_Printf("[ AP Tx start Detect: %d ]\n",Start_Detect++);
00047c  e51f0378          LDR      r0,|L1.268|
000480  e5900000          LDR      r0,[r0,#0]  ; Start_Detect
000484  e2803001          ADD      r3,r0,#1
000488  e51f0384          LDR      r0,|L1.268|
00048c  e5902000          LDR      r2,[r0,#0]  ; Start_Detect
000490  e5803000          STR      r3,[r0,#0]  ; Start_Detect
000494  e1a01002          MOV      r1,r2
000498  e28f00b4          ADR      r0,|L1.1364|
00049c  ebfffffe          BL       _printf
0004a0  ea000020          B        |L1.1320|
;;;310    
;;;311    	}
;;;312    	else if(temp == 0x00)
                  |L1.1188|
0004a4  e3550000          CMP      r5,#0
0004a8  1a00001b          BNE      |L1.1308|
;;;313    	{
;;;314    	
;;;315    	Uart_Printf("[ AP Tx End Detect: %d ]\n",End_Detect++);
0004ac  e51f0384          LDR      r0,|L1.304|
0004b0  e5900000          LDR      r0,[r0,#0]  ; End_Detect
0004b4  e2803001          ADD      r3,r0,#1
0004b8  e51f0390          LDR      r0,|L1.304|
0004bc  e5902000          LDR      r2,[r0,#0]  ; End_Detect
0004c0  e5803000          STR      r3,[r0,#0]  ; End_Detect
0004c4  e1a01002          MOV      r1,r2
0004c8  e28f00a0          ADR      r0,|L1.1392|
0004cc  ebfffffe          BL       _printf
;;;316    
;;;317    	// Read data from DPSRAM
;;;318    	Uart_Printf("[ MODEM Reading.......]\n");	
0004d0  e28f00b4          ADR      r0,|L1.1420|
0004d4  ebfffffe          BL       _printf
;;;319    	rxdata = (unsigned char *)(_MEM_MDM_RX_Buffer);
0004d8  e59f70c8          LDR      r7,|L1.1448|
;;;320    	for(i=0;i<_DPSRAM_TXRX_BUFLEN;i++)
0004dc  e3a04000          MOV      r4,#0
                  |L1.1248|
0004e0  e254cfc0          SUBS     r12,r4,#0x300
0004e4  225cc0ff          SUBCSS   r12,r12,#0xff
0004e8  2a000007          BCS      |L1.1292|
0004ec  ea000001          B        |L1.1272|
                  |L1.1264|
0004f0  e2844001          ADD      r4,r4,#1
0004f4  eafffff9          B        |L1.1248|
;;;321    		{
;;;322    		*(unsigned char *)(rxdata+i) = *(unsigned char *)(_MDM_RX_Queue+i); 				// pop the data from DPSRAM		
                  |L1.1272|
0004f8  e59f00ac          LDR      r0,|L1.1452|
0004fc  e7d00004          LDRB     r0,[r0,r4]
000500  e7c70004          STRB     r0,[r7,r4]
;;;323    		queue_depth++;
000504  e2866001          ADD      r6,r6,#1
;;;324    		/*
;;;325    		if(queue_depth == _DPSRAM_TXRX_BUFLEN)
;;;326    			{
;;;327    			rxdata = (unsigned char *)(_MEM_MDM_RX_Buffer);
;;;328    			queue_depth = 0;
;;;329    			}
;;;330    		*/
;;;331    		}
000508  eafffff8          B        |L1.1264|
;;;332    	Rx_Done_Flag=1;
                  |L1.1292|
00050c  e3a00001          MOV      r0,#1
000510  e51f13a8          LDR      r1,|L1.368|
000514  e5810000          STR      r0,[r1,#0]  ; Rx_Done_Flag
000518  ea000002          B        |L1.1320|
;;;333    	}
;;;334    	else
;;;335    		Uart_Printf("[ Error!!!: 0x%x ]\n",temp);
                  |L1.1308|
00051c  e1a01005          MOV      r1,r5
000520  e24f0fed          ADR      r0,|L1.372|
000524  ebfffffe          BL       _printf
;;;336    	rINTMSK=~(BIT_EINT11_14);  
                  |L1.1320|
000528  e3e00008          MVN      r0,#8
00052c  e51f142c          LDR      r1,|L1.264|
000530  e5810008          STR      r0,[r1,#8]
;;;337    	rEINTMASK=rEINTMASK&~(1<<12)|(0<<12); //EINTMASK[12]=enable interrupt.
000534  e2810646          ADD      r0,r1,#0x4600000
000538  e5900034          LDR      r0,[r0,#0x34]
00053c  e3c00d40          BIC      r0,r0,#0x1000
000540  e2811646          ADD      r1,r1,#0x4600000
000544  e5810034          STR      r0,[r1,#0x34]
;;;338    
;;;339    }
000548  e8bd50ff          LDMFD    sp!,{r0-r7,r12,lr}
00054c  e25ef004          SUBS     pc,lr,#4
                  |L1.1360|
000550  44800000          DCD      0x44800000
                  |L1.1364|
000554  5041205b          DCB      "[ AP"
000558  20785420          DCB      " Tx "
00055c  72617473          DCB      "star"
000560  65442074          DCB      "t De"
000564  74636574          DCB      "tect"
000568  6425203a          DCB      ": %d"
00056c  000a5d20          DCB      " ]\n\0"
                  |L1.1392|
000570  5041205b          DCB      "[ AP"
000574  20785420          DCB      " Tx "
000578  20646e45          DCB      "End "
00057c  65746544          DCB      "Dete"
000580  203a7463          DCB      "ct: "
000584  5d206425          DCB      "%d ]"
000588  0000000a          DCB      "\n\0\0\0"
                  |L1.1420|
00058c  4f4d205b          DCB      "[ MO"
000590  204d4544          DCB      "DEM "
000594  64616552          DCB      "Read"
000598  2e676e69          DCB      "ing."
00059c  2e2e2e2e          DCB      "...."
0005a0  0a5d2e2e          DCB      "..]\n"
0005a4  00000000          DCB      "\0\0\0\0"
                  |L1.1448|
0005a8  11000c00          DCD      0x11000c00
                  |L1.1452|
0005ac  06000400          DCD      0x06000400
                          ENDP

                  AP_Tx_Rx PROC
;;;470    void AP_Tx_Rx(void)
;;;471    {
0005b0  e92d40f8          STMFD    sp!,{r3-r7,lr}
;;;472    
;;;473    		unsigned int i,j;
;;;474    		unsigned char *txdata,*rxdata;
;;;475    	
;;;476    		Tx_Done_Flag = 0;
0005b4  e3a00000          MOV      r0,#0
0005b8  e51f1278          LDR      r1,|L1.840|
0005bc  e5810000          STR      r0,[r1,#0]  ; Tx_Done_Flag
;;;477    		Rx_Done_Flag = 0;
0005c0  e3a00000          MOV      r0,#0
0005c4  e51f145c          LDR      r1,|L1.368|
0005c8  e5810000          STR      r0,[r1,#0]  ; Rx_Done_Flag
;;;478    		Start_Detect = 0;
0005cc  e3a00000          MOV      r0,#0
0005d0  e51f14cc          LDR      r1,|L1.268|
0005d4  e5810000          STR      r0,[r1,#0]  ; Start_Detect
;;;479    		End_Detect = 0;	
0005d8  e3a00000          MOV      r0,#0
0005dc  e51f14b4          LDR      r1,|L1.304|
0005e0  e5810000          STR      r0,[r1,#0]  ; End_Detect
;;;480    		Uart_TxEmpty(0);
0005e4  e3a00000          MOV      r0,#0
0005e8  ebfffffe          BL       Uart_TxEmpty
;;;481    		Uart_Printf("[ AP Tx with RX test using Modem I/F ]\n");
0005ec  e28f0f6d          ADR      r0,|L1.1960|
0005f0  ebfffffe          BL       _printf
;;;482    
;;;483    		rINT2AP=0x3ff;
0005f4  e51f0284          LDR      r0,|L1.888|
0005f8  e51f1284          LDR      r1,|L1.892|
0005fc  e5810000          STR      r0,[r1,#0]

⌨️ 快捷键说明

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