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

📄 copy.src

📁 EEPROM局部抄写软件,可以任意设置地址,抄写一段数据,数据由母片提供.
💻 SRC
📖 第 1 页 / 共 5 页
字号:
; 	for(i =0;i< no -1; i++)
			; SOURCE LINE # 518
;---- Variable 'i?1680' assigned to Register 'R5' ----
	CLR  	A
	MOV  	R5,A
?C0082:
	MOV  	A,no?1679
	DEC  	A
	MOV  	R7,A
	MOV  	A,R5
	CLR  	C
	SUBB 	A,R7
	JNC  	?C0083
; 		{
			; SOURCE LINE # 519
; 		*s = feedRcv_byte();
			; SOURCE LINE # 520
; 		feedAckI2c(0);
			; SOURCE LINE # 521
	LCALL	L?0297
; 		s++;
			; SOURCE LINE # 522
	MOV  	A,#01H
	ADD  	A,R1
	MOV  	R1,A
	CLR  	A
	ADDC 	A,R2
	MOV  	R2,A
; 		}
			; SOURCE LINE # 523
	INC  	R5
	SJMP 	?C0082
?C0083:
; 	*s = feedRcv_byte();
			; SOURCE LINE # 524
	LCALL	feedRcv_byte
	MOV  	A,R7
	LCALL	?C?CSTPTR
; 	feedAckI2c(1);
			; SOURCE LINE # 525
	SETB 	?feedAckI2c?BIT
	LCALL	feedAckI2c
; 	feedStopI2c();
			; SOURCE LINE # 526
	LCALL	feedStopI2c
; 	return(1);
			; SOURCE LINE # 527
	SETB 	C
; }
			; SOURCE LINE # 528
?C0079:
	RET  	
; END OF _fed_RS16K

; 
; 
; 
; bit fed_RS32K ( uchar sla, uint suba, uchar *s, uchar no )

	RSEG  ?PR?_fed_RS32K?COPY
_fed_RS32K:
	USING	0
			; SOURCE LINE # 532
	MOV  	sla?1781,R7
;---- Variable 's?1783' assigned to Register 'R1/R2/R3' ----
;---- Variable 'suba?1782' assigned to Register 'R4/R5' ----
; {
			; SOURCE LINE # 533
; 	uchar i;
; 	feedStartI2c ();
			; SOURCE LINE # 535
	LCALL	feedStartI2c
;  	feedSend_byte (sla);
			; SOURCE LINE # 536
	MOV  	R7,sla?1781
	LCALL	_feedSend_byte
;     	if( ack == 0 ) return (0);
			; SOURCE LINE # 537
	JB   	ack,?C0085
	CLR  	C
	RET  	
?C0085:
; 	feedSend_byte (suba / 256);       // the high byte address
			; SOURCE LINE # 538
	MOV  	R7,AR4
	LCALL	_feedSend_byte
; 		if (ack == 0 ) return (0);
			; SOURCE LINE # 539
	JB   	ack,?C0087
	CLR  	C
	RET  	
?C0087:
;         feedSend_byte (suba % 256);       // the low byte address
			; SOURCE LINE # 540
	MOV  	R7,AR5
	LCALL	_feedSend_byte
; 		if (ack == 0 ) return (0);
			; SOURCE LINE # 541
	JB   	ack,?C0088
	CLR  	C
	RET  	
?C0088:
; 	feedStartI2c();
			; SOURCE LINE # 542
	LCALL	feedStartI2c
; 	feedSend_byte(sla + 1);
			; SOURCE LINE # 543
	MOV  	A,sla?1781
	INC  	A
	MOV  	R7,A
	LCALL	_feedSend_byte
; 		if ( ack == 0) return ( 0 );
			; SOURCE LINE # 544
	JB   	ack,?C0089
	CLR  	C
	RET  	
?C0089:
; 	for(i =0;i< no -1; i++)
			; SOURCE LINE # 545
;---- Variable 'i?1785' assigned to Register 'R5' ----
	CLR  	A
	MOV  	R5,A
?C0090:
	MOV  	A,no?1784
	DEC  	A
	MOV  	R7,A
	MOV  	A,R5
	CLR  	C
	SUBB 	A,R7
	JNC  	?C0091
; 		{
			; SOURCE LINE # 546
; 		*s = feedRcv_byte();
			; SOURCE LINE # 547
; 		feedAckI2c(0);
			; SOURCE LINE # 548
	LCALL	L?0297
; 		s++;
			; SOURCE LINE # 549
	MOV  	A,#01H
	ADD  	A,R1
	MOV  	R1,A
	CLR  	A
	ADDC 	A,R2
	MOV  	R2,A
; 		}
			; SOURCE LINE # 550
	INC  	R5
	SJMP 	?C0090
?C0091:
; 	*s = feedRcv_byte();
			; SOURCE LINE # 551
	LCALL	feedRcv_byte
	MOV  	A,R7
	LCALL	?C?CSTPTR
; 	feedAckI2c(1);
			; SOURCE LINE # 552
	SETB 	?feedAckI2c?BIT
	LCALL	feedAckI2c
; 	feedStopI2c();
			; SOURCE LINE # 553
	LCALL	feedStopI2c
; 	return(1);
			; SOURCE LINE # 554
	SETB 	C
; }
			; SOURCE LINE # 555
?C0086:
	RET  	
; END OF _fed_RS32K

; ////////////////////////////////////////////
;   bit feedSendStr16K( uchar sla, uchar suba, uchar *s, uchar no )

	RSEG  ?PR?_feedSendStr16K?COPY
_feedSendStr16K:
	USING	0
			; SOURCE LINE # 557
;---- Variable 'sla?1886' assigned to Register 'R6' ----
	MOV  	R6,AR7
;---- Variable 's?1888' assigned to Register 'R1/R2/R3' ----
;---- Variable 'suba?1887' assigned to Register 'R5' ----
; {
			; SOURCE LINE # 558
;         uchar i;
;         feedStartI2c();
			; SOURCE LINE # 560
	LCALL	feedStartI2c
;         feedSend_byte(sla);
			; SOURCE LINE # 561
	LCALL	_feedSend_byte
;         if(ack == 0)return (0);
			; SOURCE LINE # 562
	JB   	ack,?C0093
	CLR  	C
	RET  	
?C0093:
;         feedSend_byte(suba);
			; SOURCE LINE # 563
	MOV  	R7,AR5
	LCALL	_feedSend_byte
;            if(ack == 0)return (0);
			; SOURCE LINE # 564
	JB   	ack,?C0095
	CLR  	C
	RET  	
?C0095:
;         for( i = 0; i < no ;i ++)
			; SOURCE LINE # 565
;---- Variable 'i?1890' assigned to Register 'R5' ----
	CLR  	A
	MOV  	R5,A
?C0096:
	MOV  	A,R5
	CLR  	C
	SUBB 	A,no?1889
	JNC  	?C0097
;         {
			; SOURCE LINE # 566
;                 feedSend_byte(*s);
			; SOURCE LINE # 567
	LCALL	L?0300
;                 if(ack == 0)return (0);
			; SOURCE LINE # 568
	JB   	ack,?C0099
	CLR  	C
	RET  	
?C0099:
;                 s++;
			; SOURCE LINE # 569
	MOV  	A,#01H
	ADD  	A,R1
	MOV  	R1,A
	CLR  	A
	ADDC 	A,R2
	MOV  	R2,A
;          }
			; SOURCE LINE # 570
	INC  	R5
	SJMP 	?C0096
?C0097:
;          feedStopI2c();
			; SOURCE LINE # 571
	LCALL	feedStopI2c
;          return (1);
			; SOURCE LINE # 572
	SETB 	C
; }
			; SOURCE LINE # 573
?C0094:
	RET  	
; END OF _feedSendStr16K

; bit feedSendStr32K( uchar sla, uint suba, uchar *s, uchar no )

	RSEG  ?PR?_feedSendStr32K?COPY
_feedSendStr32K:
	USING	0
			; SOURCE LINE # 574
;---- Variable 'sla?1991' assigned to Register 'R7' ----
;---- Variable 's?1993' assigned to Register 'R1/R2/R3' ----
;---- Variable 'suba?1992' assigned to Register 'R4/R5' ----
; {
			; SOURCE LINE # 575
;         uchar i;
;         feedStartI2c ();
			; SOURCE LINE # 577
	LCALL	feedStartI2c
;     	feedSend_byte (sla);
			; SOURCE LINE # 578
	LCALL	_feedSend_byte
;         if(ack == 0)return (0);
			; SOURCE LINE # 579
	JB   	ack,?C0100
	CLR  	C
	RET  	
?C0100:
;         feedSend_byte(suba / 256);  // the high byte address
			; SOURCE LINE # 580
	MOV  	R7,AR4
	LCALL	_feedSend_byte
;         if(ack == 0)return (0);
			; SOURCE LINE # 581
	JB   	ack,?C0102
	CLR  	C
	RET  	
?C0102:
;         feedSend_byte(suba % 256);   // the low byte address
			; SOURCE LINE # 582
	MOV  	R7,AR5
	LCALL	_feedSend_byte
;         if(ack == 0)return (0);
			; SOURCE LINE # 583
	JB   	ack,?C0103
	CLR  	C
	RET  	
?C0103:
;         for( i = 0; i < no-1 ;i ++)
			; SOURCE LINE # 584
;---- Variable 'i?1995' assigned to Register 'R5' ----
	CLR  	A
	MOV  	R5,A
?C0104:
	MOV  	A,no?1994
	DEC  	A
	MOV  	R7,A
	MOV  	A,R5
	CLR  	C
	SUBB 	A,R7
	JNC  	?C0105
;         {
			; SOURCE LINE # 585
;                    feedSend_byte(*s);
			; SOURCE LINE # 586
	LCALL	L?0300
;                 if(ack == 0)return (0);
			; SOURCE LINE # 587
	JB   	ack,?C0107
	CLR  	C
	RET  	
?C0107:
;                 s++;
			; SOURCE LINE # 588
	MOV  	A,#01H
	ADD  	A,R1
	MOV  	R1,A
	CLR  	A
	ADDC 	A,R2
	MOV  	R2,A
;          }
			; SOURCE LINE # 589
	INC  	R5
	SJMP 	?C0104
?C0105:
; 		  feedSend_byte(*s);
			; SOURCE LINE # 590
	LCALL	L?0301
;          feedStopI2c();
			; SOURCE LINE # 591
	LCALL	feedStopI2c
; 
;          return (1);
			; SOURCE LINE # 593
	SETB 	C
; }
			; SOURCE LINE # 594
?C0101:
	RET  	
; END OF _feedSendStr32K

; /*bit JUBU_location_check()
; {
; 
; 
;            uchar BitCnt;
;            uchar c = 0xa0;
;            jubuStartI2c();
; 
; 	for( BitCnt = 0; BitCnt < 8; BitCnt ++ )
; 	{
; 		if((c << BitCnt) & 0x80) SDA1 = 1;
; 
; 		else
; 
;         	SDA1 =0;
; 
; 		_Nop();
; 		_Nop();
; 		SCL = 1;
; 		_Nop();
; 		_Nop();
; 		_Nop();
; 		_Nop();
; 		_Nop();
;        	_Nop();
;         	_Nop();
; 		SCL = 0;
;               _Nop();
; 		_Nop();
; 		_Nop();
; 	}
; 	_Nop();
; 	_Nop();
; 	_Nop();
;    	SDA1 =1;
; 
; 	_Nop();
; 	_Nop();
; 	_Nop();
; 	_Nop();
; 	SCL = 1;
; 	_Nop();
; 	_Nop();
; 	_Nop();
; 	_Nop();
; 	_Nop();
; 	_Nop();
; 	if(SDA1==0)    CONTR = SDA1;
;     else 
; 		
; 		ALM=1;
; 	SCL = 0;
; 	_Nop();
; 	_Nop();
; 	_Nop();
; 
;         jubuStopI2c();
;         return (1);
; 
; }*/
; //////////////////////////////////////
; bit JUBU0_location_check(void)

	RSEG  ?PR?JUBU0_location_check?COPY
JUBU0_location_check:
	USING	0
			; SOURCE LINE # 656
; {
			; SOURCE LINE # 657
; 
; 
;            uchar BitCnt;
;            uchar c = 0xa0;
			; SOURCE LINE # 661
;---- Variable 'c?2097' assigned to Register 'R7' ----
	MOV  	R7,#0A0H
;            jubuStartI2c();
			; SOURCE LINE # 662
	LCALL	jubuStartI2c
; 
; 	for( BitCnt = 0; BitCnt < 8; BitCnt ++ )
			; SOURCE LINE # 664
;---- Variable 'BitCnt?2096' assigned to Register 'R6' ----
	CLR  	A
	MOV  	R6,A
?C0108:
; 	{
			; SOURCE LINE # 665
; 		if((c << BitCnt) & 0x80) SDA1 = 1;
			; SOURCE LINE # 666
	MOV  	A,R7
	MOV  	R0,AR6
	INC  	R0
	SJMP 	?C0263
?C0262:
	CLR  	C
	RLC  	A
?C0263:
	DJNZ 	R0,?C0262
	JNB  	ACC.7,?C0111
	SETB 	SDA1
	SJMP 	?C0112
?C0111:
; 
; 		else
; 
;         	SDA1 =0;
			; SOURCE LINE # 670
	CLR  	SDA1
?C0112:
; 
; 		_Nop();
			; SOURCE LINE # 672
	NOP  	
; 		_Nop();
			; SOURCE LINE # 673
	NOP  	
; 		SCL = 1;
			; SOURCE LINE # 674
	SETB 	SCL
; 		_Nop();
			; SOURCE LINE # 675
	NOP  	
; 		_Nop();
			; SOURCE LINE # 676
	NOP  	
; 		_Nop();
			; SOURCE LINE # 677
	NOP  	
; 		_Nop();
			; SOURCE LINE # 678
	NOP  	
; 		_Nop();
			; SOURCE LINE # 679
	NOP  	
;        	_Nop();
			; SOURCE LINE # 680
	NOP  	
;         	_Nop();
			; SOURCE LINE # 681
	NOP  	
; 		SCL = 0;
			; SOURCE LINE # 682
	CLR  	SCL
;               _Nop();
			; SOURCE LINE # 683
	NOP  	
; 		_Nop();
			; SOURCE LINE # 684
	NOP  	
; 		_Nop();
			; SOURCE LINE # 685
	NOP  	
; 	}
			; SOURCE LINE # 686
	INC  	R6
	CJNE 	R6,#08H,?C0108
?C0109:
; 	_Nop();
			; SOURCE LINE # 687
	NOP  	
; 	_Nop();
			; SOURCE LINE # 688
	NOP  	
; 	_Nop();
			; SOURCE LINE # 689
	NOP  	
;    	SDA1 =1;
			; SOURCE LINE # 690
	SETB 	SDA1
; 
; 	_Nop();
			; SOURCE LINE # 692
	NOP  	
; 	_Nop();
			; SOURCE LINE # 693
	NOP  	
; 	_Nop();
			; SOURCE LINE # 694
	NOP  	
; 	_Nop();
			; SOURCE LINE # 695
	NOP  	
; 	SCL = 1;
			; SOURCE LINE # 696
	SETB 	SCL
; 	_Nop();
			; SOURCE LINE # 697
	NOP  	
; 	_Nop();
			; SOURCE LINE # 698
	NOP  	
; 	_Nop();
			; SOURCE LINE # 699
	NOP  	
; 	_Nop();
			; SOURCE LINE # 700
	NOP  	
; 	_Nop();
			; SOURCE LINE # 701
	NOP  	
; 	_Nop();
			; SOURCE LINE # 702
	NOP  	
; 	if(SDA1==0)    LED2 = SDA1;
			; SOURCE LINE # 703
	JB   	SDA1,?C0113
	MOV  	C,SDA1
	MOV  	LED2,C
	SJMP 	?C0114
?C0113:
;     else 
; 	ALM=1;
			; SOURCE LINE # 705
	SETB 	ALM
?C0114:
; 	SCL = 0;
			; SOURCE LINE # 706
	CLR  	SCL
; 	_Nop();
			; SOURCE LINE # 707
	NOP  	
; 	_Nop();
			; SOURCE LINE # 708
	NOP  	
; 	_Nop();
			; SOURCE LINE # 709
	NOP  	
; 
;         jubuStopI2c();
			; SOURCE LINE # 711
	LCALL	jubuStopI2c
;         return (1);
			; SOURCE LINE # 712
	SETB 	C
; 
; }
			; SOURCE LINE # 714
?C0115:
	RET  	
; END OF JUBU0_location_check

; ////////////////////////////////////////
; bit feed_jubu_location_check()

	RSEG  ?PR?feed_jubu_location_check?COPY
feed_jubu_location_check:
	USING	0
			; SOURCE LINE # 716
; {
			; SOURCE LINE # 717
; 
; 
;            uchar BitCnt;
;            uchar c = 0xa0;
			; SOURCE LINE # 721
;---- Variable 'c?2199' assigned to Register 'R7' ----
	MOV  	R7,#0A0H
;            feedStartI2c();
			; SOURCE LINE # 722
	LCALL	feedStartI2c
; 
; 	for( BitCnt = 0; BitCnt < 8; BitCnt ++ )
			; SOURCE LINE # 724
;---- Variable 'BitCnt?2198' assigned to Register 'R6' ----
	CLR  	A
	MOV  	R6,A
?C0116:
; 	{
			; SOURCE LINE # 725
; 		if((c << BitCnt) & 0x80) SDA9 = 1;
			; SOURCE LINE # 726
	MOV  	A,R7
	MOV  	R0,AR6
	INC  	R0
	SJMP 	?C0265
?C0264:
	CLR  	C
	RLC  	A
?C0265:
	DJNZ 	R0,?C0264
	JNB  	ACC.7,?C0119
	SETB 	SDA9
	SJMP 	?C0120
?C0119:
; 
; 		else
; 
;         	SDA9 =0;
			; SOURCE LINE # 730
	CLR  	SDA9
?C0120:
; 
; 		_Nop();
			; SOURCE LINE # 732
	NOP  	
; 		_Nop();
			; SOURCE LINE # 733
	NOP  	
; 		SCL = 1;
			; SOURCE LINE # 734
	SETB 	SCL
; 		_Nop();
			; SOURCE LINE # 735
	NOP  	
; 		_Nop();
			; SOURCE LINE # 736
	NOP  	
; 		_Nop();
			; SOURCE LINE # 737
	NOP  	
; 		_Nop();
			; SOURCE LINE # 738
	NOP  	
; 		_Nop();
			; SOURCE LINE # 739
	NOP  	
;        	_Nop();
			; SOURCE LINE # 740
	NOP  	
;         	_Nop();
			; SOURCE LINE # 741
	NOP  	
; 		SCL = 0;
			; SOURCE LINE # 742
	CLR  	SCL
;               _Nop();
			; SOURCE LINE # 743
	NOP  	
; 		_Nop();
			; SOURCE LINE # 744
	NOP  	
; 		_Nop();
			; SOURCE LINE # 745
	NOP  	
; 	}
			; SOURCE LINE # 746
	INC  	R6
	CJNE 	R6,#08H,?C0116
?C0117:
; 	_Nop();
			; SOURCE LINE # 747
	NOP  	
; 	_Nop();
			; SOURCE LINE # 748
	NOP  	
; 	_Nop();
			; SOURCE LINE # 749

⌨️ 快捷键说明

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