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

📄 sl811.lst

📁 SPI FLASH,SL811HST驱动
💻 LST
📖 第 1 页 / 共 5 页
字号:
   211                           ;sl811.c: 60: value = PORTD;
   212  07EA  5083               	movf	3971,w,c	;volatile
   213  07EC  6ED9               	movwf	fsr2l,c
   214                           ;sl811.c: 61: RE0 = 1;
   215  07EE  8084               	bsf	3972,0,c	;volatile
   216                           ;sl811.c: 64: TRISD = 0xFF;
   217  07F0  6895               	setf	3989,c	;volatile
   218                           ;sl811.c: 65: return value;
   219  07F2  50D9               	movf	fsr2l,w,c
   220                           ;sl811.c: 66: }
   221  07F4  0012               	return	
   222  07F6  FFFF               	dw	65535
   223  07F8  D7EE               	goto	f4452
   224  07FA  00FA               	dw	?_sl811_write_buf
   225  07FC                     _sl811_write_buf:
   226  07FC  FFFF               	dw	65535
   227  07FE                     f4462:
   228  0000                     
   229                           ; _adr loaded to fsr2l
   230  07FE  6ED9               	movwf	fsr2l,c
   231                           ;sl811.c: 73: unsigned char i;
   232  0800  C0FA  FFE9         	movff	?_sl811_write_buf,fsr0l
   233  0804  C0FB  FFEA         	movff	?_sl811_write_buf+1,fsr0h
   234  0808  50EF               	movf	indf0,w,c
   235  080A  0100               	movlb	__Lparam shr (0+8)
   236  080C  6FFE               	movwf	?_sl811_write^(__Lparam& (0+65280))
   237  080E  50D9               	movf	fsr2l,w,c
   238  0810  DFD0               	call	_sl811_write
   239                           ;sl811.c: 75: size--;
   240  0812  0E01               	movlw	1
   241  0814  0100               	movlb	__Lparam shr (0+8)
   242  0816  07FC               	decf	(?_sl811_write_buf+2)^(__Lparam& (0+65280)
      +                          ),f
   243                           ;sl811.c: 76: i = 1;
   244  0818  6FFD               	movwf	?a_sl811_write_buf^(__Lparam& (0+65280))
   245                           ;sl811.c: 77: while(size != 0)
   246  081A                     l4:
   247                           ;sl811.c: 82: }
   248  081A  0100               	movlb	__Lparam shr (0+8)
   249  081C  51FC               	movf	(?_sl811_write_buf+2)^(__Lparam& (0+65280)
      +                          ),w
   250  081E  B4D8               	btfsc	status,2,c
   251  0820  D00C               	goto	u10
   252                           ;sl811.c: 78: {
   253  0822  51FD               	movf	?a_sl811_write_buf^(__Lparam& (0+65280)),w
   254  0824  25FA               	addwf	?_sl811_write_buf^(__Lparam& (0+65280)),w
   255  0826  6EE9               	movwf	fsr0l,c
   256  0828  0E00               	movlw	0
   257  082A  21FB               	addwfc	(?_sl811_write_buf+1)^(__Lparam& (0+6528
      +                          0)),w
   258  082C  6EEA               	movwf	fsr0h
   259  082E  50EF               	movf	indf0,w,c
   260  0830  D829               	call	_sl811_write_next
   261                           ;sl811.c: 80: i++;
   262  0832  0100               	movlb	__Lparam shr (0+8)
   263  0834  2BFD               	incf	?a_sl811_write_buf^(__Lparam& (0+65280)),f
   264                           ;sl811.c: 81: size--;
   265  0836  07FC               	decf	(?_sl811_write_buf+2)^(__Lparam& (0+65280)
      +                          ),f
   266  0838  D7F0               	goto	l4
   267  083A                     u10:
   268                           ;sl811.c: 83: }
   269  083A  0012               	return	
   270  083C  FFFF               	dw	65535
   271  083E  D7DF               	goto	f4462
   272  0840  00FC               	dw	?_sl811_read_buf
   273  0842                     _sl811_read_buf:
   274  0842  FFFF               	dw	65535
   275  0844                     f4482:
   276  0000                     
   277                           ; _adr loaded to fsr1l
   278  0844  6EE1               	movwf	fsr1l,c
   279                           ;sl811.c: 90: unsigned char i;
   280  0846  DFC6               	call	_sl811_read
   281  0848  C0FC  FFE9         	movff	?_sl811_read_buf,fsr0l
   282  084C  C0FD  FFEA         	movff	?_sl811_read_buf+1,fsr0h
   283  0850  6EEF               	movwf	indf0,c
   284                           ;sl811.c: 92: size --;
   285  0852  0E01               	movlw	1
   286  0854  0100               	movlb	__Lparam shr (0+8)
   287  0856  07FE               	decf	(?_sl811_read_buf+2)^(__Lparam& (0+65280))
      +                          ,f
   288                           ;sl811.c: 93: i = 1;
   289  0858  6FFF               	movwf	?a_sl811_read_buf^(__Lparam& (0+65280))
   290                           ;sl811.c: 94: while(size != 0)
   291  085A                     l8:
   292                           ;sl811.c: 99: }
   293  085A  0100               	movlb	__Lparam shr (0+8)
   294  085C  51FE               	movf	(?_sl811_read_buf+2)^(__Lparam& (0+65280))
      +                          ,w
   295  085E  B4D8               	btfsc	status,2,c
   296  0860  D00E               	goto	u20
   297                           ;sl811.c: 95: {
   298  0862  D81B               	call	_sl811_read_next	;wreg free
   299  0864  6E00               	movwf	btemp
   300  0866  0100               	movlb	__Lparam shr (0+8)
   301  0868  51FF               	movf	?a_sl811_read_buf^(__Lparam& (0+65280)),w
   302  086A  25FC               	addwf	?_sl811_read_buf^(__Lparam& (0+65280)),w
   303  086C  6EE9               	movwf	fsr0l,c
   304  086E  0E00               	movlw	0
   305  0870  21FD               	addwfc	(?_sl811_read_buf+1)^(__Lparam& (0+65280
      +                          )),w
   306  0872  6EEA               	movwf	fsr0h
   307  0874  C000  FFEF         	movff	btemp,indf0
   308                           ;sl811.c: 97: i++;
   309  0878  2BFF               	incf	?a_sl811_read_buf^(__Lparam& (0+65280)),f
   310                           ;sl811.c: 98: size--;
   311  087A  07FE               	decf	(?_sl811_read_buf+2)^(__Lparam& (0+65280))
      +                          ,f
   312  087C  D7EE               	goto	l8
   313  087E                     u20:
   314                           ;sl811.c: 100: }
   315  087E  0012               	return	
   316  0880  FFFF               	dw	65535
   317  0882  D7E0               	goto	f4482
   318                           ;sl811.c: 105: void sl811_write_next(unsigned ch
      +                          ar value)
   319                           ;sl811.c: 106: {
   320  0884                     _sl811_write_next:
   321  0884  FFFF               	dw	65535
   322  0886                     f4502:
   323  0000                     
   324                           ;sl811.c: 107: RE2 = 1;
   325  0886  8484               	bsf	3972,2,c	;volatile
   326                           ;sl811.c: 110: TRISD = 0x00;
   327  0888  6A95               	clrf	3989,c	;volatile
   328                           ;sl811.c: 111: PORTD = value;
   329  088A  6E83               	movwf	3971,c	;volatile
   330                           ;sl811.c: 112: RE1 = 0;
   331  088C  9284               	bcf	3972,1,c	;volatile
   332                           ;sl811.c: 113: asm("nop");
   333  088E  F000               	nop		;#
   334                           ;sl811.c: 114: RE1 = 1;
   335  0890  8284               	bsf	3972,1,c	;volatile
   336                           ;sl811.c: 117: TRISD = 0xFF;
   337  0892  6895               	setf	3989,c	;volatile
   338                           ;sl811.c: 118: }
   339  0894  0012               	return	
   340  0896  FFFF               	dw	65535
   341  0898  D7F6               	goto	f4502
   342                           ;sl811.c: 123: unsigned char sl811_read_next(voi
      +                          d)
   343                           ;sl811.c: 124: {
   344  089A                     _sl811_read_next:
   345  089A  FFFF               	dw	65535
   346  089C                     f4512:
   347  0000                     
   348                           ;sl811.c: 125: unsigned char value;
   349  089C  8484               	bsf	3972,2,c	;volatile
   350                           ;sl811.c: 129: TRISD = 0xFF;
   351  089E  6895               	setf	3989,c	;volatile
   352                           ;sl811.c: 130: RE0 = 0;
   353  08A0  9084               	bcf	3972,0,c	;volatile
   354                           ;sl811.c: 131: asm("nop");
   355  08A2  F000               	nop		;#
   356                           ;sl811.c: 132: value = PORTD;
   357  08A4  5083               	movf	3971,w,c	;volatile
   358  08A6  6ED9               	movwf	fsr2l,c
   359                           ;sl811.c: 133: RE0 = 1;
   360  08A8  8084               	bsf	3972,0,c	;volatile
   361                           ;sl811.c: 135: return value;
   362                           ;sl811.c: 136: }
   363  08AA  0012               	return	
   364  08AC  FFFF               	dw	65535
   365  08AE  D7F6               	goto	f4512
   366                           ;sl811.c: 141: unsigned char sl811_set_addr(void
      +                          )
   367                           ;sl811.c: 142: {
   368  08B0                     _sl811_set_addr:
   369  08B0  FFFF               	dw	65535
   370  08B2                     f4522:
   371  0000                     
   372                           ;sl811.c: 143: unsigned char tmp;
   373  08B2  0100               	movlb	__Lparam shr (0+8)
   374  08B4  6BFE               	clrf	?_sl811_write^(__Lparam& (0+65280))
   375  08B6  0E10               	movlw	16
   376  08B8  DF7C               	call	_sl811_write
   377                           ;sl811.c: 146: sl811_write_next(0x05);
   378  08BA  0E05               	movlw	5
   379  08BC  DFE3               	call	_sl811_write_next
   380                           ;sl811.c: 147: sl811_write_next(adr);
   381  08BE  C1B2  FFE8         	movff	_adr,wreg
   382  08C2  DFE0               	call	_sl811_write_next
   383                           ;sl811.c: 148: sl811_write_next(0x00);
   384  08C4  0E00               	movlw	0
   385  08C6  DFDE               	call	_sl811_write_next
   386                           ;sl811.c: 149: sl811_write_next(0x00);
   387  08C8  0E00               	movlw	0
   388  08CA  DFDC               	call	_sl811_write_next
   389                           ;sl811.c: 150: sl811_write_next(0x00);
   390  08CC  0E00               	movlw	0
   391  08CE  DFDA               	call	_sl811_write_next
   392                           ;sl811.c: 151: sl811_write_next(0x00);
   393  08D0  0E00               	movlw	0
   394  08D2  DFD8               	call	_sl811_write_next
   395                           ;sl811.c: 152: sl811_write_next(0x00);
   396  08D4  0E00               	movlw	0
   397  08D6  DFD6               	call	_sl811_write_next
   398                           ;sl811.c: 154: sl811_write(0x01, 0x10);
   399  08D8  0E10               	movlw	16
   400  08DA  0100               	movlb	__Lparam shr (0+8)
   401  08DC  6FFE               	movwf	?_sl811_write^(__Lparam& (0+65280))
   402  08DE  0E01               	movlw	1
   403  08E0  DF68               	call	_sl811_write
   404                           ;sl811.c: 155: sl811_write(0x02, 0x08);
   405  08E2  0E08               	movlw	8
   406  08E4  0100               	movlb	__Lparam shr (0+8)
   407  08E6  6FFE               	movwf	?_sl811_write^(__Lparam& (0+65280))
   408  08E8  0E02               	movlw	2
   409  08EA  DF63               	call	_sl811_write
   410                           ;sl811.c: 156: sl811_write(0x03, 0xD0);
   411  08EC  0ED0               	movlw	208
   412  08EE  0100               	movlb	__Lparam shr (0+8)
   413  08F0  6FFE               	movwf	?_sl811_write^(__Lparam& (0+65280))
   414  08F2  0E03               	movlw	3
   415  08F4  DF5E               	call	_sl811_write
   416                           ;sl811.c: 157: sl811_write(0x04, 0x00);
   417  08F6  0100               	movlb	__Lparam shr (0+8)
   418  08F8  6BFE               	clrf	?_sl811_write^(__Lparam& (0+65280))
   419  08FA  0E04               	movlw	4
   420  08FC  DF5A               	call	_sl811_write
   421                           ;sl811.c: 159: sl811_write(0x0D, 0x01);
   422  08FE  0E01               	movlw	1
   423  0900  0100               	movlb	__Lparam shr (0+8)
   424  0902  6FFE               	movwf	?_sl811_write^(__Lparam& (0+65280))
   425  0904  0E0D               	movlw	13
   426  0906  DF55               	call	_sl811_write
   427                           ;sl811.c: 160: sl811_write(0x00, 0x27);
   428  0908  0E27               	movlw	39
   429  090A  0100               	movlb	__Lparam shr (0+8)
   430  090C  6FFE               	movwf	?_sl811_write^(__Lparam& (0+65280))
   431  090E  0E00               	movlw	0
   432  0910  DF50               	call	_sl811_write
   433                           ;sl811.c: 161: for(tmp=255; tmp!= 0; tmp--)
   434                           ; _tmp allocated to fsr2l
   435  0912  68D9               	setf	fsr2l,c
   436  0914                     l14:
   437                           ;sl811.c: 162: {
   438                           ;sl811.c: 163: asm("nop");
   439  0914  F000               	nop		;#
   440                           ;sl811.c: 164: }
   441  0916  06D9               	decf	fsr2l,f,c
   442  0918  50D9               	movf	fsr2l,w,c

⌨️ 快捷键说明

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