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

📄 bin2bcd.src

📁 DDS数字信号发生器,采用AD9835DDS 专用芯片 输出范围1K--10MHZ 采用X25045作看门狗及数据存储器
💻 SRC
字号:
; .\Bin2BCD.SRC generated from: .\Bin2BCD.c


NAME	BIN2BCD

?PR?LongToBcd?BIN2BCD                    SEGMENT CODE
?PR?WordToBcd?BIN2BCD                    SEGMENT CODE
?PR?_KeilWordToBcd?BIN2BCD               SEGMENT CODE
?PR?_KeilLongToBcd?BIN2BCD               SEGMENT CODE
	PUBLIC	AsmParam3
	PUBLIC	AsmParam2
	PUBLIC	AsmParam1
	PUBLIC	_KeilLongToBcd
	PUBLIC	_KeilWordToBcd
	PUBLIC	WordToBcd
	PUBLIC	LongToBcd

	DSEG  AT  020H
      AsmParam1:   DS   1

	DSEG  AT  021H
      AsmParam2:   DS   1

	DSEG  AT  022H
      AsmParam3:   DS   1
; /*************************************************************************************/
; unsigned char AsmParam1 _at_ 0x20;
; unsigned char AsmParam2 _at_ 0x21;
; unsigned char AsmParam3 _at_ 0x22;
; //------------------------------------------------------------------------------------
; void  LongToBcd(void)

	RSEG  ?PR?LongToBcd?BIN2BCD
LongToBcd:
			; SOURCE LINE # 6
; {
			; SOURCE LINE # 7
; 	#pragma asm
; 		MOV A,20H   ; 
	  MOV A,20H   ; 
;         	MOV R7,A
	  MOV R7,A
;         	MOV A,21H   ;
	  MOV A,21H   ;
;         	MOV R5,A
	  MOV R5,A
; 		MOV	A,R7
	  MOV	A,R7
; 		MOV	R1,A	;LongData ADDRESS:R1(Hsb)
	  MOV	R1,A	;LongData ADDRESS:R1(Hsb)
; 
	  
; 		MOV	A,R5
	  MOV	A,R5
; 		MOV	R0,A	;LongData ADDRESS:R0(Hsb)
	  MOV	R0,A	;LongData ADDRESS:R0(Hsb)
; 
	  
; 		MOV	A,@R1	;LongData:H R2 R3 R4 R5 L
	  MOV	A,@R1	;LongData:H R2 R3 R4 R5 L
; 		MOV	R2,A	
	  MOV	R2,A	
; 		INC	R1
	  INC	R1
; 		MOV	A,@R1
	  MOV	A,@R1
; 		MOV	R3,A	
	  MOV	R3,A	
; 		INC	R1
	  INC	R1
; 		MOV	A,@R1
	  MOV	A,@R1
; 		MOV	R4,A	
	  MOV	R4,A	
; 		INC	R1
	  INC	R1
; 		MOV	A,@R1
	  MOV	A,@R1
; 		MOV	R5,A
	  MOV	R5,A
; 		
	  
; 		CLR	A	;CLEAR BCD_Data
	  CLR	A	;CLEAR BCD_Data
; 		MOV	@R0,A		
	  MOV	@R0,A		
; 		INC	R0
	  INC	R0
; 		MOV	@R0,A		
	  MOV	@R0,A		
; 		INC	R0
	  INC	R0
; 		MOV	@R0,A		
	  MOV	@R0,A		
; 		INC	R0
	  INC	R0
; 		MOV	@R0,A		
	  MOV	@R0,A		
; 		INC	R0
	  INC	R0
; 		MOV	@R0,A	;BCD_Data ADDRESS:R0 OR R7(Lsb)
	  MOV	@R0,A	;BCD_Data ADDRESS:R0 OR R7(Lsb)
; 		MOV	A,R0
	  MOV	A,R0
; 		MOV	R7,A	
	  MOV	R7,A	
; 
	  
; 		MOV	R1,#32		;R2:SHIFT COUNT
	  MOV	R1,#32		;R2:SHIFT COUNT
; 		
	  
; 	F4Bin2BCDLP2:
	  F4Bin2BCDLP2:
; 		MOV	A,R5
	  MOV	A,R5
; 		RLC	A
	  RLC	A
; 		MOV	R5,A
	  MOV	R5,A
; 		MOV	A,R4
	  MOV	A,R4
; 		RLC	A
	  RLC	A
; 		MOV	R4,A
	  MOV	R4,A
; 		MOV	A,R3
	  MOV	A,R3
; 		RLC	A
	  RLC	A
; 		MOV	R3,A
	  MOV	R3,A
; 		MOV	A,R2
	  MOV	A,R2
; 		RLC	A
	  RLC	A
; 		MOV	R2,A
	  MOV	R2,A
; 		JC	F4Bin2BCDLP3
	  JC	F4Bin2BCDLP3
; 	        DJNZ	R1,F4Bin2BCDLP2
	  DJNZ	R1,F4Bin2BCDLP2
; 	F4Bin2BCDLP4:
	  F4Bin2BCDLP4:
; 		RET
	  RET
; 		
	  
; 	F4Bin2BCDLP3:
	  F4Bin2BCDLP3:
; 		MOV	A,#1
	  MOV	A,#1
; 		MOV	@R0,A
	  MOV	@R0,A
; 		
	  
; 		MOV	A,R1
	  MOV	A,R1
; 		CLR	C
	  CLR	C
; 		SUBB	A,#1
	  SUBB	A,#1
; 		JZ	F4Bin2BCDLP4
	  JZ	F4Bin2BCDLP4
; 		
	  
; 		MOV	R1,A
	  MOV	R1,A
; 			
	  
; 	F4Bin2BCDLP1:
	  F4Bin2BCDLP1:
; 		MOV	A,R5
	  MOV	A,R5
; 		RLC	A
	  RLC	A
; 		MOV	R5,A
	  MOV	R5,A
; 		MOV	A,R4
	  MOV	A,R4
; 		RLC	A
	  RLC	A
; 		MOV	R4,A
	  MOV	R4,A
; 		MOV	A,R3
	  MOV	A,R3
; 		RLC	A
	  RLC	A
; 		MOV	R3,A
	  MOV	R3,A
; 		MOV	A,R2
	  MOV	A,R2
; 		RLC	A
	  RLC	A
; 		MOV	R2,A
	  MOV	R2,A
; 		
	  
; 		MOV	A,@R0
	  MOV	A,@R0
; 		ADDC	A,ACC
	  ADDC	A,ACC
; 		DA	A
	  DA	A
; 		MOV	@R0,A
	  MOV	@R0,A
; 
	  
; 		DEC	R0
	  DEC	R0
; 		MOV	A,@R0
	  MOV	A,@R0
; 		ADDC	A,ACC
	  ADDC	A,ACC
; 		DA	A
	  DA	A
; 		MOV	@R0,A
	  MOV	@R0,A
; 
	  
; 		DEC	R0
	  DEC	R0
; 		MOV	A,@R0
	  MOV	A,@R0
; 		ADDC	A,ACC
	  ADDC	A,ACC
; 		DA	A
	  DA	A
; 		MOV	@R0,A
	  MOV	@R0,A
; 
	  
; 		DEC	R0
	  DEC	R0
; 		MOV	A,@R0
	  MOV	A,@R0
; 		ADDC	A,ACC
	  ADDC	A,ACC
; 		DA	A
	  DA	A
; 		MOV	@R0,A
	  MOV	@R0,A
; 
	  
; 		DEC	R0
	  DEC	R0
; 		MOV	A,@R0
	  MOV	A,@R0
; 		ADDC	A,ACC
	  ADDC	A,ACC
; 		DA	A
	  DA	A
; 		MOV	@R0,A
	  MOV	@R0,A
; 				
	  
; 		MOV	A,R7
	  MOV	A,R7
; 		MOV	R0,A
	  MOV	R0,A
; 
	  
; 	    DJNZ	R1,F4Bin2BCDLP1
	  DJNZ	R1,F4Bin2BCDLP1
; 	        		
	  
; 	#pragma endasm
; }
			; SOURCE LINE # 124
	RET  	
; END OF LongToBcd

; //------------------------------------------------------------------------------------
; void WordToBcd(void)

	RSEG  ?PR?WordToBcd?BIN2BCD
WordToBcd:
			; SOURCE LINE # 126
; {
			; SOURCE LINE # 127
; 
; 	#pragma asm
;                  MOV   A,20H
	  MOV   A,20H
; 		 		 MOV   R7,A
	  MOV   R7,A
; 		 		 MOV   A,21H
	  MOV   A,21H
; 		 		 MOV   R5,A
	  MOV   R5,A
;            	 MOV   A, R7
	  MOV   A, R7
;            	 MOV   R0,A
	  MOV   R0,A
;            	 MOV   A,R5
	  MOV   A,R5
;            	 MOV   R1,A
	  MOV   R1,A
;                  MOV   A,@R0
	  MOV   A,@R0
;                  MOV   R6,A
	  MOV   R6,A
;                  INC   R0
	  INC   R0
;                  MOV   A,@R0
	  MOV   A,@R0
;                  MOV   R7,A
	  MOV   R7,A
;                  CLR   A            
	  CLR   A            
;                  MOV   R3,A
	  MOV   R3,A
;                  MOV   R4,A
	  MOV   R4,A
;                  MOV   R5,A
	  MOV   R5,A
;                  MOV   R2,#10H
	  MOV   R2,#10H
;         HBCD20:  MOV   A,R7
	  HBCD20:  MOV   A,R7
;                	 RLC   A
	  RLC   A
;                  MOV   R7,A
	  MOV   R7,A
;                  MOV   A,R6
	  MOV   A,R6
;                  RLC   A
	  RLC   A
;                  MOV   R6,A
	  MOV   R6,A
;                  MOV   A,R5
	  MOV   A,R5
;                  ADDC  A,R5
	  ADDC  A,R5
;                  DA    A
	  DA    A
;                  MOV   R5,A
	  MOV   R5,A
;                  MOV   A,R4
	  MOV   A,R4
;                  ADDC  A,R4
	  ADDC  A,R4
;                  DA    A
	  DA    A
;                  MOV   R4,A
	  MOV   R4,A
;                  MOV   A,R3
	  MOV   A,R3
;                  ADDC  A,R3
	  ADDC  A,R3
;                  DA    A
	  DA    A
;                  MOV   R3,A
	  MOV   R3,A
;                  DJNZ  R2,HBCD20
	  DJNZ  R2,HBCD20
;                  MOV   A,R3
	  MOV   A,R3
;                  MOV   @R1,A
	  MOV   @R1,A
;                  INC   R1
	  INC   R1
;                  MOV   A,R4
	  MOV   A,R4
;                  MOV   @R1,A
	  MOV   @R1,A
;                  INC   R1
	  INC   R1
;                  MOV   A,R5
	  MOV   A,R5
;                  MOV   @R1,A
	  MOV   @R1,A
;       #pragma endasm
; }
			; SOURCE LINE # 176
	RET  	
; END OF WordToBcd

; /*************************** The End ********************************************/ 
; //------------------------------------------------------------------------------------
; void KeilWordToBcd(unsigned char idata *pWord,unsigned char idata *pBcd)

	RSEG  ?PR?_KeilWordToBcd?BIN2BCD
_KeilWordToBcd:
	USING	0
;---- Variable 'pWord?240' assigned to Register 'R7' ----
;---- Variable 'pBcd?241' assigned to Register 'R5' ----
			; SOURCE LINE # 179
; {
			; SOURCE LINE # 180
; 	AsmParam1=pWord;
			; SOURCE LINE # 181
	MOV  	AsmParam1,R7
; 	AsmParam2=pBcd;
			; SOURCE LINE # 182
	MOV  	R7,AR5
	MOV  	AsmParam2,R7
; 	
; 	WordToBcd();
			; SOURCE LINE # 184
	LJMP 	WordToBcd
; }
			; SOURCE LINE # 185
; END OF _KeilWordToBcd

; //-------------------------------------------------------------------------------------
; void KeilLongToBcd(unsigned char idata *pLong,unsigned char idata *pBcd)

	RSEG  ?PR?_KeilLongToBcd?BIN2BCD
_KeilLongToBcd:
	USING	0
;---- Variable 'pLong?342' assigned to Register 'R7' ----
;---- Variable 'pBcd?343' assigned to Register 'R5' ----
			; SOURCE LINE # 187
; {
			; SOURCE LINE # 188
; 	AsmParam1=pLong;
			; SOURCE LINE # 189
	MOV  	AsmParam1,R7
; 	AsmParam2=pBcd;
			; SOURCE LINE # 190
	MOV  	R7,AR5
	MOV  	AsmParam2,R7
; 
; 	LongToBcd();
			; SOURCE LINE # 192
	LJMP 	LongToBcd
; }
			; SOURCE LINE # 193
; END OF _KeilLongToBcd

	END

⌨️ 快捷键说明

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