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

📄 i2c.lst

📁 LED控制
💻 LST
📖 第 1 页 / 共 4 页
字号:
   248                           ;I2C.c: 110: RC4 = 1;
   249  05CF  1607               	bsf	7,4
   250                           ;I2C.c: 111: asm("nop");
   251  05D0  0000               	nop	;#
   252                           ;I2C.c: 112: SSPEN = 1;
   253  05D1  1694               	bsf	20,5
   254  05D2                     l49
   255                           ;I2C.c: 113: }
   256  05D2  1683               	bsf	3,5
   257  05D3  0811               	movf	17,w	;volatile
   258  05D4  391F               	andlw	31
   259  05D5  1903               	btfsc	3,2
   260  05D6  1914               	btfsc	20,2
   261  05D7  2DCB               	goto	l50
   262                           ;I2C.c: 115: SEN = 1;
   263  05D8  1411               	bsf	17,0
   264                           ;I2C.c: 116: while(SEN);
   265  05D9                     l52
   266  05D9  1811               	btfsc	17,0
   267  05DA  2DD9               	goto	l52
   268                           ;I2C.c: 117: SSPIF = 0;
   269  05DB  1283               	bcf	3,5
   270  05DC  118C               	bcf	12,3
   271                           ;I2C.c: 118: SSPBUF = 0b10100000;
   272  05DD  30A0               	movlw	-96
   273  05DE  0093               	movwf	19	;volatile
   274                           ;I2C.c: 119: while(!SSPIF);
   275  05DF                     l55
   276  05DF  198C               	btfsc	12,3
   277  05E0  2DF0               	goto	l58
   278  05E1  2DDF               	goto	l55
   279                           ;I2C.c: 121: while(ACKSTAT){
   280  05E2                     l59
   281                           ;I2C.c: 122: RSEN = 1;
   282  05E2  1491               	bsf	17,1
   283                           ;I2C.c: 123: while(RSEN);
   284  05E3                     l61
   285  05E3  1891               	btfsc	17,1
   286  05E4  2DE3               	goto	l61
   287                           ;I2C.c: 124: SSPIF = 0;
   288  05E5  1283               	bcf	3,5
   289  05E6  118C               	bcf	12,3
   290                           ;I2C.c: 125: SSPBUF = 0b10100000;
   291  05E7  30A0               	movlw	-96
   292  05E8  0093               	movwf	19	;volatile
   293                           ;I2C.c: 126: while(!SSPIF);
   294  05E9                     l64
   295  05E9  1D8C               	btfss	12,3
   296  05EA  2DE9               	goto	l64
   297                           ;I2C.c: 127: if(cnt++>200) return 0xAA;
   298  05EB  30C9               	movlw	-55
   299  05EC  0226               	subwf	?a_EEPROM_WriteByte,w
   300  05ED  0AA6               	incf	?a_EEPROM_WriteByte
   301  05EE  1803               	btfsc	3,0
   302  05EF  2E07               	goto	u350
   303  05F0                     l58
   304  05F0  1683               	bsf	3,5
   305  05F1  1B11               	btfsc	17,6
   306  05F2  2DE2               	goto	l59
   307                           ;I2C.c: 130: if(ACKSTAT) return 0xAA;
   308  05F3  1B11               	btfsc	17,6
   309  05F4  2E07               	goto	u350
   310                           ;I2C.c: 131: SSPIF = 0;
   311  05F5  1283               	bcf	3,5
   312  05F6  118C               	bcf	12,3
   313                           ;I2C.c: 132: SSPBUF = (unsigned char)(Addr>>8);
   314  05F7  0827               	movf	?_EEPROM_WriteByte+1,w
   315  05F8  0093               	movwf	19	;volatile
   316                           ;I2C.c: 133: while(!SSPIF);
   317  05F9                     l69
   318  05F9  1D8C               	btfss	12,3
   319  05FA  2DF9               	goto	l69
   320                           ;I2C.c: 135: if(ACKSTAT) return 0xAA;
   321  05FB  1683               	bsf	3,5
   322  05FC  1B11               	btfsc	17,6
   323  05FD  2E07               	goto	u350
   324                           ;I2C.c: 136: SSPIF = 0;
   325  05FE  1283               	bcf	3,5
   326  05FF  118C               	bcf	12,3
   327                           ;I2C.c: 137: SSPBUF = (unsigned char)Addr;
   328  0600  0826               	movf	?_EEPROM_WriteByte,w
   329  0601  0093               	movwf	19	;volatile
   330                           ;I2C.c: 138: while(!SSPIF);
   331  0602                     l73
   332  0602  1D8C               	btfss	12,3
   333  0603  2E02               	goto	l73
   334                           ;I2C.c: 140: if(ACKSTAT) return 0xAA;
   335  0604  1683               	bsf	3,5
   336  0605  1F11               	btfss	17,6
   337  0606  2E09               	goto	l76
   338  0607                     u350
   339  0607  30AA               	movlw	-86
   340  0608  2E14               	goto	l48
   341  0609                     l76
   342                           ;I2C.c: 141: SSPIF = 0;
   343  0609  1283               	bcf	3,5
   344  060A  118C               	bcf	12,3
   345                           ;I2C.c: 142: SSPBUF = cData;
   346  060B  0828               	movf	?_EEPROM_WriteByte+2,w
   347  060C  0093               	movwf	19	;volatile
   348                           ;I2C.c: 143: while(!SSPIF);
   349  060D                     l77
   350  060D  1D8C               	btfss	12,3
   351  060E  2E0D               	goto	l77
   352                           ;I2C.c: 145: PEN = 1;
   353  060F  1683               	bsf	3,5
   354  0610  1511               	bsf	17,2
   355                           ;I2C.c: 146: while(PEN);
   356  0611                     l80
   357  0611  1911               	btfsc	17,2
   358  0612  2E11               	goto	l80
   359                           ;I2C.c: 148: return 0;
   360  0613  3000               	movlw	0
   361                           ;I2C.c: 149: }
   362  0614                     l48
   363  0614  1283               	bcf	3,5
   364  0615  0008               	return
   365                           
   366                           	psect	text3
   367  0616                     _EEPROM_ReadByte1
   368                           ;	_Addr assigned to ?a_EEPROM_ReadByte1+0
   369  0000                     _EEPROM_ReadByte1$Addr	set	?a_EEPROM_ReadByte1
   370                           ;	_cnt assigned to ?a_EEPROM_ReadByte1+1
   371  0000                     _EEPROM_ReadByte1$cnt	set	?a_EEPROM_ReadByte1+1
   372                           ;_Addr stored from w
   373  0616  0183               	clrf	3	;select bank 0
   374  0617  00A9               	movwf	?a_EEPROM_ReadByte1
   375                           ;I2C.c: 154: unsigned char cnt=0;
   376  0618  01AA               	clrf	?a_EEPROM_ReadByte1+1
   377                           ;I2C.c: 156: while((SSPCON2 & 0x1F) || RW ){
   378  0619  2E21               	goto	l84
   379  061A                     l85
   380                           ;I2C.c: 157: SSPEN = 0;
   381  061A  1283               	bcf	3,5
   382  061B  1294               	bcf	20,5
   383                           ;I2C.c: 158: asm("nop");
   384  061C  0000               	nop	;#
   385                           ;I2C.c: 159: RC3 = 1;
   386  061D  1587               	bsf	7,3
   387                           ;I2C.c: 160: RC4 = 1;
   388  061E  1607               	bsf	7,4
   389                           ;I2C.c: 161: asm("nop");
   390  061F  0000               	nop	;#
   391                           ;I2C.c: 162: SSPEN = 1;
   392  0620  1694               	bsf	20,5
   393  0621                     l84
   394                           ;I2C.c: 163: }
   395  0621  1683               	bsf	3,5
   396  0622  0811               	movf	17,w	;volatile
   397  0623  391F               	andlw	31
   398  0624  1903               	btfsc	3,2
   399  0625  1914               	btfsc	20,2
   400  0626  2E1A               	goto	l85
   401                           ;I2C.c: 165: SEN = 1;
   402  0627  1411               	bsf	17,0
   403                           ;I2C.c: 166: while(SEN);
   404  0628                     l87
   405  0628  1811               	btfsc	17,0
   406  0629  2E28               	goto	l87
   407                           ;I2C.c: 167: SSPIF = 0;
   408  062A  1283               	bcf	3,5
   409  062B  118C               	bcf	12,3
   410                           ;I2C.c: 168: SSPBUF = 0b10100000;
   411  062C  30A0               	movlw	-96
   412  062D  0093               	movwf	19	;volatile
   413                           ;I2C.c: 169: while(!SSPIF);
   414  062E                     l90
   415  062E  198C               	btfsc	12,3
   416  062F  2E42               	goto	l93
   417  0630  2E2E               	goto	l90
   418                           ;I2C.c: 171: while(ACKSTAT){
   419  0631                     l94
   420                           ;I2C.c: 172: RSEN = 1;
   421  0631  1491               	bsf	17,1
   422                           ;I2C.c: 173: while(RSEN);
   423  0632                     l96
   424  0632  1891               	btfsc	17,1
   425  0633  2E32               	goto	l96
   426                           ;I2C.c: 174: SSPIF = 0;
   427  0634  1283               	bcf	3,5
   428  0635  118C               	bcf	12,3
   429                           ;I2C.c: 175: SSPBUF = 0b10100000;
   430  0636  30A0               	movlw	-96
   431  0637  0093               	movwf	19	;volatile
   432                           ;I2C.c: 176: while(!SSPIF);
   433  0638                     l99
   434  0638  1D8C               	btfss	12,3
   435  0639  2E38               	goto	l99
   436                           ;I2C.c: 177: asm("nop");
   437  063A  0000               	nop	;#
   438                           ;I2C.c: 178: asm("nop");
   439  063B  0000               	nop	;#
   440                           ;I2C.c: 179: asm("nop");
   441  063C  0000               	nop	;#
   442                           ;I2C.c: 180: if(cnt++>200) return 0xAA;
   443  063D  30C9               	movlw	-55
   444  063E  022A               	subwf	?a_EEPROM_ReadByte1+1,w
   445  063F  0AAA               	incf	?a_EEPROM_ReadByte1+1
   446  0640  1803               	btfsc	3,0
   447  0641  2E5E               	goto	u530
   448  0642                     l93
   449  0642  1683               	bsf	3,5
   450  0643  1B11               	btfsc	17,6
   451  0644  2E31               	goto	l94
   452                           ;I2C.c: 183: if(ACKSTAT) return 0xAA;
   453  0645  1B11               	btfsc	17,6
   454  0646  2E5E               	goto	u530
   455                           ;I2C.c: 184: SSPIF = 0;
   456  0647  1283               	bcf	3,5
   457  0648  118C               	bcf	12,3
   458                           ;I2C.c: 185: SSPBUF = Addr;
   459  0649  0829               	movf	?a_EEPROM_ReadByte1,w
   460  064A  0093               	movwf	19	;volatile
   461                           ;I2C.c: 186: while(!SSPIF);
   462  064B                     l104
   463  064B  1D8C               	btfss	12,3
   464  064C  2E4B               	goto	l104
   465                           ;I2C.c: 188: if(ACKSTAT) return 0xAA;
   466  064D  1683               	bsf	3,5
   467  064E  1B11               	btfsc	17,6
   468  064F  2E5E               	goto	u530
   469                           ;I2C.c: 189: RSEN = 1;
   470  0650  1491               	bsf	17,1
   471                           ;I2C.c: 190: while(RSEN);
   472  0651                     l108
   473  0651  1891               	btfsc	17,1
   474  0652  2E51               	goto	l108
   475                           ;I2C.c: 192: if(ACKSTAT) return 0xAA;
   476  0653  1B11               	btfsc	17,6
   477  0654  2E5E               	goto	u530
   478                           ;I2C.c: 193: SSPIF = 0;
   479  0655  1283               	bcf	3,5
   480  0656  118C               	bcf	12,3
   481                           ;I2C.c: 194: SSPBUF = 0b10100001;
   482  0657  30A1               	movlw	-95
   483  0658  0093               	movwf	19	;volatile
   484                           ;I2C.c: 195: while(!SSPIF);
   485  0659                     l112
   486  0659  1D8C               	btfss	12,3
   487  065A  2E59               	goto	l112
   488                           ;I2C.c: 197: if(ACKSTAT) return 0xAA;
   489  065B  1683               	bsf	3,5
   490  065C  1F11               	btfss	17,6
   491  065D  2E60               	goto	l115
   492  065E                     u530
   493  065E  30AA               	movlw	-86
   494  065F  2E76               	goto	l83
   495  0660                     l115
   496                           ;I2C.c: 198: SSPIF = 0;
   497  0660  1283               	bcf	3,5
   498  0661  118C               	bcf	12,3
   499                           ;I2C.c: 199: RCEN = 1;
   500  0662  1683               	bsf	3,5

⌨️ 快捷键说明

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