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

📄 ms2_serial.cod

📁 PXA270 平台 Windows Mobile 5。0 串口驱动
💻 COD
📖 第 1 页 / 共 5 页
字号:
  0002c	e12fff1e	 bx          lr
  00030		 |$L31200|
  00030	00000000	 DCD         |??_7CBulPdd16550BUART@@6BCMiniThread@@@|
  00034	00000000	 DCD         |??_7CBulPdd16550BUART@@6BCSerialPDD@@@|
  00038		 |$M31196|

			 ENDP  ; |??0CBulPdd16550BUART@@QAA@PAGPAXPAU__HWOBJ@@@Z|, CBulPdd16550BUART::CBulPdd16550BUART

	EXPORT	|??1CBulPdd16550BUART@@UAA@XZ|		; CBulPdd16550BUART::~CBulPdd16550BUART
	IMPORT	|MmUnmapIoSpace|

  00000			 AREA	 |.text| { |??1CBulPdd16550BUART@@UAA@XZ| }, CODE, ARM, SELECTION=2 ; comdat any

  00000			 AREA	 |.pdata$$??1CBulPdd16550BUART@@UAA@XZ|, PDATA, SELECTION=5, ASSOC=|.text| { |??1CBulPdd16550BUART@@UAA@XZ| } ; comdat associative
|$T31207| DCD	|$L31206|
	DCD	0x40001101
; Function compile flags: /Ogsy

  00000			 AREA	 |.text| { |??1CBulPdd16550BUART@@UAA@XZ| }, CODE, ARM, SELECTION=2 ; comdat any

  00000		 |??1CBulPdd16550BUART@@UAA@XZ| PROC	; CBulPdd16550BUART::~CBulPdd16550BUART

; 93   :     ~CBulPdd16550BUART() {

  00000		 |$L31206|
  00000	e92d4010	 stmdb       sp!, {r4, lr}
  00004		 |$M31204|
  00004	e1a04000	 mov         r4, r0

; 94   :         if (m_pBCRReg)

  00008	e5943154	 ldr         r3, [r4, #0x154]
  0000c	e59f102c	 ldr         r1, [pc, #0x2C]
  00010	e59f2024	 ldr         r2, [pc, #0x24]
  00014	e3530000	 cmp         r3, #0

; 95   :             MmUnmapIoSpace(m_pBCRReg,0);

  00018	15940154	 ldrne       r0, [r4, #0x154]
  0001c	e58410fc	 str         r1, [r4, #0xFC]
  00020	13a01000	 movne       r1, #0
  00024	e5842000	 str         r2, [r4]
  00028	1b000000	 blne        MmUnmapIoSpace

; 96   :     }

  0002c	e1a00004	 mov         r0, r4
  00030	eb000000	 bl          |??1CBulPdd16550@@UAA@XZ|
  00034	e8bd4010	 ldmia       sp!, {r4, lr}
  00038	e12fff1e	 bx          lr
  0003c		 |$L31209|
  0003c	00000000	 DCD         |??_7CBulPdd16550BUART@@6BCSerialPDD@@@|
  00040	00000000	 DCD         |??_7CBulPdd16550BUART@@6BCMiniThread@@@|
  00044		 |$M31205|

			 ENDP  ; |??1CBulPdd16550BUART@@UAA@XZ|, CBulPdd16550BUART::~CBulPdd16550BUART


  00000			 AREA	 |.text| { |?SetDTR@CBulPdd16550BUART@@UAAXH@Z| }, CODE, ARM, SELECTION=2 ; comdat any

  00000			 AREA	 |.pdata$$?SetDTR@CBulPdd16550BUART@@UAAXH@Z|, PDATA, SELECTION=5, ASSOC=|.text| { |?SetDTR@CBulPdd16550BUART@@UAAXH@Z| } ; comdat associative
|$T31218| DCD	|$L31217|
	DCD	0x40000800
; Function compile flags: /Ogsy

  00000			 AREA	 |.text| { |?SetDTR@CBulPdd16550BUART@@UAAXH@Z| }, CODE, ARM, SELECTION=2 ; comdat any

  00000		 |?SetDTR@CBulPdd16550BUART@@UAAXH@Z| PROC ; CBulPdd16550BUART::SetDTR

; 117  :     virtual void    SetDTR(BOOL bSet) {

  00000		 |$L31217|
  00000		 |$M31215|
  00000	e3510000	 cmp         r1, #0

; 118  :         if (bSet)
; 119  :             m_pBCRReg->misc_wr &= ~XLLP_BCR_MISCWR1_BTDTR; 

  00004	e5902154	 ldr         r2, [r0, #0x154]
  00008	e5b23080	 ldr         r3, [r2, #0x80]!
  0000c	13c33080	 bicne       r3, r3, #0x80

; 120  :         else
; 121  :             m_pBCRReg->misc_wr |= XLLP_BCR_MISCWR1_BTDTR; 

  00010	15823000	 strne       r3, [r2]
  00014	03833080	 orreq       r3, r3, #0x80
  00018	05823000	 streq       r3, [r2]

; 122  :             
; 123  :     }

  0001c	e12fff1e	 bx          lr
  00020		 |$M31216|

			 ENDP  ; |?SetDTR@CBulPdd16550BUART@@UAAXH@Z|, CBulPdd16550BUART::SetDTR

	EXPORT	|?ConfigurePinout@CBulPdd16550BUART@@AAAHXZ| ; CBulPdd16550BUART::ConfigurePinout

  00000			 AREA	 |.text| { |?ConfigurePinout@CBulPdd16550BUART@@AAAHXZ| }, CODE, ARM, SELECTION=2 ; comdat any

  00000			 AREA	 |.pdata$$?ConfigurePinout@CBulPdd16550BUART@@AAAHXZ|, PDATA, SELECTION=5, ASSOC=|.text| { |?ConfigurePinout@CBulPdd16550BUART@@AAAHXZ| } ; comdat associative
|$T31228| DCD	|$L31227|
	DCD	0x40001600
; Function compile flags: /Ogsy

  00000			 AREA	 |.text| { |?ConfigurePinout@CBulPdd16550BUART@@AAAHXZ| }, CODE, ARM, SELECTION=2 ; comdat any

  00000		 |?ConfigurePinout@CBulPdd16550BUART@@AAAHXZ| PROC ; CBulPdd16550BUART::ConfigurePinout

; 125  :     BOOL ConfigurePinout() {

  00000		 |$L31227|
  00000		 |$M31225|
  00000	e1a01000	 mov         r1, r0

; 126  :         //Configuring GPIO pins for BTUART
; 127  :         //Initialize GPIO pins 
; 128  :         //Write 0 on GPIO pins 43 and 45 before configuring them as outputs.
; 129  :         m_pGPIOReg->GPCR1 = (XLLP_GPIO_BIT_BTTXD | XLLP_GPIO_BIT_BTRTS);

  00004	e5913148	 ldr         r3, [r1, #0x148]
  00008	e3a02b0a	 mov         r2, #0xA, 22

; 130  : 
; 131  :         //Configure direction of GPIO pins 42 and 44 as input 
; 132  :         //and GPIO pins 43 and 45 as output
; 133  :         m_pGPIOReg->GPDR1 &= ~( XLLP_GPIO_BIT_BTRXD | XLLP_GPIO_BIT_BTCTS); 
; 134  :         m_pGPIOReg->GPDR1 |=  ( XLLP_GPIO_BIT_BTTXD | XLLP_GPIO_BIT_BTRTS);
; 135  : 
; 136  : 
; 137  :         //Configure GPIO pins 42 and 44 for Alt_fn1. And pins 43 and 45 for Alt_fn2.
; 138  :         m_pGPIOReg->GAFR1_L |= (XLLP_GPIO_AF_BIT_BTRXD | XLLP_GPIO_AF_BIT_BTCTS |
; 139  :                                 XLLP_GPIO_AF_BIT_BTTXD | XLLP_GPIO_AF_BIT_BTRTS );
; 140  : 
; 141  : 
; 142  :         //Turn on the BTUART transceiver
; 143  :         m_pBCRReg->misc_wr |= XLLP_BCR_MISCWR1_nBT_OFF; 
; 144  : 
; 145  :         return TRUE;

  0000c	e3a00001	 mov         r0, #1
  00010	e5832028	 str         r2, [r3, #0x28]
  00014	e5912148	 ldr         r2, [r1, #0x148]
  00018	e5923010	 ldr         r3, [r2, #0x10]
  0001c	e3c33b05	 bic         r3, r3, #5, 22
  00020	e5823010	 str         r3, [r2, #0x10]
  00024	e5912148	 ldr         r2, [r1, #0x148]
  00028	e5923010	 ldr         r3, [r2, #0x10]
  0002c	e3833b0a	 orr         r3, r3, #0xA, 22
  00030	e5823010	 str         r3, [r2, #0x10]
  00034	e5912148	 ldr         r2, [r1, #0x148]
  00038	e592305c	 ldr         r3, [r2, #0x5C]
  0003c	e3833699	 orr         r3, r3, #0x99, 12
  00040	e582305c	 str         r3, [r2, #0x5C]
  00044	e5912154	 ldr         r2, [r1, #0x154]
  00048	e5b23080	 ldr         r3, [r2, #0x80]!
  0004c	e3833c01	 orr         r3, r3, #1, 24
  00050	e5823000	 str         r3, [r2]

; 146  :     }

  00054	e12fff1e	 bx          lr
  00058		 |$M31226|

			 ENDP  ; |?ConfigurePinout@CBulPdd16550BUART@@AAAHXZ|, CBulPdd16550BUART::ConfigurePinout

	IMPORT	|??3@YAXPAX@Z|				; operator delete

  00000			 AREA	 |.text| { |??_GCBulPdd16550BUART@@UAAPAXI@Z| }, CODE, ARM, SELECTION=2 ; comdat any

  00000			 AREA	 |.pdata$$??_GCBulPdd16550BUART@@UAAPAXI@Z|, PDATA, SELECTION=5, ASSOC=|.text| { |??_GCBulPdd16550BUART@@UAAPAXI@Z| } ; comdat associative
|$T31239| DCD	|$L31238|
	DCD	0x40000a01
; Function compile flags: /Ogsy

  00000			 AREA	 |.text| { |??_GCBulPdd16550BUART@@UAAPAXI@Z| }, CODE, ARM, SELECTION=2 ; comdat any

  00000		 |??_GCBulPdd16550BUART@@UAAPAXI@Z| PROC ; CBulPdd16550BUART::`scalar deleting destructor'
  00000		 |$L31238|
  00000	e92d4030	 stmdb       sp!, {r4, r5, lr}
  00004		 |$M31236|
  00004	e1a04001	 mov         r4, r1
  00008	e1a05000	 mov         r5, r0
  0000c	eb000000	 bl          |??1CBulPdd16550BUART@@UAA@XZ|
  00010	e3140001	 tst         r4, #1
  00014	11a00005	 movne       r0, r5
  00018	1b000000	 blne        |??3@YAXPAX@Z|
  0001c	e1a00005	 mov         r0, r5
  00020	e8bd4030	 ldmia       sp!, {r4, r5, lr}
  00024	e12fff1e	 bx          lr
  00028		 |$M31237|

			 ENDP  ; |??_GCBulPdd16550BUART@@UAAPAXI@Z|, CBulPdd16550BUART::`scalar deleting destructor'

	EXPORT	|??0CBulPdd16550SUART@@QAA@PAGPAXPAU__HWOBJ@@@Z| ; CBulPdd16550SUART::CBulPdd16550SUART
	EXPORT	|?Init@CBulPdd16550SUART@@UAAHXZ|	; CBulPdd16550SUART::Init
	EXPORT	|?SerialRegisterRestore@CBulPdd16550SUART@@UAAXXZ| ; CBulPdd16550SUART::SerialRegisterRestore
	EXPORT	|??_7CBulPdd16550SUART@@6BCSerialPDD@@@| [ DATA ] ; CBulPdd16550SUART::`vftable'
	EXPORT	|??_7CBulPdd16550SUART@@6BCMiniThread@@@| [ DATA ] ; CBulPdd16550SUART::`vftable'
	EXPORT	|??_GCBulPdd16550SUART@@UAAPAXI@Z|	; CBulPdd16550SUART::`scalar deleting destructor'
	IMPORT	|??_ECBulPdd16550SUART@@UAAPAXI@Z|, WEAK |??_GCBulPdd16550SUART@@UAAPAXI@Z| ; CBulPdd16550SUART::`vector deleting destructor', CBulPdd16550SUART::`scalar deleting destructor'

  00000			 AREA	 |.text| { |??0CBulPdd16550SUART@@QAA@PAGPAXPAU__HWOBJ@@@Z| }, CODE, ARM, SELECTION=2 ; comdat any

  00000			 AREA	 |.pdata$$??0CBulPdd16550SUART@@QAA@PAGPAXPAU__HWOBJ@@@Z|, PDATA, SELECTION=5, ASSOC=|.text| { |??0CBulPdd16550SUART@@QAA@PAGPAXPAU__HWOBJ@@@Z| } ; comdat associative
|$T31252| DCD	|$L31251|
	DCD	0x40000e01

  00000			 AREA	 |.rdata| { |??_7CBulPdd16550SUART@@6BCSerialPDD@@@| }, DATA, READONLY, SELECTION=2 ; comdat any
|??_7CBulPdd16550SUART@@6BCSerialPDD@@@| DCD |??_ECBulPdd16550SUART@@UAAPAXI@Z| ; CBulPdd16550SUART::`vftable'
	DCD	|?Init@CBulPdd16550SUART@@UAAHXZ|
	DCD	|?PostInit@CPdd16550@@UAAXXZ|
	DCD	|?Open@CBulPdd16550@@UAAHXZ|
	DCD	|?Close@CBulPdd16550@@UAAHXZ|
	DCD	|?Ioctl@CSerialPDD@@UAAHKPAEK0KPAK@Z|
	DCD	|?InitialPower@CSerialPDD@@UAAHH@Z|
	DCD	|?PowerOff@CSerialPDD@@UAAHXZ|
	DCD	|?PowerOn@CSerialPDD@@UAAHXZ|
	DCD	|?SetDevicePowerState@CSerialPDD@@UAAHW4_CEDEVICE_POWER_STATE@@@Z|
	DCD	|?SerialRegisterBackup@CBulPdd16550@@MAAXXZ|
	DCD	|?SerialRegisterRestore@CBulPdd16550SUART@@UAAXXZ|
	DCD	|?GetDevicePowerState@CSerialPDD@@UAA?AW4_CEDEVICE_POWER_STATE@@XZ|
	DCD	|?GetPowerCapabilities@CSerialPDD@@UAA?AU_POWER_CAPABILITIES@@XZ|
	DCD	|?InitialEnableInterrupt@CPdd16550@@UAAHH@Z|
	DCD	|?NotifyPDDInterrupt@CSerialPDD@@UAAHW4INTERRUPT_TYPE@@@Z|
	DCD	|?GetInterruptType@CSerialPDD@@UAA?AW4INTERRUPT_TYPE@@XZ|
	DCD	|?EventCallback@CSerialPDD@@UAAHKK@Z|
	DCD	|?DataReplaced@CSerialPDD@@UAAHPAEH@Z|
	DCD	|?PurgeComm@CSerialPDD@@UAAHK@Z|
	DCD	|?InitXmit@CPdd16550@@UAAHH@Z|
	DCD	|?XmitInterruptHandler@CBulPdd16550@@UAAXPAEPAK@Z|
	DCD	|?XmitComChar@CBulPdd16550@@UAAXE@Z|
	DCD	|?EnableXmitInterrupt@CBulPdd16550@@UAAHH@Z|
	DCD	|?CancelXmit@CPdd16550@@UAAHXZ|
	DCD	|?InitReceive@CPdd16550@@UAAHH@Z|
	DCD	|?GetRxBufferSize@CSerialPDD@@UAAKXZ|
	DCD	|?ReceiveInterruptHandler@CPdd16550@@UAAKPAEPAK@Z|
	DCD	|?CancelReceive@CPdd16550@@UAAKXZ|
	DCD	|?InitModem@CPdd16550@@UAAHH@Z|
	DCD	|?ModemInterruptHandler@CPdd16550@@UAAXXZ|
	DCD	|?GetModemStatus@CPdd16550@@UAAKXZ|
	DCD	|?SetDTR@CPdd16550@@UAAXH@Z|
	DCD	|?SetRTS@CPdd16550@@UAAXH@Z|
	DCD	|?IsCTSOff@CSerialPDD@@UAAHXZ|
	DCD	|?IsDSROff@CSerialPDD@@UAAHXZ|
	DCD	|?InitLine@CPdd16550@@UAAHH@Z|
	DCD	|?LineInterruptHandler@CPdd16550@@UAAXXZ|
	DCD	|?SetBreak@CPdd16550@@UAAXH@Z|
	DCD	|?SetBaudRate@CPdd16550@@UAAHKH@Z|
	DCD	|?SetByteSize@CPdd16550@@UAAHK@Z|
	DCD	|?SetParity@CPdd16550@@UAAHK@Z|
	DCD	|?SetStopBits@CPdd16550@@UAAHK@Z|
	DCD	|?SetDCB@CBulPdd16550@@UAAHPAU_DCB@@@Z|
	DCD	|?SetDefaultConfiguration@CSerialPDD@@UAAXXZ|
	DCD	|?GetDivisorOfRate@CBulPdd16550@@UAAHKPAK@Z|
	DCD	|?SetOutputMode@CBulPdd16550@@UAAXHH@Z|
	DCD	|?GetOutputMode@CSerialPDD@@UAAXPAH0@Z|
	DCD	|?SetReceiveError@CSerialPDD@@UAAXK@Z|
	DCD	|?GetReceivedError@CSerialPDD@@UAAKXZ|
	DCD	|?MapHardware@CBulPdd16550@@UAAHXZ|
	DCD	|?CreateHardwareAccess@CBulPdd16550@@UAAHXZ|
	DCD	|?GetWriteableSize@CPdd16550@@UAAKXZ|
	DCD	|?GetWaterMark@CBulPdd16550@@UAAKXZ|
	DCD	|?GetWaterMarkBit@CBulPdd16550@@UAAEXZ|
	DCD	|?GetCanWriteByte@CBulPdd16550@@UAAKXZ|
	DCD	|?InitIR@CBulPdd16550@@UAAHH@Z|

  00000			 AREA	 |.rdata| { |??_7CBulPdd16550SUART@@6BCMiniThread@@@| }, DATA, READONLY, SELECTION=2 ; comdat any
|??_7CBulPdd16550SUART@@6BCMiniThread@@@| DCD |?ThreadRun@CPdd16550@@EAAKXZ| ; CBulPdd16550SUART::`vftable'
; Function compile flags: /Ogsy

  00000			 AREA	 |.text| { |??0CBulPdd16550SUART@@QAA@PAGPAXPAU__HWOBJ@@@Z| }, CODE, ARM, SELECTION=2 ; comdat any

  00000		 |??0CBulPdd16550SUART@@QAA@PAGPAXPAU__HWOBJ@@@Z| PROC ; CBulPdd16550SUART::CBulPdd16550SUART

; 154  :     { 

  00000		 |$L31251|
  00000	e92d4010	 stmdb       sp!, {r4, lr}
  00004		 |$M31249|
  00004	e1a04000	 mov         r4, r0
  00008	eb000000	 bl          |??0CBulPdd16550@@QAA@PAGPAXPAU__HWOBJ@@@Z|
  0000c	e59f3020	 ldr         r3, [pc, #0x20]
  00010	e59f2018	 ldr         r2, [pc, #0x18]

; 155  :         m_pBCRReg = NULL;     

  00014	e3a01000	 mov         r1, #0
  00018	e5843000	 str         r3, [r4]
  0001c	e58420fc	 str         r2, [r4, #0xFC]
  00020	e5841154	 str         r1, [r4, #0x154]

; 156  :     };

  00024	e1a00004	 mov         r0, r4
  00028	e8bd4010	 ldmia       sp!, {r4, lr}
  0002c	e12fff1e	 bx          lr
  00030		 |$L31254|
  00030	00000000	 DCD         |??_7CBulPdd16550SUART@@6BCMiniThread@@@|
  00034	00000000	 DCD         |??_7CBulPdd16550SUART@@6BCSerialPDD@@@|
  00038		 |$M31250|

			 ENDP  ; |??0CBulPdd16550SUART@@QAA@PAGPAXPAU__HWOBJ@@@Z|, CBulPdd16550SUART::CBulPdd16550SUART

	EXPORT	|??1CBulPdd16550SUART@@UAA@XZ|		; CBulPdd16550SUART::~CBulPdd16550SUART

  00000			 AREA	 |.text| { |??1CBulPdd16550SUART@@UAA@XZ| }, CODE, ARM, SELECTION=2 ; comdat any

  00000			 AREA	 |.pdata$$??1CBulPdd16550SUART@@UAA@XZ|, PDATA, SELECTION=5, ASSOC=|.text| { |??1CBulPdd16550SUART@@UAA@XZ| } ; comdat associative

⌨️ 快捷键说明

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