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

📄 main.lst

📁 USB interface examples using CDC by HT-PICC 18
💻 LST
📖 第 1 页 / 共 5 页
字号:
   704  007A9C  0012               	return	
   705  007A9E                     _USBCtrlEPService:
   706  000000                     
   707                           ;GenericUSB.h: 858: void USBCtrlEPService(void)
   708  007A9E  506C               	movf	3948,w,c	;volatile
   709  007AA0  E10A               	bnz	l91
   710                           ;GenericUSB.h: 861: {
   711  007AA2  EE04 F000          	lfsr	0,1024
   712  007AA6  30EF               	rrcf	indf0,w,c
   713  007AA8  6E00               	movwf	btemp,c
   714  007AAA  3000               	rrcf	btemp,w,c
   715  007AAC  0B0F               	andlw	15
   716  007AAE  0A0D               	xorlw	13
   717  007AB0  E101               	bnz	l92
   718                           ;GenericUSB.h: 863: USBCtrlTrfSetup();
   719  007AB2  D00E               	goto	_USBCtrlTrfSetup	;wreg free
   720  007AB4                     l92:
   721                           ;GenericUSB.h: 864: else
   722  007AB4  D017               	goto	_USBCtrlTrfOut	;wreg free
   723                           ;GenericUSB.h: 866: }
   724  007AB6                     l91:
   725                           ;GenericUSB.h: 867: else if(USTAT == (0x00<<3)|(
      +                          1<<2))
   726  007AB6  506C               	movf	3948,w,c	;volatile
   727  007AB8  0E00               	movlw	0
   728  007ABA  B4D8               	btfsc	status,2,c
   729  007ABC  0E01               	movlw	1
   730  007ABE  6E00               	movwf	btemp,c
   731  007AC0  6A01               	clrf	btemp+1,c
   732  007AC2  0E04               	movlw	4
   733  007AC4  1200               	iorwf	btemp,f,c
   734  007AC6  5001               	movf	btemp+1,w,c
   735  007AC8  1000               	iorwf	btemp,w,c
   736  007ACA  A4D8               	btfss	status,2,c
   737                           ;GenericUSB.h: 868: USBCtrlTrfIn();
   738  007ACC  D81C               	call	_USBCtrlTrfIn	;wreg free
   739                           ;GenericUSB.h: 870: }
   740  007ACE  0012               	return	
   741  007AD0                     _USBCtrlTrfSetup:
   742  000000                     
   743                           ;GenericUSB.h: 873: void USBCtrlTrfSetup(void)
   744  007AD0  0103               	movlb	_ctrl_trf_state shr (0+8)
   745  007AD2  6BFA               	clrf	_ctrl_trf_state& (0+255),b
   746                           ;GenericUSB.h: 877: ctrl_trf_session_owner = 0;
   747  007AD4  0103               	movlb	_ctrl_trf_session_owner shr (0+8)
   748  007AD6  6BF9               	clrf	_ctrl_trf_session_owner& (0+255),b
   749                           ;GenericUSB.h: 878: wCount._word = 0;
   750  007AD8  EE00  F0BB         	lfsr	0,_wCount
   751  007ADC  6AEE               	clrf	postinc0,c
   752  007ADE  6AEE               	clrf	postinc0,c
   753                           ;GenericUSB.h: 879: USBCheckStdRequest();
   754  007AE0  DE2B               	call	_USBCheckStdRequest	;wreg free
   755                           ;GenericUSB.h: 880: USBCtrlEPServiceComplete();
   756  007AE2  D0CB               	goto	_USBCtrlEPServiceComplete	;wreg free
   757                           ;GenericUSB.h: 881: }
   758  007AE4                     _USBCtrlTrfOut:
   759  000000                     
   760                           ;GenericUSB.h: 883: void USBCtrlTrfOut(void)
   761  007AE4  C3FA  FFE8         	movff	_ctrl_trf_state,wreg
   762  007AE8  0A02               	xorlw	2
   763  007AEA  E10C               	bnz	l98
   764                           ;GenericUSB.h: 886: {
   765  007AEC  D896               	call	_USBCtrlTrfRxService	;wreg free
   766                           ;GenericUSB.h: 888: if(ep[0].out.a.Status.a.DTS 
      +                          == 0)
   767  007AEE  0104               	movlb	4
   768  007AF0  BD00               	btfsc	0,6,b
   769  007AF2  D004               	goto	l99
   770                           ;GenericUSB.h: 889: ep[0].out.a.Status._byte = 0
      +                          x80|0x40|0x08;
   771  007AF4  0EC8               	movlw	-56
   772  007AF6  CFE8 F400          	movff	wreg,1024
   773  007AFA  0012               	return	
   774  007AFC                     l99:
   775                           ;GenericUSB.h: 890: else
   776  007AFC  0E88               	movlw	-120
   777  007AFE  CFE8 F400          	movff	wreg,1024
   778                           ;GenericUSB.h: 892: }
   779  007B02  0012               	return	
   780  007B04                     l98:
   781                           ;GenericUSB.h: 893: else
   782  007B04  D10B               	goto	_USBPrepareForNextSetupTrf	;wreg free
   783                           ;GenericUSB.h: 895: }
   784  007B06                     _USBCtrlTrfIn:
   785  000000                     
   786                           ;GenericUSB.h: 898: void USBCtrlTrfIn(void)
   787  007B06  C3FD  FFE8         	movff	_usb_device_state,wreg
   788  007B0A  0A04               	xorlw	4
   789  007B0C  E109               	bnz	l103
   790  007B0E  C482 FF6E          	movff	1154,3950
   791  007B12  506E               	movf	3950,w,c
   792  007B14  E002               	bz	l104
   793  007B16  0E05               	movlw	5
   794  007B18  D001               	goto	L2
   795  007B1A                     l104:
   796  007B1A  0E03               	movlw	3
   797  007B1C                     L2:
   798  007B1C  CFE8 F3FD          	movff	wreg,_usb_device_state
   799  007B20                     l103:
   800                           ;GenericUSB.h: 902: if(ctrl_trf_state == 1)
   801  007B20  C3FA  F000         	movff	_ctrl_trf_state,btemp
   802  007B24  0400               	decf	btemp,w,c
   803  007B26  E10C               	bnz	l106
   804                           ;GenericUSB.h: 903: {
   805  007B28  D80C               	call	_USBCtrlTrfTxService	;wreg free
   806                           ;GenericUSB.h: 906: if(ep[0].in.a.Status.a.DTS =
      +                          = 0)
   807  007B2A  0104               	movlb	4
   808  007B2C  BD04               	btfsc	4,6,b
   809  007B2E  D004               	goto	l107
   810                           ;GenericUSB.h: 907: ep[0].in.a.Status._byte = 0x
      +                          80|0x40|0x08;
   811  007B30  0EC8               	movlw	-56
   812  007B32  CFE8 F404          	movff	wreg,1028
   813  007B36  0012               	return	
   814  007B38                     l107:
   815                           ;GenericUSB.h: 908: else
   816  007B38  0E88               	movlw	-120
   817  007B3A  CFE8 F404          	movff	wreg,1028
   818                           ;GenericUSB.h: 910: }
   819  007B3E  0012               	return	
   820  007B40                     l106:
   821                           ;GenericUSB.h: 911: else
   822  007B40  D0ED               	goto	_USBPrepareForNextSetupTrf	;wreg free
   823                           ;GenericUSB.h: 913: }
   824  007B42                     _USBCtrlTrfTxService:
   825  000000                     
   826                           ;	_byte_to_send assigned to ?a_USBCtrlTrfTxServi
      +                          ce+0
   827  000000                     _USBCtrlTrfTxService$byte_to_send	set	?a_USBCtrl
      +                          TrfTxService
   828                           ;GenericUSB.h: 917: void USBCtrlTrfTxService(voi
      +                          d)
   829  007B42  0100               	movlb	_wCount shr (0+8)
   830  007B44  0E00               	movlw	0
   831  007B46  5DBC               	subwf	(_wCount+1)& (0+255),w,b
   832  007B48  0E40               	movlw	64
   833  007B4A  B4D8               	btfsc	status,2,c
   834  007B4C  5DBB               	subwf	_wCount& (0+255),w,b
   835  007B4E  E205               	bc	l111
   836                           ;GenericUSB.h: 921: byte_to_send._word = wCount.
      +                          _word;
   837  007B50  C0BB  F0BD         	movff	_wCount,?a_USBCtrlTrfTxService
   838  007B54  C0BC  F0BE         	movff	_wCount+1,?a_USBCtrlTrfTxService+1
   839  007B58  D004               	goto	l112
   840  007B5A                     l111:
   841                           ;GenericUSB.h: 922: else
   842  007B5A  0E40               	movlw	64
   843  007B5C  0100               	movlb	__Lparam shr (0+8)
   844  007B5E  6FBD               	movwf	?a_USBCtrlTrfTxService^(__Lparam& (0+6528
      +                          0)),b
   845  007B60  6BBE               	clrf	(?a_USBCtrlTrfTxService+1)^(__Lparam& (0+6
      +                          5280)),b
   846  007B62                     l112:
   847                           ;GenericUSB.h: 924: ep[0].in.a.Status.a.BC9 = 0;
   848  007B62  0104               	movlb	4
   849  007B64  9304               	bcf	4,1,b
   850                           ;GenericUSB.h: 925: ep[0].in.a.Status.a.BC8 = 0;
   851  007B66  9104               	bcf	4,0,b
   852                           ;GenericUSB.h: 926: ep[0].in.a.Status._byte |= (
      +                          (byte_to_send).d.v[1]);
   853  007B68  0100               	movlb	__Lparam shr (0+8)
   854  007B6A  51BE               	movf	(?a_USBCtrlTrfTxService+1)^(__Lparam& (0+6
      +                          5280)),w
   855  007B6C  0104               	movlb	4
   856  007B6E  1304               	iorwf	4,f,b
   857                           ;GenericUSB.h: 927: ep[0].in._byte[1] = ((byte_t
      +                          o_send).d.v[0]);
   858  007B70  EE04 F005          	lfsr	0,1029
   859  007B74  C0BD  FFEF         	movff	?a_USBCtrlTrfTxService,indf0
   860                           ;GenericUSB.h: 928: wCount._word = wCount._word 
      +                          - byte_to_send._word;
   861  007B78  C0BD  F000         	movff	?a_USBCtrlTrfTxService,btemp
   862  007B7C  C0BE  F001         	movff	?a_USBCtrlTrfTxService+1,btemp+1
   863  007B80  0100               	movlb	_wCount shr (0+8)
   864  007B82  C000  FFE8         	movff	btemp,wreg
   865  007B86  5FBB               	subwf	_wCount& (0+255),f,b
   866  007B88  C001  FFE8         	movff	btemp+1,wreg
   867  007B8C  5BBC               	subwfb	(_wCount+1)& (0+255),f,b
   868                           ;GenericUSB.h: 929: pDst.bRam = (byte*)&CtrlTrfD
      +                          ata;
   869  007B8E  0EC0               	movlw	192
   870  007B90  6FB7               	movwf	_pDst& (0+255),b
   871  007B92  0E04               	movlw	4
   872  007B94  6FB8               	movwf	(_pDst+1)& (0+255),b
   873                           ;GenericUSB.h: 930: if(usb_stat.a.ctrl_trf_mem =
      +                          = 1)
   874  007B96  0103               	movlb	_usb_stat shr (0+8)
   875  007B98  B3FE               	btfsc	_usb_stat& (0+255),1,b
   876  007B9A  D01F               	goto	l114
   877  007B9C  D038               	goto	l118
   878                           ;GenericUSB.h: 931: {
   879  007B9E                     l115:
   880                           ;GenericUSB.h: 933: {
   881  007B9E  C0B9  FFF6         	movff	_pSrc,tblptrl
   882  007BA2  C0BA  FFF7         	movff	_pSrc+1,tblptrh
   883  007BA6  C0B7  FFE9         	movff	_pDst,fsr0l
   884  007BAA  C0B8  FFEA         	movff	_pDst+1,fsr0h
   885  007BAE  0E03               	movlw	(high __ramtop+-1)
   886  007BB0  64F7               	cpfsgt	tblptrh,c
   887  007BB2  D003               	bra	u317
   888  007BB4  0008               	tblrd		*
   889  007BB6  50F5               	movf	tablat,w,c
   890  007BB8  D005               	bra	u310
   891  007BBA                     u317:
   892  007BBA  CFF6 FFE1          	movff	tblptrl,fsr1l
   893  007BBE  CFF7 FFE2          	movff	tblptrh,fsr1h
   894  007BC2  50E7               	movf	indf1,w,c
   895  007BC4                     u310:
   896  007BC4  6EEF               	movwf	indf0,c
   897                           ;GenericUSB.h: 935: pDst.bRam++;
   898  007BC6  0100               	movlb	_pDst shr (0+8)
   899  007BC8  2BB7               	incf	_pDst& (0+255),f,b
   900  007BCA  0E00               	movlw	0
   901  007BCC  23B8               	addwfc	(_pDst+1)& (0+255),f,b
   902                           ;GenericUSB.h: 936: pSrc.bRom++;
   903  007BCE  2BB9               	incf	_pSrc& (0+255),f,b
   904  007BD0  23BA               	addwfc	(_pSrc+1)& (0+255),f,b
   905                           ;GenericUSB.h: 937: byte_to_send._word--;
   906  007BD2  0100               	movlb	__Lparam shr (0+8)
   907  007BD4  07BD               	decf	?a_USBCtrlTrfTxService^(__Lparam& (0+65280
      +                          )),f,b
   908  007BD6  A0D8               	btfss	status,0,c
   909  007BD8  07BE               	decf	(?a_USBCtrlTrfTxService+1)^(__Lparam& (0+6
      +                          5280)),f,b
   910  007BDA                     l114:
   911  007BDA  0100               	movlb	__Lparam shr (0+8)
   912  007BDC  51BE               	movf	(?a_USBCtrlTrfTxService+1)^(__Lparam& (0+6
      +                          5280)),w
   913  007BDE  11BD               	iorwf	?a_USBCtrlTrfTxService^(__Lparam& (0+6528
      +                          0)),w
   914  007BE0  B4D8               	btfsc	status,2,c
   915  007BE2  0012               	return	
   916  007BE4  D7DC               	goto	l115
   917                           ;GenericUSB.h: 938: }
   918                           ;GenericUSB.h: 940: else
   919  007BE6                     l119:
   920                           ;GenericUSB.h: 943: {
   921  007BE6  C0B9  FFE1         	movff	_pSrc,fsr1l
   922  007BEA  C0BA  FFE2         	movff	_pSrc+1,fsr1h
   923  007BEE  C0B7  FFE9         	movff	_pDst,fsr0l
   924  007BF2  C0B8  FFEA         	movff	_pDst+1,fsr0h
   925  007BF6  CFE7 FFEF          	movff	indf1,indf0
   926                           ;GenericUSB.h: 945: pDst.bRam++;

⌨️ 快捷键说明

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