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

📄 usb9.lst

📁 USB的开发例子,用PIC18F4550实现.可以和电脑用USB控制连接.
💻 LST
📖 第 1 页 / 共 3 页
字号:
   454  00027A  EE04 F084          	lfsr	0,1156
   455  00027E  50EF               	movf	indf0,w,c
   456  000280  0B0F               	andlw	15
   457  000282  6E00               	movwf	btemp
   458  000284  90D8               	bcf	status,0,c
   459  000286  3400               	rlcf	btemp,w
   460  000288  6E00               	movwf	btemp
   461  00028A  6A01               	clrf	btemp+1
   462  00028C  3601               	rlcf	btemp+1,f
   463  00028E  EE04 F084          	lfsr	0,1156
   464  000292  34EF               	rlcf	indf0,w,c
   465  000294  34EF               	rlcf	indf0,w,c
   466  000296  0B01               	andlw	1
   467  000298  2400               	addwf	btemp,w
   468  00029A  6E02               	movwf	btemp+2
   469  00029C  0E00               	movlw	0
   470  00029E  2001               	addwfc	btemp+1,w
   471  0002A0  6E03               	movwf	btemp+3
   472  0002A2  90D8               	bcf	status,0,c
   473  0002A4  3602               	rlcf	btemp+2,f
   474  0002A6  3603               	rlcf	btemp+3,f
   475  0002A8  90D8               	bcf	status,0,c
   476  0002AA  3602               	rlcf	btemp+2,f
   477  0002AC  3603               	rlcf	btemp+3,f
   478  0002AE  0E00               	movlw	0
   479  0002B0  2402               	addwf	btemp+2,w
   480  0002B2  CFE8 F0E1          	movff	wreg,_pDst
   481  0002B6  0E04               	movlw	4
   482  0002B8  2003               	addwfc	btemp+3,w
   483  0002BA  CFE8 F0E2          	movff	wreg,_pDst+1
   484                           ;usb9.c: 249: if(*pDst.bRam & 0x04)
   485  0002BE  C0E1  FFE9         	movff	_pDst,fsr0l
   486  0002C2  C0E2  FFEA         	movff	_pDst+1,fsr0h
   487  0002C6  50EF               	movf	indf0,w,c
   488  0002C8  6E00               	movwf	btemp
   489  0002CA  A400               	btfss	btemp,2
   490  0002CC  D00D               	goto	l105
   491                           ;usb9.c: 250: CtrlTrfData.b._byte0=0x01;
   492  0002CE  0E01               	movlw	1
   493  0002D0  CFE8 F4C0          	movff	wreg,1216
   494                           ;usb9.c: 251: break;
   495  0002D4  D009               	goto	l105
   496  0002D6                     l106:
   497  0002D6  EE04 F080          	lfsr	0,1152
   498  0002DA  50EF               	movf	indf0,w,c
   499  0002DC  0B1F               	andlw	31
   500  0002DE  E0BB               	bz	l107
   501  0002E0  0A01               	xorlw	1
   502  0002E2  E0C4               	bz	l110
   503  0002E4  0A03               	xorlw	3
   504  0002E6  E0C6               	bz	l111
   505  0002E8                     l105:
   506                           ;usb9.c: 254: if(ctrl_trf_session_owner == 1)
   507  0002E8  C377  F000         	movff	_ctrl_trf_session_owner,btemp
   508  0002EC  0400               	decf	btemp,w
   509  0002EE  A4D8               	btfss	status,2,c
   510  0002F0  0012               	return	
   511                           ;usb9.c: 255: {
   512  0002F2  0100               	movlb	_pSrc shr (0+8)
   513  0002F4  0EC0               	movlw	192
   514  0002F6  6FE3               	movwf	_pSrc& (0+255),b
   515  0002F8  0E04               	movlw	4
   516  0002FA  6FE4               	movwf	(_pSrc+1)& (0+255),b
   517                           ;usb9.c: 257: usb_stat.a.ctrl_trf_mem = 0;
   518  0002FC  0103               	movlb	_usb_stat shr (0+8)
   519  0002FE  937C               	bcf	_usb_stat& (0+255),1
   520                           ;usb9.c: 258: ((wCount).d.v[0]) = 2;
   521  000300  0E02               	movlw	2
   522  000302  CFE8 F0E5          	movff	wreg,_wCount
   523                           ;usb9.c: 259: }
   524  000306  0012               	return	
   525                           ;usb9.c: 278: void USBStdFeatureReqHandler(void)
   526                           ;usb9.c: 279: {
   527  000308                     _USBStdFeatureReqHandler:
   528  000000                     
   529                           ;usb9.c: 280: if((SetupPkt.d.bFeature == 0x01)&&
   530  000308  C482 F000          	movff	1154,btemp
   531  00030C  0400               	decf	btemp,w
   532  00030E  A4D8               	btfss	status,2,c
   533  000310  D011               	goto	l115
   534  000312  C480 FFE8          	movff	1152,wreg
   535  000316  0B1F               	andlw	31
   536  000318  A4D8               	btfss	status,2,c
   537  00031A  D00C               	goto	l115
   538                           ;usb9.c: 282: {
   539  00031C  0E01               	movlw	1
   540  00031E  CFE8 F377          	movff	wreg,_ctrl_trf_session_owner
   541                           ;usb9.c: 284: if(SetupPkt.b.bRequest == 3)
   542  000322  C481 FFE8          	movff	1153,wreg
   543  000326  0A03               	xorlw	3
   544                           ;usb9.c: 285: usb_stat.a.RemoteWakeup = 1;
   545  000328  0103               	movlb	_usb_stat shr (0+8)
   546  00032A  A4D8               	btfss	status,2,c
   547  00032C  D002               	goto	L1
   548  00032E  817C               	bsf	_usb_stat& (0+255),0,b
   549                           ;usb9.c: 286: else
   550  000330  D001               	goto	l115
   551                           ;usb9.c: 287: usb_stat.a.RemoteWakeup = 0;
   552  000332                     L1:
   553  000332  917C               	bcf	_usb_stat& (0+255),0
   554  000334                     l115:
   555                           ;usb9.c: 288: }
   556                           ;usb9.c: 291: ((SetupPkt.b.bmRequestType & 0x1F)
      +                           == 2)&&
   557  000334  EE04 F082          	lfsr	0,1154
   558  000338  50EF               	movf	indf0,w,c
   559  00033A  A4D8               	btfss	status,2,c
   560  00033C  0012               	return	
   561  00033E  C480 FFE8          	movff	1152,wreg
   562  000342  0B1F               	andlw	31
   563  000344  0A02               	xorlw	2
   564  000346  A4D8               	btfss	status,2,c
   565  000348  0012               	return	
   566  00034A  C484 FFE8          	movff	1156,wreg
   567  00034E  0B0F               	andlw	15
   568  000350  B4D8               	btfsc	status,2,c
   569  000352  0012               	return	
   570                           ;usb9.c: 293: {
   571  000354  0E01               	movlw	1
   572  000356  CFE8 F377          	movff	wreg,_ctrl_trf_session_owner
   573                           ;usb9.c: 298: pDst.bRam = (byte*)&ep[0].out+(Set
      +                          upPkt.j.EPNum*8)+(SetupPkt.j.EPDir*4);
   574  00035A  EE04 F084          	lfsr	0,1156
   575  00035E  50EF               	movf	indf0,w,c
   576  000360  0B0F               	andlw	15
   577  000362  6E00               	movwf	btemp
   578  000364  90D8               	bcf	status,0,c
   579  000366  3400               	rlcf	btemp,w
   580  000368  6E00               	movwf	btemp
   581  00036A  6A01               	clrf	btemp+1
   582  00036C  3601               	rlcf	btemp+1,f
   583  00036E  EE04 F084          	lfsr	0,1156
   584  000372  34EF               	rlcf	indf0,w,c
   585  000374  34EF               	rlcf	indf0,w,c
   586  000376  0B01               	andlw	1
   587  000378  2400               	addwf	btemp,w
   588  00037A  6E02               	movwf	btemp+2
   589  00037C  0E00               	movlw	0
   590  00037E  2001               	addwfc	btemp+1,w
   591  000380  6E03               	movwf	btemp+3
   592  000382  90D8               	bcf	status,0,c
   593  000384  3602               	rlcf	btemp+2,f
   594  000386  3603               	rlcf	btemp+3,f
   595  000388  90D8               	bcf	status,0,c
   596  00038A  3602               	rlcf	btemp+2,f
   597  00038C  3603               	rlcf	btemp+3,f
   598  00038E  0E00               	movlw	0
   599  000390  2402               	addwf	btemp+2,w
   600  000392  CFE8 F0E1          	movff	wreg,_pDst
   601  000396  0E04               	movlw	4
   602  000398  2003               	addwfc	btemp+3,w
   603  00039A  CFE8 F0E2          	movff	wreg,_pDst+1
   604                           ;usb9.c: 300: if(SetupPkt.b.bRequest == 3)
   605  00039E  C481 FFE8          	movff	1153,wreg
   606  0003A2  0A03               	xorlw	3
   607  0003A4  A4D8               	btfss	status,2,c
   608  0003A6  D007               	goto	l119
   609                           ;usb9.c: 301: *pDst.bRam = 0x80|0x04;
   610  0003A8  C0E1  FFE9         	movff	_pDst,fsr0l
   611  0003AC  C0E2  FFEA         	movff	_pDst+1,fsr0h
   612  0003B0  0E84               	movlw	-124
   613  0003B2  6EEF               	movwf	indf0,c
   614                           ;usb9.c: 302: else
   615  0003B4  0012               	return	
   616  0003B6                     l119:
   617                           ;usb9.c: 303: {
   618  0003B6  0104               	movlb	4
   619                           ;usb9.c: 305: *pDst.bRam = 0x00;
   620  0003B8  C0E1  FFE9         	movff	_pDst,fsr0l
   621  0003BC  C0E2  FFEA         	movff	_pDst+1,fsr0h
   622  0003C0  AF84               	btfss	132,7,b
   623  0003C2  D003               	goto	L2
   624  0003C4  0E00               	movlw	0
   625  0003C6  6AEF               	clrf	indf0,c
   626                           ;usb9.c: 306: else
   627  0003C8  0012               	return	
   628                           ;usb9.c: 307: *pDst.bRam = 0x80|0x00|0x08;
   629  0003CA                     L2:
   630  0003CA  0E88               	movlw	-120
   631  0003CC  6EEF               	movwf	indf0,c
   632                           ;usb9.c: 308: }
   633                           ;usb9.c: 309: }
   634  0003CE  0012               	return	
   635                           
   636                           	psect	temp
   637  000000                     btemp:
   638  000000                     	ds	4
   639                           tblptrh	equ	0xFF7
   640                           tblptrl	equ	0xFF6
   641                           tablat	equ	0xFF5
   642                           indf0	equ	0xFEF
   643                           postinc0	equ	0xFEE
   644                           fsr0h	equ	0xFEA
   645                           fsr0l	equ	0xFE9
   646                           wreg	equ	0xFE8
   647                           status	equ	0xFD8


HI-TECH Software PICC-18 Macro Assembler V8.35PL3
Symbol Table                                           Wed Jun 15 13:32:21 2005

                       l81 00BA                         l90 00A0  
                       l82 0046                         l83 0054  
                       l84 0056                         l93 00B8  
                       l85 0058                         l86 0074  
                       l96 0200                         l88 0076  
                       l97 01F0                         l89 0078  
                       l98 00F8                         l99 0114  
                       u30 0186                         u40 01E4  
                       u37 0176                         u47 01DA  
       _USBCheckStdRequest 0034                        l100 0190  
                      l110 026C                        l102 0244  
                      l111 0274                        l105 02E8  
                      l106 02D6                        l115 0334  
                      l107 0256                        l119 03B6  
                      wreg 000FE8                       _pDst 00E1  
                     _pSrc 00E3                       fsr0h 000FEA  
                     indf0 000FEF                       fsr0l 000FE9  
                     btemp 0000           _usb_device_state 037B  
                _CDCInitEP 061C                   _usb_stat 037C  
               _USB_CD_Ptr 04C1                 _USB_SD_Ptr 04C5  
      _USBStdSetCfgHandler 0206                 used_btemp0 0001  
               used_btemp1 0001                 used_btemp2 0001  
               used_btemp3 0001                      tablat 000FF5  
                    status 000FD8     _ctrl_trf_session_owner 0377  
      _USBStdGetDscHandler 00EC                    __Lparam 00FC  
   _USBStdGetStatusHandler 024E                 _ClearArray 0F0C  
                  __ramtop 0400                ?_ClearArray 00FD  
               _device_dsc 0400             _usb_active_cfg 0379  
  _USBStdFeatureReqHandler 0308                    postinc0 000FEE  
                   _wCount 00E5                     tblptrh 000FF7  
                   tblptrl 000FF6               _usb_alt_intf 037A  

⌨️ 快捷键说明

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