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

📄 i2c24lc onebyte.lst

📁 上载的程序可以用于PIC单片机,也可以用于430单片机,本人原创,到至今还没有发现哪位网友想出这种办法,希望站长能多加分.
💻 LST
📖 第 1 页 / 共 4 页
字号:
   229  007A2A  C5F1  FF82         	movff	_pc_out,3970	;volatile
   230                           ;I2C24LC onebyte.c: 77: }
   231  007A2E  0012               	return	
   232  007A30                     _I2CStop:
   233  000000                     
   234                           ;I2C24LC onebyte.c: 80: void I2CStop(void)
   235  007A30  0105               	movlb	_pc_out shr (0+8)
   236  007A32  97F1               	bcf	_pc_out& (0+255),3,b
   237  007A34  C5F1  FF82         	movff	_pc_out,3970	;volatile
   238                           ;I2C24LC onebyte.c: 83: PORTC=(pc_out&= ~0B00010
      +                          000);
   239  007A38  99F1               	bcf	_pc_out& (0+255),4,b
   240  007A3A  C5F1  FF82         	movff	_pc_out,3970	;volatile
   241                           ;I2C24LC onebyte.c: 84: SomeNOP();
   242  007A3E  DFDA               	call	_SomeNOP	;wreg free
   243                           ;I2C24LC onebyte.c: 85: PORTC =(pc_out|= 0B00001
      +                          000);
   244  007A40  0105               	movlb	_pc_out shr (0+8)
   245  007A42  87F1               	bsf	_pc_out& (0+255),3,b
   246  007A44  C5F1  FF82         	movff	_pc_out,3970	;volatile
   247                           ;I2C24LC onebyte.c: 86: SomeNOP();
   248  007A48  DFD5               	call	_SomeNOP	;wreg free
   249                           ;I2C24LC onebyte.c: 87: PORTC=(pc_out|= 0B000100
      +                          00);
   250  007A4A  0105               	movlb	_pc_out shr (0+8)
   251  007A4C  89F1               	bsf	_pc_out& (0+255),4,b
   252  007A4E  C5F1  FF82         	movff	_pc_out,3970	;volatile
   253                           ;I2C24LC onebyte.c: 88: (GIE = 1);
   254  007A52  8EF2               	bsf	intcon,7,c
   255                           ;I2C24LC onebyte.c: 89: }
   256  007A54  0012               	return	
   257  007A56                     _WaitAck:
   258  000000                     
   259                           ;I2C24LC onebyte.c: 92: unsigned char WaitAck(vo
      +                          id)
   260  007A56  68E1               	setf	fsr1l,c
   261                           ;I2C24LC onebyte.c: 95: PORTC=(pc_out|= 0B000100
      +                          00);
   262  007A58  0105               	movlb	_pc_out shr (0+8)
   263  007A5A  89F1               	bsf	_pc_out& (0+255),4,b
   264  007A5C  C5F1  FF82         	movff	_pc_out,3970	;volatile
   265                           ;I2C24LC onebyte.c: 96: SomeNOP();
   266  007A60  DFC9               	call	_SomeNOP	;wreg free
   267                           ;I2C24LC onebyte.c: 97: PORTC =(pc_out|= 0B00001
      +                          000);
   268  007A62  0105               	movlb	_pc_out shr (0+8)
   269  007A64  87F1               	bsf	_pc_out& (0+255),3,b
   270  007A66  C5F1  FF82         	movff	_pc_out,3970	;volatile
   271                           ;I2C24LC onebyte.c: 98: SomeNOP();
   272  007A6A  DFC4               	call	_SomeNOP	;wreg free
   273                           ;I2C24LC onebyte.c: 99: TRISC |= 0B00010000;
   274  007A6C  8894               	bsf	3988,4,c	;volatile
   275                           ;I2C24LC onebyte.c: 100: while(PORTC&0B00010000)
   276  007A6E                     l12:
   277  007A6E  A882               	btfss	3970,4,c	;volatile
   278  007A70  D005               	goto	u40
   279                           ;I2C24LC onebyte.c: 101: { errtime--;
   280  007A72  06E1               	decf	fsr1l,f,c
   281                           ;I2C24LC onebyte.c: 102: if (!errtime)
   282  007A74  50E1               	movf	fsr1l,w,c
   283  007A76  E1FB               	bnz	l12
   284                           ;I2C24LC onebyte.c: 103: {I2CStop();
   285  007A78  DFDB               	call	_I2CStop	;wreg free
   286                           ;I2C24LC onebyte.c: 104: return 0x00;}
   287  007A7A  0C00               	retlw	0
   288  007A7C                     u40:
   289                           ;I2C24LC onebyte.c: 105: }
   290  007A7C  9894               	bcf	3988,4,c	;volatile
   291                           ;I2C24LC onebyte.c: 107: PORTC =(pc_out&= ~0B000
      +                          01000);
   292  007A7E  0105               	movlb	_pc_out shr (0+8)
   293  007A80  97F1               	bcf	_pc_out& (0+255),3,b
   294  007A82  C5F1  FF82         	movff	_pc_out,3970	;volatile
   295                           ;I2C24LC onebyte.c: 108: return 0x01;
   296  007A86  0C01               	retlw	1
   297                           ;I2C24LC onebyte.c: 109: }
   298  007A88                     _SendAck:
   299  000000                     
   300                           ;I2C24LC onebyte.c: 113: void SendAck(void)
   301  007A88  0105               	movlb	_pc_out shr (0+8)
   302  007A8A  99F1               	bcf	_pc_out& (0+255),4,b
   303  007A8C  C5F1  FF82         	movff	_pc_out,3970	;volatile
   304                           ;I2C24LC onebyte.c: 116: SomeNOP();
   305  007A90  DFB1               	call	_SomeNOP	;wreg free
   306                           ;I2C24LC onebyte.c: 117: PORTC =(pc_out|= 0B0000
      +                          1000);
   307  007A92  0105               	movlb	_pc_out shr (0+8)
   308  007A94  87F1               	bsf	_pc_out& (0+255),3,b
   309  007A96  C5F1  FF82         	movff	_pc_out,3970	;volatile
   310                           ;I2C24LC onebyte.c: 118: SomeNOP();
   311  007A9A  DFAC               	call	_SomeNOP	;wreg free
   312                           ;I2C24LC onebyte.c: 119: PORTC =(pc_out&= ~0B000
      +                          01000);
   313  007A9C  0105               	movlb	_pc_out shr (0+8)
   314  007A9E  97F1               	bcf	_pc_out& (0+255),3,b
   315  007AA0  C5F1  FF82         	movff	_pc_out,3970	;volatile
   316                           ;I2C24LC onebyte.c: 120: }
   317  007AA4  0012               	return	
   318  007AA6                     _SendNotAck:
   319  000000                     
   320                           ;I2C24LC onebyte.c: 123: void SendNotAck(void)
   321  007AA6  0105               	movlb	_pc_out shr (0+8)
   322  007AA8  89F1               	bsf	_pc_out& (0+255),4,b
   323  007AAA  C5F1  FF82         	movff	_pc_out,3970	;volatile
   324                           ;I2C24LC onebyte.c: 126: SomeNOP();
   325  007AAE  DFA2               	call	_SomeNOP	;wreg free
   326                           ;I2C24LC onebyte.c: 127: PORTC =(pc_out|= 0B0000
      +                          1000);
   327  007AB0  0105               	movlb	_pc_out shr (0+8)
   328  007AB2  87F1               	bsf	_pc_out& (0+255),3,b
   329  007AB4  C5F1  FF82         	movff	_pc_out,3970	;volatile
   330                           ;I2C24LC onebyte.c: 128: SomeNOP();
   331  007AB8  DF9D               	call	_SomeNOP	;wreg free
   332                           ;I2C24LC onebyte.c: 129: PORTC =(pc_out&= ~0B000
      +                          01000);
   333  007ABA  0105               	movlb	_pc_out shr (0+8)
   334  007ABC  97F1               	bcf	_pc_out& (0+255),3,b
   335  007ABE  C5F1  FF82         	movff	_pc_out,3970	;volatile
   336                           ;I2C24LC onebyte.c: 130: }
   337  007AC2  0012               	return	
   338  007AC4                     _I2CSendByte:
   339  000000                     
   340                           ; _ch loaded to fsr0l
   341  007AC4  6EE9               	movwf	fsr0l,c
   342                           ;I2C24LC onebyte.c: 133: void I2CSendByte(unsign
      +                          ed char ch)
   343  007AC6  0E08               	movlw	8
   344  007AC8  6EE1               	movwf	fsr1l,c
   345                           ;I2C24LC onebyte.c: 136: while (i--)
   346  007ACA                     l19:
   347  007ACA  06E1               	decf	fsr1l,f,c
   348  007ACC  28E1               	incf	fsr1l,w,c
   349                           ;I2C24LC onebyte.c: 137: {
   350  007ACE  0105               	movlb	_pc_out shr (0+8)
   351  007AD0  97F1               	bcf	_pc_out& (0+255),3,b
   352  007AD2  E014               	bz	L2
   353  007AD4  C5F1  FF82         	movff	_pc_out,3970	;volatile
   354                           ;I2C24LC onebyte.c: 139: nop_();
   355  007AD8  DF86               	call	_nop_	;wreg free
   356                           ;I2C24LC onebyte.c: 141: PORTC=(pc_out|= 0B00010
      +                          000);
   357  007ADA  0105               	movlb	_pc_out shr (0+8)
   358                           ;I2C24LC onebyte.c: 140: if(ch&0x80)
   359  007ADC  AEE9               	btfss	fsr0l,7,c
   360  007ADE  D002               	goto	L3
   361  007AE0  89F1               	bsf	_pc_out& (0+255),4,b
   362  007AE2  D001               	goto	L1
   363                           ;I2C24LC onebyte.c: 142: else
   364  007AE4                     L3:
   365  007AE4  99F1               	bcf	_pc_out& (0+255),4,b
   366  007AE6                     L1:
   367  007AE6  C5F1  FF82         	movff	_pc_out,3970	;volatile
   368                           ;I2C24LC onebyte.c: 145: ch<<=1;
   369  007AEA  90D8               	bcf	status,0,c
   370  007AEC  36E9               	rlcf	fsr0l,f,c
   371                           ;I2C24LC onebyte.c: 146: SomeNOP();
   372  007AEE  DF82               	call	_SomeNOP	;wreg free
   373                           ;I2C24LC onebyte.c: 147: PORTC =(pc_out|= 0B0000
      +                          1000);
   374  007AF0  0105               	movlb	_pc_out shr (0+8)
   375  007AF2  87F1               	bsf	_pc_out& (0+255),3,b
   376  007AF4  C5F1  FF82         	movff	_pc_out,3970	;volatile
   377                           ;I2C24LC onebyte.c: 148: SomeNOP();
   378  007AF8  DF7D               	call	_SomeNOP	;wreg free
   379  007AFA  D7E7               	goto	l19
   380                           ;I2C24LC onebyte.c: 149: }
   381  007AFC                     L2:
   382  007AFC  C5F1  FF82         	movff	_pc_out,3970	;volatile
   383                           ;I2C24LC onebyte.c: 151: }
   384  007B00  0012               	return	
   385  007B02                     _I2CReceiveByte:
   386  000000                     
   387                           ;I2C24LC onebyte.c: 154: unsigned char I2CReceiv
      +                          eByte(void)
   388  007B02  0E08               	movlw	8
   389  007B04  6EE9               	movwf	fsr0l,c
   390                           ;I2C24LC onebyte.c: 157: unsigned char ddata,tim
      +                          p;
   391  007B06  6AE1               	clrf	fsr1l,c
   392                           ;I2C24LC onebyte.c: 159: PORTC=(pc_out|= 0B00010
      +                          000);
   393  007B08  0105               	movlb	_pc_out shr (0+8)
   394  007B0A  89F1               	bsf	_pc_out& (0+255),4,b
   395  007B0C  C5F1  FF82         	movff	_pc_out,3970	;volatile
   396                           ;I2C24LC onebyte.c: 160: TRISC |= 0B00010000;
   397  007B10  8894               	bsf	3988,4,c	;volatile
   398                           ;I2C24LC onebyte.c: 161: while (i--)
   399  007B12                     l25:
   400  007B12  06E9               	decf	fsr0l,f,c
   401  007B14  28E9               	incf	fsr0l,w,c
   402  007B16  E015               	bz	u70
   403                           ;I2C24LC onebyte.c: 162: {
   404  007B18  90D8               	bcf	status,0,c
   405  007B1A  36E1               	rlcf	fsr1l,f,c
   406                           ;I2C24LC onebyte.c: 164: PORTC =(pc_out&= ~0B000
      +                          01000);
   407  007B1C  0105               	movlb	_pc_out shr (0+8)
   408  007B1E  97F1               	bcf	_pc_out& (0+255),3,b
   409  007B20  C5F1  FF82         	movff	_pc_out,3970	;volatile
   410                           ;I2C24LC onebyte.c: 165: SomeNOP();
   411  007B24  DF67               	call	_SomeNOP	;wreg free
   412                           ;I2C24LC onebyte.c: 166: PORTC =(pc_out|= 0B0000
      +                          1000);
   413  007B26  0105               	movlb	_pc_out shr (0+8)
   414  007B28  87F1               	bsf	_pc_out& (0+255),3,b
   415  007B2A  C5F1  FF82         	movff	_pc_out,3970	;volatile
   416                           ;I2C24LC onebyte.c: 167: SomeNOP();
   417  007B2E  DF62               	call	_SomeNOP	;wreg free
   418                           ;I2C24LC onebyte.c: 169: timp = PORTC&0B00010000
      +                          ;
   419  007B30  5082               	movf	3970,w,c	;volatile
   420  007B32  0B10               	andlw	16
   421  007B34  6ED9               	movwf	fsr2l,c
   422                           ;I2C24LC onebyte.c: 170: timp>>=4;
   423  007B36  3AD9               	swapf	fsr2l,f,c
   424  007B38  0E0F               	movlw	15
   425  007B3A  16D9               	andwf	fsr2l,f,c
   426                           ;I2C24LC onebyte.c: 171: ddata|=timp;
   427  007B3C  50D9               	movf	fsr2l,w,c
   428  007B3E  12E1               	iorwf	fsr1l,f,c
   429  007B40  D7E8               	goto	l25
   430  007B42                     u70:
   431                           ;I2C24LC onebyte.c: 172: }
   432  007B42  0105               	movlb	_pc_out shr (0+8)
   433  007B44  97F1               	bcf	_pc_out& (0+255),3,b
   434  007B46  C5F1  FF82         	movff	_pc_out,3970	;volatile
   435                           ;I2C24LC onebyte.c: 174: TRISC &= ~0B00010000;
   436  007B4A  9894               	bcf	3988,4,c	;volatile
   437                           ;I2C24LC onebyte.c: 175: return ddata;
   438  007B4C  50E1               	movf	fsr1l,w,c
   439  007B4E  0012               	return	
   440                           ;I2C24LC onebyte.c: 176: }
   441  007B50  00F9               	dw	?_IIC
   442  007B52                     _IIC:
   443  000000                     
   444                           ;I2C24LC onebyte.c: 183: unsigned char IIC(unsig
      +                          ned char *DataBuff,char ByteQuantity,unsigned in
      +                          t Address,
   445  007B52  0E01               	movlw	1
   446  007B54  6EF3               	movwf	prodl,c
   447                           ;I2C24LC onebyte.c: 187: unsigned char i,q;
   448  007B56  6EF4               	movwf	prodh,c
   449                           ;I2C24LC onebyte.c: 190: TRISC &= ~0B00001000;
   450  007B58  9694               	bcf	3988,3,c	;volatile

⌨️ 快捷键说明

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