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

📄 i2c24lc.lst

📁 上载的程序可以用于PIC单片机,也可以用于430单片机,本人原创,到至今还没有发现哪位网友想出这种办法,希望站长能多加分.
💻 LST
📖 第 1 页 / 共 4 页
字号:
   535  072C  26B3               	fcall	_I2CReceiveByte
   536  072D  1383               	bcf	3,7
   537  072E  0080               	movwf	0
   538  072F  0AAF               	incf	?a_IIC+1
   539                           ;I2C24LC.C: 234: SendAck();}
   540  0730  2699  120A  118A   	fcall	_SendAck
   541  0733                     l46
   542  0733  0BAA               	decfsz	?_IIC
   543  0734  2F29               	goto	l47
   544                           ;I2C24LC.C: 235: *DataBuff=I2CReceiveByte();
   545  0735  082F               	movf	?a_IIC+1,w
   546  0736  0084               	movwf	4
   547  0737  1383               	bcf	3,7
   548  0738  26B3               	fcall	_I2CReceiveByte
   549  0739  1383               	bcf	3,7
   550  073A  0080               	movwf	0
   551                           ;I2C24LC.C: 236: SendNotAck();
   552  073B  26A6  120A  118A   	fcall	_SendNotAck
   553                           ;I2C24LC.C: 237: errorflag=0x00;
   554  073E  01B0               	clrf	?a_IIC+2
   555                           ;I2C24LC.C: 238: break;}
   556  073F  2F44               	goto	l31
   557  0740                     l29
   558  0740  1283               	bcf	3,5
   559  0741  03AE               	decf	?a_IIC
   560  0742  0F2E               	incfsz	?a_IIC,w
   561  0743  2EF0               	goto	l30
   562  0744                     l31
   563                           ;I2C24LC.C: 239: }
   564  0744  266A  120A  118A   	fcall	_I2CStop
   565                           ;I2C24LC.C: 241: if(!(ControlByte&0x01))
   566  0747  182D               	btfsc	?_IIC+3,0
   567  0748  2F4A               	goto	l49
   568                           ;I2C24LC.C: 242: I2C_QUERY();
   569  0749  26DB               	fcall	_I2C_QUERY
   570  074A                     l49
   571                           ;I2C24LC.C: 243: return(errorflag);
   572  074A  0830               	movf	?a_IIC+2,w
   573                           ;I2C24LC.C: 244: }
   574  074B  0008               	return	;uses W
   575  074C                     _nop_
   576                           ;	_hang assigned to ?a_nop_+0
   577  0000                     _nop_$hang	set	?a_nop_
   578                           ;I2C24LC.C: 51: nop_()
   579  074C  0183               	clrf	3	;select bank 0
   580  074D  01B3               	clrf	?a_nop_
   581  074E  0AB3               	incf	?a_nop_
   582                           ;I2C24LC.C: 54: while(hang--);
   583  074F                     l2
   584  074F  03B3               	decf	?a_nop_
   585  0750  0F33               	incfsz	?a_nop_,w
   586  0751  2F4F               	goto	l2
   587  0752  0008               	return
   588  0753                     _I2CSendByte
   589                           ;	_ch assigned to ?a_I2CSendByte+0
   590  0000                     _I2CSendByte$ch	set	?a_I2CSendByte
   591                           ;	_i assigned to ?a_I2CSendByte+1
   592  0000                     _I2CSendByte$i	set	?a_I2CSendByte+1
   593                           ;_ch stored from w
   594  0753  0183               	clrf	3	;select bank 0
   595  0754  00B1               	movwf	?a_I2CSendByte
   596                           ;I2C24LC.C: 133: void I2CSendByte(unsigned char
      +                           ch)
   597  0755  3008               	movlw	8
   598  0756  00B2               	movwf	?a_I2CSendByte+1
   599                           ;I2C24LC.C: 136: while (i--)
   600  0757  2F6A               	goto	l19
   601  0758                     l20
   602                           ;I2C24LC.C: 137: {
   603  0758  11A3               	bcf	_pc_out,3
   604  0759  0823               	movf	_pc_out,w
   605  075A  0087               	movwf	7	;volatile
   606                           ;I2C24LC.C: 139: nop_();
   607  075B  274C               	fcall	_nop_
   608                           ;I2C24LC.C: 140: if(ch&0x80)
   609  075C  1FB1               	btfss	?a_I2CSendByte,7
   610  075D  2F60               	goto	l22
   611                           ;I2C24LC.C: 141: PORTC=(pc_out|= 0B00010000);
   612  075E  1623               	bsf	_pc_out,4
   613  075F  2F61               	goto	L1
   614  0760                     l22
   615                           ;I2C24LC.C: 142: else
   616  0760  1223               	bcf	_pc_out,4
   617  0761                     L1
   618  0761  0823               	movf	_pc_out,w
   619  0762  0087               	movwf	7	;volatile
   620                           ;I2C24LC.C: 145: ch<<=1;
   621  0763  1003               	bcf	3,0
   622  0764  0DB1               	rlf	?a_I2CSendByte
   623                           ;I2C24LC.C: 146: SomeNOP();
   624  0765  264C               	fcall	_SomeNOP
   625                           ;I2C24LC.C: 147: PORTC =(pc_out|= 0B00001000);
   626  0766  15A3               	bsf	_pc_out,3
   627  0767  0823               	movf	_pc_out,w
   628  0768  0087               	movwf	7	;volatile
   629                           ;I2C24LC.C: 148: SomeNOP();
   630  0769  264C               	fcall	_SomeNOP
   631  076A                     l19
   632  076A  03B2               	decf	?a_I2CSendByte+1
   633  076B  0F32               	incfsz	?a_I2CSendByte+1,w
   634  076C  2F58               	goto	l20
   635                           ;I2C24LC.C: 149: }
   636  076D  11A3               	bcf	_pc_out,3
   637  076E  0823               	movf	_pc_out,w
   638  076F  0087               	movwf	7	;volatile
   639                           ;I2C24LC.C: 151: }
   640  0770  0008               	return	;W free
   641  0771                     _I2C_CLR
   642                           ;	_b assigned to ?a_I2C_CLR+0
   643  0000                     _I2C_CLR$b	set	?a_I2C_CLR
   644                           ;	_a assigned to ?a_I2C_CLR+2
   645  0000                     _I2C_CLR$a	set	?a_I2C_CLR+2
   646                           ;I2C24LC.C: 294: void I2C_CLR(void)
   647  0771  0183               	clrf	3	;select bank 0
   648  0772  01A8               	clrf	?a_I2C_CLR+2
   649  0773  01A9               	clrf	?a_I2C_CLR+3
   650  0774                     l67
   651                           ;I2C24LC.C: 298: {
   652  0774  0829               	movf	?a_I2C_CLR+3,w
   653  0775  00F1               	movwf	btemp+1
   654  0776  0828               	movf	?a_I2C_CLR+2,w
   655  0777  00F0               	movwf	btemp
   656  0778  1003               	bcf	3,0
   657  0779  0DF0               	rlf	btemp
   658  077A  0DF1               	rlf	btemp+1
   659  077B  1003               	bcf	3,0
   660  077C  0DF0               	rlf	btemp
   661  077D  0DF1               	rlf	btemp+1
   662  077E  1003               	bcf	3,0
   663  077F  0DF0               	rlf	btemp
   664  0780  0DF1               	rlf	btemp+1
   665  0781  0870               	movf	btemp,w
   666  0782  00A6               	movwf	?a_I2C_CLR
   667  0783  0871               	movf	btemp+1,w
   668  0784  00A7               	movwf	?a_I2C_CLR+1
   669                           ;I2C24LC.C: 300: iic_check=IIC(read_Buff,8,b,(0
      +                          xA0|0x00));
   670  0785  3008               	movlw	8
   671  0786  00AA               	movwf	?_IIC
   672  0787  0826               	movf	?a_I2C_CLR,w
   673  0788  00AB               	movwf	?_IIC+1
   674  0789  0827               	movf	?a_I2C_CLR+1,w
   675  078A  00AC               	movwf	?_IIC+2
   676  078B  30A0               	movlw	-96
   677  078C  00AD               	movwf	?_IIC+3
   678  078D  303D               	movlw	_read_Buff
   679  078E  26E7  120A  118A   	fcall	_IIC
   680  0791  00A0               	movwf	_iic_check
   681  0792  0AA8               	incf	?a_I2C_CLR+2
   682  0793  1903               	btfsc	3,2
   683  0794  0AA9               	incf	?a_I2C_CLR+3
   684  0795  3001               	movlw	1
   685  0796  0229               	subwf	?a_I2C_CLR+3,w
   686  0797  3090               	movlw	144
   687  0798  1903               	btfsc	3,2
   688  0799  0228               	subwf	?a_I2C_CLR+2,w
   689  079A  1803               	btfsc	3,0
   690  079B  0008               	return
   691  079C  2F74               	goto	l67
   692  079D                     _main
   693                           ;I2C24LC.C: 323: void main(void)
   694  079D  3008               	movlw	8
   695  079E  1283               	bcf	3,5
   696  079F  1303               	bcf	3,6	;carry unused
   697  07A0  00AA               	movwf	?_IIC
   698  07A1  01AB               	clrf	?_IIC+1
   699  07A2  01AC               	clrf	?_IIC+2
   700  07A3  30A0               	movlw	-96
   701  07A4  00AD               	movwf	?_IIC+3
   702  07A5  3035               	movlw	_write_table
   703  07A6  26E7  120A  118A   	fcall	_IIC
   704  07A9  00A0               	movwf	_iic_check
   705                           ;I2C24LC.C: 330: iic_check=IIC(read_Buff,8,0,(0
      +                          xA0|0x01));
   706  07AA  3008               	movlw	8
   707  07AB  00AA               	movwf	?_IIC
   708  07AC  01AB               	clrf	?_IIC+1
   709  07AD  01AC               	clrf	?_IIC+2
   710  07AE  30A1               	movlw	-95
   711  07AF  00AD               	movwf	?_IIC+3
   712  07B0  303D               	movlw	_read_Buff
   713  07B1  26E7  120A  118A   	fcall	_IIC
   714  07B4  00A0               	movwf	_iic_check
   715                           ;I2C24LC.C: 331: iic_check=IIC(0x02,1,1,(0xA0|0
      +                          x01));
   716  07B5  01AA               	clrf	?_IIC
   717  07B6  0AAA               	incf	?_IIC
   718  07B7  01AB               	clrf	?_IIC+1
   719  07B8  0AAB               	incf	?_IIC+1
   720  07B9  01AC               	clrf	?_IIC+2
   721  07BA  30A1               	movlw	-95
   722  07BB  00AD               	movwf	?_IIC+3
   723  07BC  3002               	movlw	2
   724  07BD  26E7  120A  118A   	fcall	_IIC
   725  07C0  00A0               	movwf	_iic_check
   726                           ;I2C24LC.C: 332: asm("nop");
   727  07C1  0000               	nop	;#
   728                           ;I2C24LC.C: 333: I2C_CLR();
   729  07C2  2771               	fcall	_I2C_CLR
   730                           ;I2C24LC.C: 334: I2C_WR();
   731  07C3  2620               	fcall	_I2C_WR
   732  07C4                     l76
   733                           ;I2C24LC.C: 335: while(1)
   734                           ;I2C24LC.C: 336: {
   735  07C4  3008               	movlw	8
   736  07C5  00AA               	movwf	?_IIC
   737  07C6  01AB               	clrf	?_IIC+1
   738  07C7  01AC               	clrf	?_IIC+2
   739  07C8  30A0               	movlw	-96
   740  07C9  00AD               	movwf	?_IIC+3
   741  07CA  3035               	movlw	_write_table
   742  07CB  26E7  120A  118A   	fcall	_IIC
   743  07CE  00A0               	movwf	_iic_check
   744                           ;I2C24LC.C: 343: delay(500);
   745  07CF  30F4               	movlw	244
   746  07D0  00A6               	movwf	?_delay
   747  07D1  3001               	movlw	1
   748  07D2  00A7               	movwf	?_delay+1
   749  07D3  2610               	fcall	_delay
   750                           ;I2C24LC.C: 348: iic_check=IIC(read_Buff,8,0x00
      +                          ,(0xA0|0x01));
   751  07D4  3008               	movlw	8
   752  07D5  00AA               	movwf	?_IIC
   753  07D6  01AB               	clrf	?_IIC+1
   754  07D7  01AC               	clrf	?_IIC+2
   755  07D8  30A1               	movlw	-95
   756  07D9  00AD               	movwf	?_IIC+3
   757  07DA  303D               	movlw	_read_Buff
   758  07DB  26E7  120A  118A   	fcall	_IIC
   759  07DE  00A0               	movwf	_iic_check
   760                           ;I2C24LC.C: 351: if(!(data_check(write_table,re
      +                          ad_Buff,8)))
   761  07DF  303D               	movlw	_read_Buff
   762  07E0  00A6               	movwf	?_data_check
   763  07E1  3008               	movlw	8
   764  07E2  00A7               	movwf	?_data_check+1
   765  07E3  3035               	movlw	_write_table
   766  07E4  25EF               	fcall	_data_check
   767  07E5  00F0               	movwf	btemp
   768  07E6  01F1               	clrf	btemp+1
   769  07E7  2FC4               	goto	l76
   770                           
   771                           	psect	text16
   772  0000                     
   773  0000                     
   774  0000                     
   775  0000                     
   776  0000                     
   777  0000                     
   778  0000                     
   779  0000                     
   780  0000                     
   781  0000                     
   782  0000                     
   783  0000                     
   784  0000                     
   785  0000                     
   786  0000                     
   787  0000                     
   788  0000                     
   789  0000                     
   790  0000                     
   791  0000                     
   792  0000                     
   793  0000                     
   794  0000                     
   795  0000                     
   796  0000                     
   797  0000                     
   798  0000                     
   799  0000                     
   800  0000                     
   801  0000                     
   802  0000                     

⌨️ 快捷键说明

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