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

📄 debug.cod

📁 EP9315的BSP包(WINCE下的BSP,内有各种驱动的详细的代码)
💻 COD
📖 第 1 页 / 共 3 页
字号:
  00004		 |$L14011|

; 420  :     //
; 421  :     // txfe  see if the tx fifo is empty
; 422  :     //
; 423  :     while ((*UART3_FR & FR_TXFE) != FR_TXFE)         

  00004	e59f0020	 ldr       r0, [pc, #0x20]
  00008	e5900000	 ldr       r0, [r0]
  0000c	e2001080	 and       r1, r0, #0x80
  00010	e3510080	 cmp       r1, #0x80
  00014	1afffffa	 bne       |$L14011|

; 424  :         /* - do nothing until fifo is empty; ie character is gone */
; 425  :         ;
; 426  : 
; 427  :     *UART3_DR = (int)ch;

  00018	e3a0120b	 mov       r1, #0xB, 4
  0001c	e20200ff	 and       r0, r2, #0xFF
  00020	e381188e	 orr       r1, r1, #0x8E, 16
  00024	e5810000	 str       r0, [r1]

; 428  : }

  00028	e12fff1e	 bx        lr
  0002c		 |$L14260|
  0002c	b08e0018	 DCD       0xb08e0018
  00030		 |$M14257|

			 ENDP  ; |UART3_Write|

	EXPORT	|UART1_Read|

  00000			 AREA	 |.text| { |UART1_Read| }, CODE, ARM, SELECTION=1 ; comdat noduplicate

  00000			 AREA	 |.pdata$$UART1_Read|, PDATA, SELECTION=5, ASSOC=|.text| { |UART1_Read| } ; comdat associative
|$T14269| DCD	|UART1_Read|
	DCD	0x40001000
; Function compile flags: /Ogsy

  00000			 AREA	 |.text| { |UART1_Read| }, CODE, ARM, SELECTION=1 ; comdat noduplicate

  00000		 |UART1_Read| PROC

; 439  : {

  00000		 |$M14267|

; 440  :     int     nReadChar;
; 441  :     ULONG   ulFlagRegister; 
; 442  :     ULONG   ulStatusRegister;
; 443  : 
; 444  :     ulFlagRegister      = *UART1_FR;

  00000	e59f0034	 ldr       r0, [pc, #0x34]

; 445  :     ulStatusRegister    = *UART1_SR;

  00004	e59f202c	 ldr       r2, [pc, #0x2C]
  00008	e5901000	 ldr       r1, [r0]
  0000c	e5920000	 ldr       r0, [r2]

; 446  :     
; 447  :     if(ulStatusRegister & SR_OE)

  00010	e3100008	 tst       r0, #8

; 448  :     {
; 449  :         nReadChar = OEM_DEBUG_COM_ERROR;

  00014	13e00001	 mvnne     r0, #1

; 458  :     }
; 459  :     
; 460  :     return nReadChar;
; 461  : }

  00018	112fff1e	 bxne      lr

; 450  :     }
; 451  :     else if(!(ulFlagRegister & FR_RXFE))

  0001c	e3110010	 tst       r1, #0x10

; 452  :     {
; 453  :         nReadChar = (*UART1_DR & 0xFF);

  00020	03a0020b	 moveq     r0, #0xB, 4
  00024	03800723	 orreq     r0, r0, #0x23, 14
  00028	05900000	 ldreq     r0, [r0]
  0002c	020000ff	 andeq     r0, r0, #0xFF

; 454  :     }
; 455  :     else
; 456  :     {
; 457  :         nReadChar = OEM_DEBUG_READ_NODATA;

  00030	13e00000	 mvnne     r0, #0

; 458  :     }
; 459  :     
; 460  :     return nReadChar;
; 461  : }

  00034	e12fff1e	 bx        lr
  00038		 |$L14271|
  00038	b08c0004	 DCD       0xb08c0004
  0003c	b08c0018	 DCD       0xb08c0018
  00040		 |$M14268|

			 ENDP  ; |UART1_Read|

	EXPORT	|UART2_Read|

  00000			 AREA	 |.text| { |UART2_Read| }, CODE, ARM, SELECTION=1 ; comdat noduplicate

  00000			 AREA	 |.pdata$$UART2_Read|, PDATA, SELECTION=5, ASSOC=|.text| { |UART2_Read| } ; comdat associative
|$T14280| DCD	|UART2_Read|
	DCD	0x40001000
; Function compile flags: /Ogsy

  00000			 AREA	 |.text| { |UART2_Read| }, CODE, ARM, SELECTION=1 ; comdat noduplicate

  00000		 |UART2_Read| PROC

; 470  : {

  00000		 |$M14278|

; 471  :     int     nReadChar;
; 472  :     ULONG   ulFlagRegister; 
; 473  :     ULONG   ulStatusRegister;
; 474  : 
; 475  :     ulFlagRegister      = *UART2_FR;

  00000	e59f0034	 ldr       r0, [pc, #0x34]

; 476  :     ulStatusRegister    = *UART2_SR;

  00004	e59f202c	 ldr       r2, [pc, #0x2C]
  00008	e5901000	 ldr       r1, [r0]
  0000c	e5920000	 ldr       r0, [r2]

; 477  :     
; 478  :     if(ulStatusRegister & SR_OE)

  00010	e3100008	 tst       r0, #8

; 479  :     {
; 480  :         nReadChar = OEM_DEBUG_COM_ERROR;

  00014	13e00001	 mvnne     r0, #1

; 489  :     }
; 490  :     
; 491  :     return nReadChar;
; 492  : }

  00018	112fff1e	 bxne      lr

; 481  :     }
; 482  :     else if(!(ulFlagRegister & FR_RXFE))

  0001c	e3110010	 tst       r1, #0x10

; 483  :     {
; 484  :         nReadChar = (*UART2_DR & 0xFF);

  00020	03a0020b	 moveq     r0, #0xB, 4
  00024	0380088d	 orreq     r0, r0, #0x8D, 16
  00028	05900000	 ldreq     r0, [r0]
  0002c	020000ff	 andeq     r0, r0, #0xFF

; 485  :     }
; 486  :     else
; 487  :     {
; 488  :         nReadChar = OEM_DEBUG_READ_NODATA;

  00030	13e00000	 mvnne     r0, #0

; 489  :     }
; 490  :     
; 491  :     return nReadChar;
; 492  : }

  00034	e12fff1e	 bx        lr
  00038		 |$L14282|
  00038	b08d0004	 DCD       0xb08d0004
  0003c	b08d0018	 DCD       0xb08d0018
  00040		 |$M14279|

			 ENDP  ; |UART2_Read|


  00000			 AREA	 |.text| { |UART3_Read| }, CODE, ARM, SELECTION=1 ; comdat noduplicate

  00000			 AREA	 |.pdata$$UART3_Read|, PDATA, SELECTION=5, ASSOC=|.text| { |UART3_Read| } ; comdat associative
|$T14291| DCD	|UART3_Read|
	DCD	0x40001000
; Function compile flags: /Ogsy

  00000			 AREA	 |.text| { |UART3_Read| }, CODE, ARM, SELECTION=1 ; comdat noduplicate

  00000		 |UART3_Read| PROC

; 501  : {

  00000		 |$M14289|

; 502  :     int     nReadChar;
; 503  :     ULONG   ulFlagRegister; 
; 504  :     ULONG   ulStatusRegister;
; 505  : 
; 506  :     ulFlagRegister      = *UART1_FR;

  00000	e59f0034	 ldr       r0, [pc, #0x34]

; 507  :     ulStatusRegister    = *UART1_SR;

  00004	e59f202c	 ldr       r2, [pc, #0x2C]
  00008	e5901000	 ldr       r1, [r0]
  0000c	e5920000	 ldr       r0, [r2]

; 508  :     
; 509  :     if(ulStatusRegister & SR_OE)

  00010	e3100008	 tst       r0, #8

; 510  :     {
; 511  :         nReadChar = OEM_DEBUG_COM_ERROR;

  00014	13e00001	 mvnne     r0, #1

; 520  :     }
; 521  :     
; 522  :     return nReadChar;
; 523  : }

  00018	112fff1e	 bxne      lr

; 512  :     }
; 513  :     else if(!(ulFlagRegister & FR_RXFE))

  0001c	e3110010	 tst       r1, #0x10

; 514  :     {
; 515  :         nReadChar = (*UART3_DR & 0xFF);

  00020	03a0020b	 moveq     r0, #0xB, 4
  00024	0380088e	 orreq     r0, r0, #0x8E, 16
  00028	05900000	 ldreq     r0, [r0]
  0002c	020000ff	 andeq     r0, r0, #0xFF

; 516  :     }
; 517  :     else
; 518  :     {
; 519  :         nReadChar = OEM_DEBUG_READ_NODATA;

  00030	13e00000	 mvnne     r0, #0

; 520  :     }
; 521  :     
; 522  :     return nReadChar;
; 523  : }

  00034	e12fff1e	 bx        lr
  00038		 |$L14293|
  00038	b08c0004	 DCD       0xb08c0004
  0003c	b08c0018	 DCD       0xb08c0018
  00040		 |$M14290|

			 ENDP  ; |UART3_Read|

	EXPORT	|UART1_ClearError|

  00000			 AREA	 |.text| { |UART1_ClearError| }, CODE, ARM, SELECTION=1 ; comdat noduplicate

  00000			 AREA	 |.pdata$$UART1_ClearError|, PDATA, SELECTION=5, ASSOC=|.text| { |UART1_ClearError| } ; comdat associative
|$T14298| DCD	|UART1_ClearError|
	DCD	0x40000d00
; Function compile flags: /Ogsy

  00000			 AREA	 |.text| { |UART1_ClearError| }, CODE, ARM, SELECTION=1 ; comdat noduplicate

  00000		 |UART1_ClearError| PROC

; 533  : {

  00000		 |$M14296|

; 534  :     //
; 535  :     // Partial stop and disable this uart
; 536  :     //
; 537  :     *UART1_CR  = 0;   

  00000	e59f3028	 ldr       r3, [pc, #0x28]
  00004	e3a02000	 mov       r2, #0

; 538  : 
; 539  :     //
; 540  :     // Clear status bits.
; 541  :     //
; 542  :     *UART1_SR  = 0;        

  00008	e59f001c	 ldr       r0, [pc, #0x1C]
  0000c	e5832000	 str       r2, [r3]

; 543  : 
; 544  :     //
; 545  :     // partial startup,clr interrupts
; 546  :     //
; 547  :     *UART1_IIR = 0;        

  00010	e59f1010	 ldr       r1, [pc, #0x10]
  00014	e5802000	 str       r2, [r0]

; 548  :     
; 549  :     //
; 550  :     // enable this uart
; 551  :     //
; 552  :     *UART1_CR = CR_UARTE; 

  00018	e3a00001	 mov       r0, #1
  0001c	e5812000	 str       r2, [r1]
  00020	e5830000	 str       r0, [r3]

; 553  : }    

  00024	e12fff1e	 bx        lr
  00028		 |$L14300|
  00028	b08c001c	 DCD       0xb08c001c
  0002c	b08c0004	 DCD       0xb08c0004
  00030	b08c0014	 DCD       0xb08c0014
  00034		 |$M14297|

			 ENDP  ; |UART1_ClearError|

	EXPORT	|UART2_ClearError|

  00000			 AREA	 |.text| { |UART2_ClearError| }, CODE, ARM, SELECTION=1 ; comdat noduplicate

  00000			 AREA	 |.pdata$$UART2_ClearError|, PDATA, SELECTION=5, ASSOC=|.text| { |UART2_ClearError| } ; comdat associative
|$T14305| DCD	|UART2_ClearError|
	DCD	0x40000d00
; Function compile flags: /Ogsy

  00000			 AREA	 |.text| { |UART2_ClearError| }, CODE, ARM, SELECTION=1 ; comdat noduplicate

  00000		 |UART2_ClearError| PROC

; 562  : {

  00000		 |$M14303|

; 563  :     //
; 564  :     // Partial stop and disable this uart
; 565  :     //
; 566  :     *UART2_CR  = 0;   

  00000	e59f3028	 ldr       r3, [pc, #0x28]
  00004	e3a02000	 mov       r2, #0

; 567  : 
; 568  :     //
; 569  :     // Clear status bits.
; 570  :     //
; 571  :     *UART2_SR  = 0;        

  00008	e59f001c	 ldr       r0, [pc, #0x1C]
  0000c	e5832000	 str       r2, [r3]

; 572  : 
; 573  :     //
; 574  :     // partial startup,clr interrupts
; 575  :     //
; 576  :     *UART2_IIR = 0;        

  00010	e59f1010	 ldr       r1, [pc, #0x10]
  00014	e5802000	 str       r2, [r0]

; 577  :     
; 578  :     //
; 579  :     // enable this uart
; 580  :     //
; 581  :     *UART2_CR = CR_UARTE; 

  00018	e3a00001	 mov       r0, #1
  0001c	e5812000	 str       r2, [r1]
  00020	e5830000	 str       r0, [r3]

; 582  : }    

  00024	e12fff1e	 bx        lr
  00028		 |$L14307|
  00028	b08d001c	 DCD       0xb08d001c
  0002c	b08d0004	 DCD       0xb08d0004
  00030	b08d0014	 DCD       0xb08d0014
  00034		 |$M14304|

			 ENDP  ; |UART2_ClearError|


  00000			 AREA	 |.text| { |UART3_ClearError| }, CODE, ARM, SELECTION=1 ; comdat noduplicate

  00000			 AREA	 |.pdata$$UART3_ClearError|, PDATA, SELECTION=5, ASSOC=|.text| { |UART3_ClearError| } ; comdat associative
|$T14312| DCD	|UART3_ClearError|
	DCD	0x40000d00
; Function compile flags: /Ogsy

  00000			 AREA	 |.text| { |UART3_ClearError| }, CODE, ARM, SELECTION=1 ; comdat noduplicate

  00000		 |UART3_ClearError| PROC

; 592  : {

  00000		 |$M14310|

; 593  :     //
; 594  :     // Partial stop and disable this uart
; 595  :     //
; 596  :     *UART3_CR  = 0;   

  00000	e59f3028	 ldr       r3, [pc, #0x28]
  00004	e3a02000	 mov       r2, #0

; 597  : 
; 598  :     //
; 599  :     // Clear status bits.
; 600  :     //
; 601  :     *UART3_SR  = 0;        

  00008	e59f001c	 ldr       r0, [pc, #0x1C]
  0000c	e5832000	 str       r2, [r3]

; 602  : 
; 603  :     //
; 604  :     // partial startup,clr interrupts
; 605  :     //
; 606  :     *UART3_IIR = 0;        

  00010	e59f1010	 ldr       r1, [pc, #0x10]
  00014	e5802000	 str       r2, [r0]

; 607  :     
; 608  :     //
; 609  :     // enable this uart
; 610  :     //
; 611  :     *UART3_CR = CR_UARTE; 

  00018	e3a00001	 mov       r0, #1
  0001c	e5812000	 str       r2, [r1]
  00020	e5830000	 str       r0, [r3]

; 612  : }    

  00024	e12fff1e	 bx        lr
  00028		 |$L14314|
  00028	b08e001c	 DCD       0xb08e001c
  0002c	b08e0004	 DCD       0xb08e0004
  00030	b08e0014	 DCD       0xb08e0014
  00034		 |$M14311|

			 ENDP  ; |UART3_ClearError|

	END

⌨️ 快捷键说明

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