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

📄 main.lst

📁 PIC16F689驱动SD卡程序,可以实现对SD的ID读取和内存读取,并且可以通过串口调试精灵看到相应信息
💻 LST
📖 第 1 页 / 共 5 页
字号:
   238  051C  00D0               	movwf	?a_int_to_char+2
   239                           ;sd.h: 26: result[3]=temp+0x30;
   240  051D  084D               	movf	?_int_to_char+2,w
   241  051E  3E03               	addlw	3
   242  051F  0084               	movwf	4
   243  0520  1383               	bcf	3,7
   244  0521  0850               	movf	?a_int_to_char+2,w
   245  0522  3E30               	addlw	48
   246  0523  0080               	movwf	0
   247                           ;sd.h: 27: result[4]='\0';
   248  0524  084D               	movf	?_int_to_char+2,w
   249  0525  3E04               	addlw	4
   250  0526  0084               	movwf	4
   251  0527  1383               	bcf	3,7
   252  0528  0180               	clrf	0
   253                           ;sd.h: 29: }
   254  0529  0008               	return	;W free
   255  052A                     _usart_initial
   256                           ;function.h: 19: void usart_initial()
   257  052A  3006               	movlw	6
   258  052B  1683               	bsf	3,5
   259  052C  1303               	bcf	3,6	;carry unused
   260  052D  0098               	movwf	24	;volatile
   261                           ;function.h: 22: RCSTA=0X90;
   262  052E  3090               	movlw	-112
   263  052F  1283               	bcf	3,5
   264  0530  0098               	movwf	24	;volatile
   265                           ;function.h: 23: BRGH=0;
   266  0531  1683               	bsf	3,5
   267  0532  1118               	bcf	24,2
   268                           ;function.h: 24: SPBRG=6;
   269  0533  3006               	movlw	6
   270  0534  0099               	movwf	25
   271                           ;function.h: 25: TXEN=1;
   272  0535  1698               	bsf	24,5
   273                           ;function.h: 26: }
   274  0536  1283               	bcf	3,5
   275  0537  0008               	return	;W free
   276  0538                     _init
   277                           ;function.h: 3: void init(void)
   278  0538  3077               	movlw	119
   279  0539  1683               	bsf	3,5
   280  053A  1303               	bcf	3,6	;carry unused
   281  053B  008F               	movwf	15	;volatile
   282                           ;function.h: 6: OSCTUNE=0X0F;
   283  053C  300F               	movlw	15
   284  053D  0090               	movwf	16
   285                           ;function.h: 7: GIE=0;
   286  053E  138B               	bcf	11,7
   287                           ;function.h: 8: TRISC7=0;
   288  053F  1387               	bcf	7,7
   289                           ;function.h: 9: TRISC0=0;
   290  0540  1007               	bcf	7,0
   291                           ;function.h: 10: TRISC2=1;
   292  0541  1507               	bsf	7,2
   293                           ;function.h: 11: TRISC3=0;;
   294  0542  1187               	bcf	7,3
   295                           ;function.h: 12: TRISC6=0;
   296  0543  1307               	bcf	7,6
   297                           ;function.h: 13: IOCA3=1;
   298  0544  1596               	bsf	22,3
   299                           ;function.h: 14: ANSELH=0;
   300  0545  1283               	bcf	3,5
   301  0546  1703               	bsf	3,6
   302  0547  019F               	clrf	31
   303                           ;function.h: 15: ANSEL=0;
   304  0548  019E               	clrf	30
   305                           ;function.h: 17: }
   306  0549  1303               	bcf	3,6	;carry unused
   307  054A  0008               	return	;W free
   308  054B                     _delay
   309                           ;function.h: 45: void delay(unsigned int n)
   310  054B  0183               	clrf	3	;select bank 0
   311  054C  0864               	movf	?_delay+1,w
   312  054D  0463               	iorwf	?_delay,w
   313  054E  1903               	btfsc	3,2
   314  054F  0008               	return
   315  0550                     l10
   316                           ;function.h: 48: {
   317  0550  0000               	nop	;#
   318  0551  08E3               	movf	?_delay
   319  0552  1903               	btfsc	3,2
   320  0553  03E4               	decf	?_delay+1
   321  0554  03E3               	decf	?_delay
   322  0555  0864               	movf	?_delay+1,w
   323  0556  0463               	iorwf	?_delay,w
   324  0557  1903               	btfsc	3,2
   325  0558  0008               	return
   326  0559  2D50               	goto	l10
   327  055A                     _code_er
   328                           ;function.h: 53: void code_er()
   329  055A                     l14
   330  055A  0183               	clrf	3	;select bank 0
   331  055B  1E0C               	btfss	12,4
   332  055C  2D5A               	goto	l14
   333                           ;function.h: 56: TXREG=0X45;
   334  055D  3045               	movlw	69
   335  055E  0099               	movwf	25	;volatile
   336                           ;function.h: 57: asm("nop");
   337  055F  0000               	nop	;#
   338                           ;function.h: 58: asm("nop");
   339  0560  0000               	nop	;#
   340                           ;function.h: 59: asm("nop");
   341  0561  0000               	nop	;#
   342                           ;function.h: 60: asm("nop");
   343  0562  0000               	nop	;#
   344                           ;function.h: 61: asm("nop");
   345  0563  0000               	nop	;#
   346                           ;function.h: 62: asm("nop");
   347  0564  0000               	nop	;#
   348                           ;function.h: 63: asm("nop");
   349  0565  0000               	nop	;#
   350                           ;function.h: 64: asm("nop");
   351  0566  0000               	nop	;#
   352                           ;function.h: 65: asm("nop");
   353  0567  0000               	nop	;#
   354                           ;function.h: 67: while(TXIF==0);
   355  0568                     l17
   356  0568  1E0C               	btfss	12,4
   357  0569  2D68               	goto	l17
   358                           ;function.h: 69: TXREG=0X52;
   359  056A  3052               	movlw	82
   360  056B  0099               	movwf	25	;volatile
   361                           ;function.h: 70: asm("nop");
   362  056C  0000               	nop	;#
   363                           ;function.h: 71: asm("nop");
   364  056D  0000               	nop	;#
   365                           ;function.h: 72: asm("nop");
   366  056E  0000               	nop	;#
   367                           ;function.h: 73: asm("nop");
   368  056F  0000               	nop	;#
   369                           ;function.h: 74: asm("nop");
   370  0570  0000               	nop	;#
   371                           ;function.h: 75: asm("nop");
   372  0571  0000               	nop	;#
   373                           ;function.h: 76: asm("nop");
   374  0572  0000               	nop	;#
   375                           ;function.h: 77: asm("nop");
   376  0573  0000               	nop	;#
   377                           ;function.h: 78: asm("nop");
   378  0574  0000               	nop	;#
   379                           ;function.h: 80: while(TXIF==0);
   380  0575                     l20
   381  0575  1E0C               	btfss	12,4
   382  0576  2D75               	goto	l20
   383                           ;function.h: 81: delay(500);
   384  0577  30F4               	movlw	244
   385  0578  00E3               	movwf	?_delay
   386  0579  3001               	movlw	1
   387  057A  00E4               	movwf	?_delay+1
   388  057B  2D4B               	ljmp	_delay
   389  057C                     _send_s
   390                           ;	_i assigned to ?a_send_s+0
   391  0000                     _send_s$i	set	?a_send_s
   392                           ;function.h: 85: void send_s( const char* str)
   393  057C                     l24
   394  057C  0183               	clrf	3	;select bank 0
   395  057D  1E0C               	btfss	12,4
   396  057E  2D7C               	goto	l24
   397                           ;function.h: 89: for(i=0;str[i]!='\0';i++)
   398  057F  01CD               	clrf	?a_send_s
   399  0580  01CE               	clrf	?a_send_s+1
   400  0581                     l30
   401  0581  084C               	movf	?_send_s+1,w
   402  0582  074E               	addwf	?a_send_s+1,w
   403  0583  00E8               	movwf	code_ptr+1
   404  0584  084B               	movf	?_send_s,w
   405  0585  074D               	addwf	?a_send_s,w
   406  0586  1803               	btfsc	3,0
   407  0587  0AE8               	incf	code_ptr+1
   408  0588  118A  2025  118A   	fcall	string_table
   409  058B  3800               	iorlw	0
   410  058C  1903               	btfsc	3,2
   411  058D  0008               	return
   412                           ;function.h: 90: {
   413  058E  084C               	movf	?_send_s+1,w
   414  058F  074E               	addwf	?a_send_s+1,w
   415  0590  00E8               	movwf	code_ptr+1
   416  0591  084B               	movf	?_send_s,w
   417  0592  074D               	addwf	?a_send_s,w
   418  0593  1803               	btfsc	3,0
   419  0594  0AE8               	incf	code_ptr+1
   420  0595  118A  2025  118A   	fcall	string_table
   421  0598  0099               	movwf	25	;volatile
   422                           ;function.h: 92: delay(4);
   423  0599  3004               	movlw	4
   424  059A  00E3               	movwf	?_delay
   425  059B  01E4               	clrf	?_delay+1
   426  059C  254B               	fcall	_delay
   427                           ;function.h: 93: while(TXIF==0);
   428  059D                     l31
   429  059D  1E0C               	btfss	12,4
   430  059E  2D9D               	goto	l31
   431  059F  0ACD               	incf	?a_send_s
   432  05A0  1903               	btfsc	3,2
   433  05A1  0ACE               	incf	?a_send_s+1
   434  05A2  2D81               	goto	l30
   435  05A3                     _Write_Byte_MMC
   436                           ;	_value assigned to ?a_Write_Byte_MMC+0
   437  0000                     _Write_Byte_MMC$value	set	?a_Write_Byte_MMC
   438                           ;	_i assigned to ?a_Write_Byte_MMC+1
   439  0000                     _Write_Byte_MMC$i	set	?a_Write_Byte_MMC+1
   440                           ;_value stored from w
   441  05A3  0183               	clrf	3	;select bank 0
   442  05A4  00E1               	movwf	?a_Write_Byte_MMC
   443                           ;sd.h: 76: void Write_Byte_MMC(unsigned char va
      +                          lue)
   444  05A5  1187               	bcf	7,3
   445                           ;sd.h: 83: for (i=0;i<8;i++)
   446  05A6  01E2               	clrf	?a_Write_Byte_MMC+1
   447  05A7                     l46
   448                           ;sd.h: 84: {
   449  05A7  0861               	movf	?a_Write_Byte_MMC,w
   450  05A8  00F0               	movwf	btemp
   451  05A9  0862               	movf	?a_Write_Byte_MMC+1,w
   452  05AA  3C07               	sublw	7
   453  05AB  00F1               	movwf	btemp+1
   454  05AC  0AF1               	incf	btemp+1
   455  05AD  2DB0               	goto	u124
   456  05AE                     u125
   457  05AE  1003               	bcf	3,0
   458  05AF  0CF0               	rrf	btemp
   459  05B0                     u124
   460  05B0  0BF1               	decfsz	btemp+1
   461  05B1  2DAE               	goto	u125
   462  05B2  0870               	movf	btemp,w
   463  05B3  00F0               	movwf	btemp
   464  05B4  1C70               	btfss	btemp,0
   465  05B5  2DB8               	goto	l49
   466                           ;sd.h: 86: RC0=1;
   467  05B6  1407               	bsf	7,0
   468  05B7  2DB9               	goto	l50
   469  05B8                     l49
   470                           ;sd.h: 87: else RC0=0;
   471  05B8  1007               	bcf	7,0
   472  05B9                     l50
   473                           ;sd.h: 88: RC6=0;
   474  05B9  1307               	bcf	7,6
   475                           ;sd.h: 89: if(Init_Flag)
   476  05BA  08A0               	movf	_Init_Flag
   477  05BB  1903               	btfsc	3,2
   478  05BC  2DC1               	goto	l51
   479                           ;sd.h: 90: delay(8);
   480  05BD  3008               	movlw	8
   481  05BE  00E3               	movwf	?_delay
   482  05BF  01E4               	clrf	?_delay+1
   483  05C0  254B               	fcall	_delay
   484  05C1                     l51
   485                           ;sd.h: 91: RC6=1;
   486  05C1  1707               	bsf	7,6
   487                           ;sd.h: 92: if(Init_Flag)

⌨️ 快捷键说明

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