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

📄 usb_lib_et.asm

📁 基于义统et44的AD与PWM控制程序,简单的输出输入动作控制程序,可用于自行设定任何控制.
💻 ASM
📖 第 1 页 / 共 4 页
字号:
;   _StageOne
;; Starting pCode block
_Int_Int0Rxe:	;Function start
; 0 exit points
;#CSRC	E:\Usb_Hid\Interrupt\HID_AD_PWM\firmware_ad\usb_lib.c (207)
;  if(M_ISBS0(EP0RXTR))    // JBS	EP0RXTR,OUT,f_out_package
	JBC	_EP0RXTR,0,_00131_DS_usb_lib_Int_Int0Rxe
;#CSRC	E:\Usb_Hid\Interrupt\HID_AD_PWM\firmware_ad\usb_lib.c (209)
;  EP0RXTR = 0xFE; //#0b11111110
	MOV	A,#0xfe
	MOV	_EP0RXTR,A
	NOP			;inline asm
	NOP			;inline asm
	NOP 			;inline asm
;#CSRC	E:\Usb_Hid\Interrupt\HID_AD_PWM\firmware_ad\usb_lib.c (212)
;  if(M_ISBC2(FC_STATUS))
	JBC	_FC_STATUS,2,_00133_DS_usb_lib_Int_Int0Rxe
;#CSRC	E:\Usb_Hid\Interrupt\HID_AD_PWM\firmware_ad\usb_lib.c (216)
;  M_BC2(FC_STATUS);   
	BC	_FC_STATUS,2
;#CSRC	E:\Usb_Hid\Interrupt\HID_AD_PWM\firmware_ad\usb_lib.c (218)
;  AddUsbSetReportSub();  
	CALL	_AddUsbSetReportSub
;#CSRC	E:\Usb_Hid\Interrupt\HID_AD_PWM\firmware_ad\usb_lib.c (220)
;  nwLength = 0;     
	CLR	_nwLength
	CLR	_nwLength + 1
	JMP	_00133_DS_usb_lib_Int_Int0Rxe
_00131_DS_usb_lib_Int_Int0Rxe:
;#CSRC	E:\Usb_Hid\Interrupt\HID_AD_PWM\firmware_ad\usb_lib.c (230)
;  if(M_ISBS1(EP0RXTR))
	JBC	_EP0RXTR,1,_00121_DS_usb_lib_Int_Int0Rxe
;#CSRC	E:\Usb_Hid\Interrupt\HID_AD_PWM\firmware_ad\usb_lib.c (232)
;  EP0RXTR = 0xFD; //#0b11111101        
	MOV	A,#0xfd
	MOV	_EP0RXTR,A
	JMP	_00122_DS_usb_lib_Int_Int0Rxe
_00121_DS_usb_lib_Int_Int0Rxe:
;#CSRC	E:\Usb_Hid\Interrupt\HID_AD_PWM\firmware_ad\usb_lib.c (236)
;  EP0RXTR = 0xFB; //#0b11111011
	MOV	A,#0xfb
	MOV	_EP0RXTR,A
_00122_DS_usb_lib_Int_Int0Rxe:
	NOP			;inline asm
	MOV A,#_bmRequestType			;inline asm
	MOV _IAP0,A			;inline asm
	NOP			;inline asm
_00123_DS_usb_lib_Int_Int0Rxe:
;#CSRC	E:\Usb_Hid\Interrupt\HID_AD_PWM\firmware_ad\usb_lib.c (247)
;  while(M_ISBC3(IAP0))
	JBS	_IAP0,3,_00125_DS_usb_lib_Int_Int0Rxe
;#CSRC	E:\Usb_Hid\Interrupt\HID_AD_PWM\firmware_ad\usb_lib.c (249)
;  IAC0 = EP0RXDAR;
	MOV	A,_EP0RXDAR
	MOV	_IAC0,A
	JMP	_00123_DS_usb_lib_Int_Int0Rxe
_00125_DS_usb_lib_Int_Int0Rxe:
;#CSRC	E:\Usb_Hid\Interrupt\HID_AD_PWM\firmware_ad\usb_lib.c (254)
;  if(!nwLength)
	MOV	A,_nwLength
	OR	A,_nwLength + 1
	JBC	_STTS,2,_00127_DS_usb_lib_Int_Int0Rxe
;#CSRC	E:\Usb_Hid\Interrupt\HID_AD_PWM\firmware_ad\usb_lib.c (256)
;  EP0TXCTR = 0;
	CLR	_EP0TXCTR
	NOP			;inline asm
	NOP			;inline asm
	NOP 			;inline asm
_00127_DS_usb_lib_Int_Int0Rxe:
;#CSRC	E:\Usb_Hid\Interrupt\HID_AD_PWM\firmware_ad\usb_lib.c (260)
;  M_BC1(USB_STATUS);
	BC	_USB_STATUS,1
;#CSRC	E:\Usb_Hid\Interrupt\HID_AD_PWM\firmware_ad\usb_lib.c (261)
;  M_BC0(USB_STATUS);
	BC	_USB_STATUS,0
;#CSRC	E:\Usb_Hid\Interrupt\HID_AD_PWM\firmware_ad\usb_lib.c (262)
;  M_BC2(USB_STATUS);
	BC	_USB_STATUS,2
;#CSRC	E:\Usb_Hid\Interrupt\HID_AD_PWM\firmware_ad\usb_lib.c (263)
;  M_BC5(USB_STATUS);
	BC	_USB_STATUS,5
;#CSRC	E:\Usb_Hid\Interrupt\HID_AD_PWM\firmware_ad\usb_lib.c (268)
;  StageOne();
	CALL	_StageOne
;#CSRC	E:\Usb_Hid\Interrupt\HID_AD_PWM\firmware_ad\usb_lib.c (270)
;  if(M_ISBS0(USB_STATUS)) 
	JBC	_USB_STATUS,0,_00133_DS_usb_lib_Int_Int0Rxe
;#CSRC	E:\Usb_Hid\Interrupt\HID_AD_PWM\firmware_ad\usb_lib.c (272)
;  M_BS1(EP0RXCSR);
	BS	_EP0RXCSR,1
	NOP			;inline asm
	NOP			;inline asm
	NOP 			;inline asm
;#CSRC	E:\Usb_Hid\Interrupt\HID_AD_PWM\firmware_ad\usb_lib.c (274)
;  M_BS1(EP0TXCSR); 
	BS	_EP0TXCSR,1
	NOP			;inline asm
	NOP			;inline asm
	NOP 			;inline asm
;#CSRC	E:\Usb_Hid\Interrupt\HID_AD_PWM\firmware_ad\usb_lib.c (276)
;  goto Back_To_Mloop;       
	JMP	_00135_DS_usb_lib_Int_Int0Rxe
_00133_DS_usb_lib_Int_Int0Rxe:
;#CSRC	E:\Usb_Hid\Interrupt\HID_AD_PWM\firmware_ad\usb_lib.c (281)
;  M_BC1(EP0RXCSR);
	BC	_EP0RXCSR,1
	NOP			;inline asm
	NOP			;inline asm
	NOP 			;inline asm
;#CSRC	E:\Usb_Hid\Interrupt\HID_AD_PWM\firmware_ad\usb_lib.c (283)
;  M_BC1(EP0TXCSR);
	BC	_EP0TXCSR,1
	NOP			;inline asm
	NOP			;inline asm
	NOP 			;inline asm
;#CSRC	E:\Usb_Hid\Interrupt\HID_AD_PWM\firmware_ad\usb_lib.c (285)
;  M_BS0(EP0RXCSR);
	BS	_EP0RXCSR,0
	NOP			;inline asm
	NOP			;inline asm
	NOP 			;inline asm
;#CSRC	E:\Usb_Hid\Interrupt\HID_AD_PWM\firmware_ad\usb_lib.c (287)
;  M_BS0(EP0TXCSR); 
	BS	_EP0TXCSR,0
_00135_DS_usb_lib_Int_Int0Rxe:
;#CSRC	E:\Usb_Hid\Interrupt\HID_AD_PWM\firmware_ad\usb_lib.c (302)
;  return;        
	RETI	
;***
;  pBlock Stats: dbName = I
;***
;entry:  _Int_Int0Ine:	;Function start
; 0 exit points
;Using Bank: Bank1
;; Starting pCode block
_Int_Int0Ine:	;Function start
; 0 exit points
;#CSRC	E:\Usb_Hid\Interrupt\HID_AD_PWM\firmware_ad\usb_lib.c (319)
;  EPINTR = 251;//#0b11111011
	MOV	A,#0xfb
	MOV	_EPINTR,A
	NOP			;inline asm
	NOP			;inline asm
	NOP 			;inline asm
;#CSRC	E:\Usb_Hid\Interrupt\HID_AD_PWM\firmware_ad\usb_lib.c (333)
;  return;  
	RETI	
;***
;  pBlock Stats: dbName = I
;***
;entry:  _Int_Int0Txe:	;Function start
; 0 exit points
;Using Bank: Bank1
;functions called:
;   _AddUsbGetReportExpSub
;   _fTransmitTable
;; Starting pCode block
_Int_Int0Txe:	;Function start
; 0 exit points
;#CSRC	E:\Usb_Hid\Interrupt\HID_AD_PWM\firmware_ad\usb_lib.c (350)
;  EPINTR = 253;//#0b11111101
	MOV	A,#0xfd
	MOV	_EPINTR,A
	NOP			;inline asm
	NOP			;inline asm
	NOP 			;inline asm
;#CSRC	E:\Usb_Hid\Interrupt\HID_AD_PWM\firmware_ad\usb_lib.c (353)
;  FAR = ADDRESS_BUFf;
	MOV	A,_ADDRESS_BUFf
	MOV	_FAR,A
	NOP			;inline asm
	NOP			;inline asm
	NOP 			;inline asm
;#CSRC	E:\Usb_Hid\Interrupt\HID_AD_PWM\firmware_ad\usb_lib.c (355)
;  if(!TBLL)
	ZCHK	_TBLL
	JBC	_STTS,2,_00149_DS_usb_lib_Int_Int0Txe
;#CSRC	E:\Usb_Hid\Interrupt\HID_AD_PWM\firmware_ad\usb_lib.c (357)
;  EP0TXCTR=0;
	CLR	_EP0TXCTR
	NOP			;inline asm
	NOP			;inline asm
	NOP 			;inline asm
;#CSRC	E:\Usb_Hid\Interrupt\HID_AD_PWM\firmware_ad\usb_lib.c (358)
;  M_NOP;
	JMP	_00151_DS_usb_lib_Int_Int0Txe
_00149_DS_usb_lib_Int_Int0Txe:
;#CSRC	E:\Usb_Hid\Interrupt\HID_AD_PWM\firmware_ad\usb_lib.c (360)
;  else if(wLengthH)
	ZCHK	_wLengthH
	JBS	_STTS,2,_00151_DS_usb_lib_Int_Int0Txe
;#CSRC	E:\Usb_Hid\Interrupt\HID_AD_PWM\firmware_ad\usb_lib.c (362)
;  if(M_ISBS5(FC_STATUS))
	JBC	_FC_STATUS,5,_00144_DS_usb_lib_Int_Int0Txe
;#CSRC	E:\Usb_Hid\Interrupt\HID_AD_PWM\firmware_ad\usb_lib.c (365)
;  AddUsbGetReportExpSub();
	CALL	_AddUsbGetReportExpSub
	JMP	_00151_DS_usb_lib_Int_Int0Txe
_00144_DS_usb_lib_Int_Int0Txe:
;#CSRC	E:\Usb_Hid\Interrupt\HID_AD_PWM\firmware_ad\usb_lib.c (369)
;  nTable = nRomAdr;
	MOV	A,_nRomAdr
	MOV	_nTable,A
	MOV	A,_nRomAdr + 1
	MOV	_nTable + 1,A
	NOP			;inline asm
	NOP			;inline asm
	NOP 			;inline asm
;#CSRC	E:\Usb_Hid\Interrupt\HID_AD_PWM\firmware_ad\usb_lib.c (373)
;  fTransmitTable();
	CALL	_fTransmitTable
_00151_DS_usb_lib_Int_Int0Txe:
;#CSRC	E:\Usb_Hid\Interrupt\HID_AD_PWM\firmware_ad\usb_lib.c (378)
;  M_BC1(EP0RXCSR);
	BC	_EP0RXCSR,1
	NOP			;inline asm
	NOP			;inline asm
	NOP 			;inline asm
;#CSRC	E:\Usb_Hid\Interrupt\HID_AD_PWM\firmware_ad\usb_lib.c (380)
;  M_BC1(EP0TXCSR);
	BC	_EP0TXCSR,1
	NOP			;inline asm
	NOP			;inline asm
	NOP 			;inline asm
;#CSRC	E:\Usb_Hid\Interrupt\HID_AD_PWM\firmware_ad\usb_lib.c (382)
;  M_BS0(EP0RXCSR);
	BS	_EP0RXCSR,0
	NOP			;inline asm
	NOP			;inline asm
	NOP 			;inline asm
;#CSRC	E:\Usb_Hid\Interrupt\HID_AD_PWM\firmware_ad\usb_lib.c (384)
;  M_BS0(EP0TXCSR); 
	BS	_EP0TXCSR,0
	RETI	
;***
;  pBlock Stats: dbName = I
;***
;entry:  _Int_Int1e:	;Function start
; 0 exit points
;Using Bank: Bank1
;functions called:
;   _AddUsbEp1Sub
;; Starting pCode block
_Int_Int1e:	;Function start
; 0 exit points
;#CSRC	E:\Usb_Hid\Interrupt\HID_AD_PWM\firmware_ad\usb_lib.c (398)
;  EPINTR = 247; // #0b11110111
	MOV	A,#0xf7
	MOV	_EPINTR,A
	NOP			;inline asm
	NOP			;inline asm
	NOP 			;inline asm
;#CSRC	E:\Usb_Hid\Interrupt\HID_AD_PWM\firmware_ad\usb_lib.c (401)
;  AddUsbEp1Sub();
	CALL	_AddUsbEp1Sub
;#CSRC	E:\Usb_Hid\Interrupt\HID_AD_PWM\firmware_ad\usb_lib.c (416)
;  return;  
	RETI	
;***
;  pBlock Stats: dbName = I
;***
;entry:  _Int_Int2e:	;Function start
; 0 exit points
;Using Bank: Bank1
;functions called:
;   _UsbIntPre
;   _AddUsbEp2Sub
;; Starting pCode block
_Int_Int2e:	;Function start
; 0 exit points
;#CSRC	E:\Usb_Hid\Interrupt\HID_AD_PWM\firmware_ad\usb_lib.c (428)
;  UsbIntPre();
	CALL	_UsbIntPre
;#CSRC	E:\Usb_Hid\Interrupt\HID_AD_PWM\firmware_ad\usb_lib.c (429)
;  EPINTR = 239; // #0b11101111
	MOV	A,#0xef
	MOV	_EPINTR,A
	NOP			;inline asm
	NOP			;inline asm
	NOP 			;inline asm
;#CSRC	E:\Usb_Hid\Interrupt\HID_AD_PWM\firmware_ad\usb_lib.c (432)
;  AddUsbEp2Sub();
	CALL	_AddUsbEp2Sub
;#CSRC	E:\Usb_Hid\Interrupt\HID_AD_PWM\firmware_ad\usb_lib.c (447)
;  return; 
	RETI	
;***
;  pBlock Stats: dbName = I
;***
;entry:  _Int_Int3e:	;Function start
; 0 exit points
;Using Bank: Bank1
;functions called:
;   _UsbIntPre
;   _AddUsbEp3Sub
;; Starting pCode block
_Int_Int3e:	;Function start
; 0 exit points
;#CSRC	E:\Usb_Hid\Interrupt\HID_AD_PWM\firmware_ad\usb_lib.c (461)
;  UsbIntPre();
	CALL	_UsbIntPre
;#CSRC	E:\Usb_Hid\Interrupt\HID_AD_PWM\firmware_ad\usb_lib.c (462)
;  EPINTR = 223; // #0b11011111
	MOV	A,#0xdf
	MOV	_EPINTR,A
	NOP			;inline asm
	NOP			;inline asm
	NOP 			;inline asm
;#CSRC	E:\Usb_Hid\Interrupt\HID_AD_PWM\firmware_ad\usb_lib.c (465)
;  AddUsbEp3Sub();
	CALL	_AddUsbEp3Sub
;#CSRC	E:\Usb_Hid\Interrupt\HID_AD_PWM\firmware_ad\usb_lib.c (480)
;  return; 
	RETI	
;***
;  pBlock Stats: dbName = I
;***
;entry:  _Int_IdleInte:	;Function start
; 0 exit points
;Using Bank: Bank1
;functions called:
;   _AddUsbIdleIntSub
;; Starting pCode block
_Int_IdleInte:	;Function start
; 0 exit points
;#CSRC	E:\Usb_Hid\Interrupt\HID_AD_PWM\firmware_ad\usb_lib.c (498)
;  STAINTE = 0x0F;
	MOV	A,#0x0f
	MOV	_STAINTE,A
	NOP			;inline asm
	NOP			;inline asm
	NOP 			;inline asm
;#CSRC	E:\Usb_Hid\Interrupt\HID_AD_PWM\firmware_ad\usb_lib.c (501)
;  STAINTR = 253; //#0b11111101
	MOV	A,#0xfd
	MOV	_STAINTR,A
	NOP			;inline asm
	NOP			;inline asm
	NOP 			;inline asm
;#CSRC	E:\Usb_Hid\Interrupt\HID_AD_PWM\firmware_ad\usb_lib.c (504)
;  M_BS2(GCNTR);
	BS	_GCNTR,2
	NOP			;inline asm
	NOP			;inline asm
	NOP 			;inline asm
;#CSRC	E:\Usb_Hid\Interrupt\HID_AD_PWM\firmware_ad\usb_lib.c (508)
;  AddUsbIdleIntSub();
	CALL	_AddUsbIdleIntSub
;#CSRC	E:\Usb_Hid\Interrupt\HID_AD_PWM\firmware_ad\usb_lib.c (522)
;  return;    
	RETI	
;***
;  pBlock Stats: dbName = I
;***
;entry:  _Int_FrwpInte:	;Function start
; 0 exit points
;Using Bank: Bank1
;functions called:
;   _AddUsbWakeup
;; Starting pCode block
_Int_FrwpInte:	;Function start
; 0 exit points
;#CSRC	E:\Usb_Hid\Interrupt\HID_AD_PWM\firmware_ad\usb_lib.c (538)
;  if(M_ISBC2(STAINTR))
	JBS	_STAINTR,2,_00173_DS_usb_lib_Int_FrwpInte
;#CSRC	E:\Usb_Hid\Interrupt\HID_AD_PWM\firmware_ad\usb_lib.c (540)
;  STAINTE = 7;
	MOV	A,#0x07
	MOV	_STAINTE,A
	NOP			;inline asm
	NOP			;inline asm
	NOP 			;inline asm
;#CSRC	E:\Usb_Hid\Interrupt\HID_AD_PWM\firmware_ad\usb_lib.c (541)
;  M_NOP;
	JMP	_00174_DS_usb_lib_Int_FrwpInte
_00173_DS_usb_lib_Int_FrwpInte:
;#CSRC	E:\Usb_Hid\Interrupt\HID_AD_PWM\firmware_ad\usb_lib.c (545)
;  STAINTE = 0x0B;
	MOV	A,#0x0b
	MOV	_STAINTE,A
	NOP			;inline asm
	NOP			;inline asm
	NOP 			;inline asm
_00174_DS_usb_lib_Int_FrwpInte:
;#CSRC	E:\Usb_Hid\Interrupt\HID_AD_PWM\firmware_ad\usb_lib.c (549)
;  AddUsbWakeup();   
	CALL	_AddUsbWakeup
;#CSRC	E:\Usb_Hid\Interrupt\HID_AD_PWM\firmware_ad\usb_lib.c (562)
;  return;    
	RETI	
;***
;  pBlock Stats: dbName = I
;***
;entry:  _Int_SofInte:	;Function start
; 0 exit points
;Using Bank: Bank1
;functions called:
;   _AddUsbSof
;; Starting pCode block
_Int_SofInte:	;Function start
; 0 exit points
;#CSRC	E:\Usb_Hid\Interrupt\HID_AD_PWM\firmware_ad\usb_lib.c (894)
;  HINTR = 191;//#0b10111111
	MOV	A,#0xbf
	MOV	_HINTR,A
	NOP			;inline asm
	NOP			;inline asm
	NOP 			;inline asm
;#CSRC	E:\Usb_Hid\Interrupt\HID_AD_PWM\firmware_ad\usb_lib.c (899)
;  AddUsbSof();
	CALL	_AddUsbSof
;#CSRC	E:\Usb_Hid\Interrupt\HID_AD_PWM\firmware_ad\usb_lib.c (901)
;  if(HEP1_CNT)
	ZCHK	_HEP1_CNT

⌨️ 快捷键说明

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