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

📄 bin2bcd.lst

📁 DDS数字信号发生器,采用AD9835DDS 专用芯片 输出范围1K--10MHZ 采用X25045作看门狗及数据存储器
💻 LST
字号:
C51 COMPILER V6.02  BIN2BCD                                                                09/11/2005 06:36:51 PAGE 1   


C51 COMPILER V6.02, COMPILATION OF MODULE BIN2BCD
OBJECT MODULE PLACED IN .\Bin2BCD.OBJ
COMPILER INVOKED BY: d:\Keil\C51\BIN\C51.EXE .\Bin2BCD.c BROWSE DEBUG OBJECTEXTEND SRC(.\Bin2BCD.SRC) 

stmt level    source

   1          /*************************************************************************************/
   2          unsigned char AsmParam1 _at_ 0x20;
   3          unsigned char AsmParam2 _at_ 0x21;
   4          unsigned char AsmParam3 _at_ 0x22;
   5          //------------------------------------------------------------------------------------
   6          void  LongToBcd(void)
   7          {
   8   1      	#pragma asm
   9   1      		MOV A,20H   ; 
  10   1              	MOV R7,A
  11   1              	MOV A,21H   ;
  12   1              	MOV R5,A
  13   1      		MOV	A,R7
  14   1      		MOV	R1,A	;LongData ADDRESS:R1(Hsb)
  15   1      
  16   1      		MOV	A,R5
  17   1      		MOV	R0,A	;LongData ADDRESS:R0(Hsb)
  18   1      
  19   1      		MOV	A,@R1	;LongData:H R2 R3 R4 R5 L
  20   1      		MOV	R2,A	
  21   1      		INC	R1
  22   1      		MOV	A,@R1
  23   1      		MOV	R3,A	
  24   1      		INC	R1
  25   1      		MOV	A,@R1
  26   1      		MOV	R4,A	
  27   1      		INC	R1
  28   1      		MOV	A,@R1
  29   1      		MOV	R5,A
  30   1      		
  31   1      		CLR	A	;CLEAR BCD_Data
  32   1      		MOV	@R0,A		
  33   1      		INC	R0
  34   1      		MOV	@R0,A		
  35   1      		INC	R0
  36   1      		MOV	@R0,A		
  37   1      		INC	R0
  38   1      		MOV	@R0,A		
  39   1      		INC	R0
  40   1      		MOV	@R0,A	;BCD_Data ADDRESS:R0 OR R7(Lsb)
  41   1      		MOV	A,R0
  42   1      		MOV	R7,A	
  43   1      
  44   1      		MOV	R1,#32		;R2:SHIFT COUNT
  45   1      		
  46   1      	F4Bin2BCDLP2:
  47   1      		MOV	A,R5
  48   1      		RLC	A
  49   1      		MOV	R5,A
  50   1      		MOV	A,R4
  51   1      		RLC	A
  52   1      		MOV	R4,A
  53   1      		MOV	A,R3
  54   1      		RLC	A
  55   1      		MOV	R3,A
C51 COMPILER V6.02  BIN2BCD                                                                09/11/2005 06:36:51 PAGE 2   

  56   1      		MOV	A,R2
  57   1      		RLC	A
  58   1      		MOV	R2,A
  59   1      		JC	F4Bin2BCDLP3
  60   1      	        DJNZ	R1,F4Bin2BCDLP2
  61   1      	F4Bin2BCDLP4:
  62   1      		RET
  63   1      		
  64   1      	F4Bin2BCDLP3:
  65   1      		MOV	A,#1
  66   1      		MOV	@R0,A
  67   1      		
  68   1      		MOV	A,R1
  69   1      		CLR	C
  70   1      		SUBB	A,#1
  71   1      		JZ	F4Bin2BCDLP4
  72   1      		
  73   1      		MOV	R1,A
  74   1      			
  75   1      	F4Bin2BCDLP1:
  76   1      		MOV	A,R5
  77   1      		RLC	A
  78   1      		MOV	R5,A
  79   1      		MOV	A,R4
  80   1      		RLC	A
  81   1      		MOV	R4,A
  82   1      		MOV	A,R3
  83   1      		RLC	A
  84   1      		MOV	R3,A
  85   1      		MOV	A,R2
  86   1      		RLC	A
  87   1      		MOV	R2,A
  88   1      		
  89   1      		MOV	A,@R0
  90   1      		ADDC	A,ACC
  91   1      		DA	A
  92   1      		MOV	@R0,A
  93   1      
  94   1      		DEC	R0
  95   1      		MOV	A,@R0
  96   1      		ADDC	A,ACC
  97   1      		DA	A
  98   1      		MOV	@R0,A
  99   1      
 100   1      		DEC	R0
 101   1      		MOV	A,@R0
 102   1      		ADDC	A,ACC
 103   1      		DA	A
 104   1      		MOV	@R0,A
 105   1      
 106   1      		DEC	R0
 107   1      		MOV	A,@R0
 108   1      		ADDC	A,ACC
 109   1      		DA	A
 110   1      		MOV	@R0,A
 111   1      
 112   1      		DEC	R0
 113   1      		MOV	A,@R0
 114   1      		ADDC	A,ACC
 115   1      		DA	A
 116   1      		MOV	@R0,A
 117   1      				
C51 COMPILER V6.02  BIN2BCD                                                                09/11/2005 06:36:51 PAGE 3   

 118   1      		MOV	A,R7
 119   1      		MOV	R0,A
 120   1      
 121   1      	    DJNZ	R1,F4Bin2BCDLP1
 122   1      	        		
 123   1      	#pragma endasm
 124   1      }
 125          //------------------------------------------------------------------------------------
 126          void WordToBcd(void)
 127          {
 128   1      
 129   1      	#pragma asm
 130   1                       MOV   A,20H
 131   1      		 		 MOV   R7,A
 132   1      		 		 MOV   A,21H
 133   1      		 		 MOV   R5,A
 134   1                 	 MOV   A, R7
 135   1                 	 MOV   R0,A
 136   1                 	 MOV   A,R5
 137   1                 	 MOV   R1,A
 138   1                       MOV   A,@R0
 139   1                       MOV   R6,A
 140   1                       INC   R0
 141   1                       MOV   A,@R0
 142   1                       MOV   R7,A
 143   1                       CLR   A            
 144   1                       MOV   R3,A
 145   1                       MOV   R4,A
 146   1                       MOV   R5,A
 147   1                       MOV   R2,#10H
 148   1              HBCD20:  MOV   A,R7
 149   1                     	 RLC   A
 150   1                       MOV   R7,A
 151   1                       MOV   A,R6
 152   1                       RLC   A
 153   1                       MOV   R6,A
 154   1                       MOV   A,R5
 155   1                       ADDC  A,R5
 156   1                       DA    A
 157   1                       MOV   R5,A
 158   1                       MOV   A,R4
 159   1                       ADDC  A,R4
 160   1                       DA    A
 161   1                       MOV   R4,A
 162   1                       MOV   A,R3
 163   1                       ADDC  A,R3
 164   1                       DA    A
 165   1                       MOV   R3,A
 166   1                       DJNZ  R2,HBCD20
 167   1                       MOV   A,R3
 168   1                       MOV   @R1,A
 169   1                       INC   R1
 170   1                       MOV   A,R4
 171   1                       MOV   @R1,A
 172   1                       INC   R1
 173   1                       MOV   A,R5
 174   1                       MOV   @R1,A
 175   1            #pragma endasm
 176   1      }
 177          /*************************** The End ********************************************/ 
 178          //------------------------------------------------------------------------------------
 179          void KeilWordToBcd(unsigned char idata *pWord,unsigned char idata *pBcd)
C51 COMPILER V6.02  BIN2BCD                                                                09/11/2005 06:36:51 PAGE 4   

 180          {
 181   1      	AsmParam1=pWord;
 182   1      	AsmParam2=pBcd;
 183   1      	
 184   1      	WordToBcd();
 185   1      }
 186          //-------------------------------------------------------------------------------------
 187          void KeilLongToBcd(unsigned char idata *pLong,unsigned char idata *pBcd)
 188          {
 189   1      	AsmParam1=pLong;
 190   1      	AsmParam2=pBcd;
 191   1      
 192   1      	LongToBcd();
 193   1      }
 194          


MODULE INFORMATION:   STATIC OVERLAYABLE
   CODE SIZE        =    497    ----
   CONSTANT SIZE    =   ----    ----
   XDATA SIZE       =   ----    ----
   PDATA SIZE       =   ----    ----
   DATA SIZE        =   ----    ----
   IDATA SIZE       =   ----    ----
   BIT SIZE         =   ----    ----
END OF MODULE INFORMATION.


C51 COMPILATION COMPLETE.  0 WARNING(S),  0 ERROR(S)

⌨️ 快捷键说明

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