📄 bcd.lst
字号:
A51 MACRO ASSEMBLER BCD 12/09/2008 17:07:28 PAGE 1
MACRO ASSEMBLER A51 V7.04a
OBJECT MODULE PLACED IN BCD.OBJ
ASSEMBLER INVOKED BY: C:\SiLabs\MCU\IDEfiles\C51\BIN\a51.exe BCD.ASM XR GEN DB EP NOMOD51
LOC OBJ LINE SOURCE
1 ;---------------------------------------------------------------------
2 ; Entree: Acc contient un nombre BCD.
3 ; Sortie: L'equivalent ASCII dans ACC(poids fort) et B (poids faible).
4 ; Les registres utilises,autres que ACC et B, sont sauvegardes.
5 ;---------------------------------------------------------------------
6 ;$include (c8051f000.inc) ;include register definition file.
+1 7 ;-----------------------------------------------------------------------------
+1 8 ; Copyright (C) 2001 CYGNAL INTEGRATED PRODUCTS, INC.
+1 9 ; All rights reserved.
+1 10 ;
+1 11 ;
+1 12 ; FILE NAME : C8051F000.INC
+1 13 ; TARGET MCUs : C8051F000, 'F001, 'F002, 'F010, 'F011, 'F012, 'F005, 'F006,
+1 14 ; 'F007, 'F015, 'F016 and 'F017
+1 15 ; DESCRIPTION : Register/bit definitions for the C8051F0xx product family.
+1 16 ;
+1 17 ; REVISION 1.9
+1 18 ;
+1 19 ;-----------------------------------------------------------------------------
+1 20 ;REGISTER DEFINITIONS
+1 21 ;
0080 +1 22 P0 DATA 080H ; PORT 0
0081 +1 23 SP DATA 081H ; STACK POINTER
0082 +1 24 DPL DATA 082H ; DATA POINTER - LOW BYTE
0083 +1 25 DPH DATA 083H ; DATA POINTER - HIGH BYTE
0087 +1 26 PCON DATA 087H ; POWER CONTROL
0088 +1 27 TCON DATA 088H ; TIMER CONTROL
0089 +1 28 TMOD DATA 089H ; TIMER MODE
008A +1 29 TL0 DATA 08AH ; TIMER 0 - LOW BYTE
008B +1 30 TL1 DATA 08BH ; TIMER 1 - LOW BYTE
008C +1 31 TH0 DATA 08CH ; TIMER 0 - HIGH BYTE
008D +1 32 TH1 DATA 08DH ; TIMER 1 - HIGH BYTE
008E +1 33 CKCON DATA 08EH ; CLOCK CONTROL
008F +1 34 PSCTL DATA 08FH ; PROGRAM STORE R/W CONTROL
0090 +1 35 P1 DATA 090H ; PORT 1
0091 +1 36 TMR3CN DATA 091H ; TIMER 3 CONTROL
0092 +1 37 TMR3RLL DATA 092H ; TIMER 3 RELOAD REGISTER - LOW BYTE
0093 +1 38 TMR3RLH DATA 093H ; TIMER 3 RELOAD REGISTER - HIGH BYTE
0094 +1 39 TMR3L DATA 094H ; TIMER 3 - LOW BYTE
0095 +1 40 TMR3H DATA 095H ; TIMER 3 - HIGH BYTE
0098 +1 41 SCON DATA 098H ; SERIAL PORT CONTROL
0099 +1 42 SBUF DATA 099H ; SERIAL PORT BUFFER
009A +1 43 SPI0CFG DATA 09AH ; SERIAL PERIPHERAL INTERFACE 0 CONFIGURATION
009B +1 44 SPI0DAT DATA 09BH ; SERIAL PERIPHERAL INTERFACE 0 DATA
009D +1 45 SPI0CKR DATA 09DH ; SERIAL PERIPHERAL INTERFACE 0 CLOCK RATE CONTROL
009E +1 46 CPT0CN DATA 09EH ; COMPARATOR 0 CONTROL
009F +1 47 CPT1CN DATA 09FH ; COMPARATOR 1 CONTROL
00A0 +1 48 P2 DATA 0A0H ; PORT 2
00A4 +1 49 PRT0CF DATA 0A4H ; PORT 0 CONFIGURATION
00A5 +1 50 PRT1CF DATA 0A5H ; PORT 1 CONFIGURATION
00A6 +1 51 PRT2CF DATA 0A6H ; PORT 2 CONFIGURATION
00A7 +1 52 PRT3CF DATA 0A7H ; PORT 3 CONFIGURATION
00A8 +1 53 IE DATA 0A8H ; INTERRUPT ENABLE
00AD +1 54 PRT1IF DATA 0ADH ; PORT 1 EXTERNAL INTERRUPT FLAGS
00AF +1 55 EMI0CN DATA 0AFH ; EXTERNAL MEMORY INTERFACE CONTROL
00B0 +1 56 P3 DATA 0B0H ; PORT 3
00B1 +1 57 OSCXCN DATA 0B1H ; EXTERNAL OSCILLATOR CONTROL
00B2 +1 58 OSCICN DATA 0B2H ; INTERNAL OSCILLATOR CONTROL
A51 MACRO ASSEMBLER BCD 12/09/2008 17:07:28 PAGE 2
00B6 +1 59 FLSCL DATA 0B6H ; FLASH MEMORY TIMING PRESCALER
00B7 +1 60 FLACL DATA 0B7H ; FLASH ACESS LIMIT
00B8 +1 61 IP DATA 0B8H ; INTERRUPT PRIORITY
00BA +1 62 AMX0CF DATA 0BAH ; ADC 0 MUX CONFIGURATION
00BB +1 63 AMX0SL DATA 0BBH ; ADC 0 MUX CHANNEL SELECTION
00BC +1 64 ADC0CF DATA 0BCH ; ADC 0 CONFIGURATION
00BE +1 65 ADC0L DATA 0BEH ; ADC 0 DATA - LOW BYTE
00BF +1 66 ADC0H DATA 0BFH ; ADC 0 DATA - HIGH BYTE
00C0 +1 67 SMB0CN DATA 0C0H ; SMBUS 0 CONTROL
00C1 +1 68 SMB0STA DATA 0C1H ; SMBUS 0 STATUS
00C2 +1 69 SMB0DAT DATA 0C2H ; SMBUS 0 DATA
00C3 +1 70 SMB0ADR DATA 0C3H ; SMBUS 0 SLAVE ADDRESS
00C4 +1 71 ADC0GTL DATA 0C4H ; ADC 0 GREATER-THAN REGISTER - LOW BYTE
00C5 +1 72 ADC0GTH DATA 0C5H ; ADC 0 GREATER-THAN REGISTER - HIGH BYTE
00C6 +1 73 ADC0LTL DATA 0C6H ; ADC 0 LESS-THAN REGISTER - LOW BYTE
00C7 +1 74 ADC0LTH DATA 0C7H ; ADC 0 LESS-THAN REGISTER - HIGH BYTE
00C8 +1 75 T2CON DATA 0C8H ; TIMER 2 CONTROL
00CA +1 76 RCAP2L DATA 0CAH ; TIMER 2 CAPTURE REGISTER - LOW BYTE
00CB +1 77 RCAP2H DATA 0CBH ; TIMER 2 CAPTURE REGISTER - HIGH BYTE
00CC +1 78 TL2 DATA 0CCH ; TIMER 2 - LOW BYTE
00CD +1 79 TH2 DATA 0CDH ; TIMER 2 - HIGH BYTE
00CF +1 80 SMB0CR DATA 0CFH ; SMBUS 0 CLOCK RATE
00D0 +1 81 PSW DATA 0D0H ; PROGRAM STATUS WORD
00D1 +1 82 REF0CN DATA 0D1H ; VOLTAGE REFERENCE 0 CONTROL
00D2 +1 83 DAC0L DATA 0D2H ; DAC 0 REGISTER - LOW BYTE
00D3 +1 84 DAC0H DATA 0D3H ; DAC 0 REGISTER - HIGH BYTE
00D4 +1 85 DAC0CN DATA 0D4H ; DAC 0 CONTROL
00D5 +1 86 DAC1L DATA 0D5H ; DAC 1 REGISTER - LOW BYTE
00D6 +1 87 DAC1H DATA 0D6H ; DAC 1 REGISTER - HIGH BYTE
00D7 +1 88 DAC1CN DATA 0D7H ; DAC 1 CONTROL
00D8 +1 89 PCA0CN DATA 0D8H ; PCA 0 COUNTER CONTROL
00D9 +1 90 PCA0MD DATA 0D9H ; PCA 0 COUNTER MODE
00DA +1 91 PCA0CPM0 DATA 0DAH ; CONTROL REGISTER FOR PCA 0 MODULE 0
00DB +1 92 PCA0CPM1 DATA 0DBH ; CONTROL REGISTER FOR PCA 0 MODULE 1
00DC +1 93 PCA0CPM2 DATA 0DCH ; CONTROL REGISTER FOR PCA 0 MODULE 2
00DD +1 94 PCA0CPM3 DATA 0DDH ; CONTROL REGISTER FOR PCA 0 MODULE 3
00DE +1 95 PCA0CPM4 DATA 0DEH ; CONTROL REGISTER FOR PCA 0 MODULE 4
00E0 +1 96 ACC DATA 0E0H ; ACCUMULATOR
00E1 +1 97 XBR0 DATA 0E1H ; DIGITAL CROSSBAR CONFIGURATION REGISTER 0
00E2 +1 98 XBR1 DATA 0E2H ; DIGITAL CROSSBAR CONFIGURATION REGISTER 1
00E3 +1 99 XBR2 DATA 0E3H ; DIGITAL CROSSBAR CONFIGURATION REGISTER 2
00E6 +1 100 EIE1 DATA 0E6H ; EXTERNAL INTERRUPT ENABLE 1
00E7 +1 101 EIE2 DATA 0E7H ; EXTERNAL INTERRUPT ENABLE 2
00E8 +1 102 ADC0CN DATA 0E8H ; ADC 0 CONTROL
00E9 +1 103 PCA0L DATA 0E9H ; PCA 0 TIMER - LOW BYTE
00EA +1 104 PCA0CPL0 DATA 0EAH ; CAPTURE/COMPARE REGISTER FOR PCA 0 MODULE 0 - LOW BYTE
00EB +1 105 PCA0CPL1 DATA 0EBH ; CAPTURE/COMPARE REGISTER FOR PCA 0 MODULE 1 - LOW BYTE
00EC +1 106 PCA0CPL2 DATA 0ECH ; CAPTURE/COMPARE REGISTER FOR PCA 0 MODULE 2 - LOW BYTE
00ED +1 107 PCA0CPL3 DATA 0EDH ; CAPTURE/COMPARE REGISTER FOR PCA 0 MODULE 3 - LOW BYTE
00EE +1 108 PCA0CPL4 DATA 0EEH ; CAPTURE/COMPARE REGISTER FOR PCA 0 MODULE 4 - LOW BYTE
00EF +1 109 RSTSRC DATA 0EFH ; RESET SOURCE
00F0 +1 110 B DATA 0F0H ; B REGISTER
00F6 +1 111 EIP1 DATA 0F6H ; EXTERNAL INTERRUPT PRIORITY REGISTER 1
00F7 +1 112 EIP2 DATA 0F7H ; EXTERNAL INTERRUPT PRIORITY REGISTER 2
00F8 +1 113 SPI0CN DATA 0F8H ; SERIAL PERIPHERAL INTERFACE 0 CONTROL
00F9 +1 114 PCA0H DATA 0F9H ; PCA 0 TIMER - HIGH BYTE
00FA +1 115 PCA0CPH0 DATA 0FAH ; CAPTURE/COMPARE REGISTER FOR PCA 0 MODULE 0 - HIGH BYTE
00FB +1 116 PCA0CPH1 DATA 0FBH ; CAPTURE/COMPARE REGISTER FOR PCA 0 MODULE 1 - HIGH BYTE
00FC +1 117 PCA0CPH2 DATA 0FCH ; CAPTURE/COMPARE REGISTER FOR PCA 0 MODULE 2 - HIGH BYTE
00FD +1 118 PCA0CPH3 DATA 0FDH ; CAPTURE/COMPARE REGISTER FOR PCA 0 MODULE 3 - HIGH BYTE
00FE +1 119 PCA0CPH4 DATA 0FEH ; CAPTURE/COMPARE REGISTER FOR PCA 0 MODULE 4 - HIGH BYTE
00FF +1 120 WDTCN DATA 0FFH ; WATCHDOG TIMER CONTROL
+1 121 ;
+1 122 ;------------------------------------------------------------------------------
+1 123 ;BIT DEFINITIONS
+1 124 ;
A51 MACRO ASSEMBLER BCD 12/09/2008 17:07:28 PAGE 3
+1 125 ; TCON 88H
0088 +1 126 IT0 BIT TCON.0 ; EXT. INTERRUPT 0 TYPE
0089 +1 127 IE0 BIT TCON.1 ; EXT. INTERRUPT 0 EDGE FLAG
008A +1 128 IT1 BIT TCON.2 ; EXT. INTERRUPT 1 TYPE
008B +1 129 IE1 BIT TCON.3 ; EXT. INTERRUPT 1 EDGE FLAG
008C +1 130 TR0 BIT TCON.4 ; TIMER 0 ON/OFF CONTROL
008D +1 131 TF0 BIT TCON.5 ; TIMER 0 OVERFLOW FLAG
008E +1 132 TR1 BIT TCON.6 ; TIMER 1 ON/OFF CONTROL
008F +1 133 TF1 BIT TCON.7 ; TIMER 1 OVERFLOW FLAG
+1 134 ;
+1 135 ; SCON 98H
0098 +1 136 RI BIT SCON.0 ; RECEIVE INTERRUPT FLAG
0099 +1 137 TI BIT SCON.1 ; TRANSMIT INTERRUPT FLAG
009A +1 138 RB8 BIT SCON.2 ; RECEIVE BIT 8
009B +1 139 TB8 BIT SCON.3 ; TRANSMIT BIT 8
009C +1 140 REN BIT SCON.4 ; RECEIVE ENABLE
009D +1 141 SM2 BIT SCON.5 ; MULTIPROCESSOR COMMUNICATION ENABLE
009E +1 142 SM1 BIT SCON.6 ; SERIAL MODE CONTROL BIT 1
009F +1 143 SM0 BIT SCON.7 ; SERIAL MODE CONTROL BIT 0
+1 144 ;
+1 145 ; IE A8H
00A8 +1 146 EX0 BIT IE.0 ; EXTERNAL INTERRUPT 0 ENABLE
00A9 +1 147 ET0 BIT IE.1 ; TIMER 0 INTERRUPT ENABLE
00AA +1 148 EX1 BIT IE.2 ; EXTERNAL INTERRUPT 1 ENABLE
00AB +1 149 ET1 BIT IE.3 ; TIMER 1 INTERRUPT ENABLE
00AC +1 150 ES BIT IE.4 ; SERIAL PORT INTERRUPT ENABLE
00AD +1 151 ET2 BIT IE.5 ; TIMER 2 INTERRUPT ENABLE
00AF +1 152 EA BIT IE.7 ; GLOBAL INTERRUPT ENABLE
+1 153 ;
+1 154 ; IP B8H
00B8 +1 155 PX0 BIT IP.0 ; EXTERNAL INTERRUPT 0 PRIORITY
00B9 +1 156 PT0 BIT IP.1 ; TIMER 0 PRIORITY
00BA +1 157 PX1 BIT IP.2 ; EXTERNAL INTERRUPT 1 PRIORITY
00BB +1 158 PT1 BIT IP.3 ; TIMER 1 PRIORITY
00BC +1 159 PS BIT IP.4 ; SERIAL PORT PRIORITY
00BD +1 160 PT2 BIT IP.5 ; TIMER 2 PRIORITY
+1 161 ;
+1 162 ; SMB0CN C0H
00C0 +1 163 SMBTOE BIT SMB0CN.0 ; SMBUS 0 TIMEOUT ENABLE
00C1 +1 164 SMBFTE BIT SMB0CN.1 ; SMBUS 0 FREE TIMER ENABLE
00C2 +1 165 AA BIT SMB0CN.2 ; SMBUS 0 ASSERT/ACKNOWLEDGE FLAG
00C3 +1 166 SI BIT SMB0CN.3 ; SMBUS 0 INTERRUPT PENDING FLAG
00C4 +1 167 STO BIT SMB0CN.4 ; SMBUS 0 STOP FLAG
00C5 +1 168 STA BIT SMB0CN.5 ; SMBUS 0 START FLAG
00C6 +1 169 ENSMB BIT SMB0CN.6 ; SMBUS 0 ENABLE
+1 170 ;
+1 171 ; T2CON C8H
00C8 +1 172 CPRL2 BIT T2CON.0 ; CAPTURE OR RELOAD SELECT
00C9 +1 173 CT2 BIT T2CON.1 ; TIMER OR COUNTER SELECT
00CA +1 174 TR2 BIT T2CON.2 ; TIMER 2 ON/OFF CONTROL
00CB +1 175 EXEN2 BIT T2CON.3 ; TIMER 2 EXTERNAL ENABLE FLAG
00CC +1 176 TCLK BIT T2CON.4 ; TRANSMIT CLOCK FLAG
00CD +1 177 RCLK BIT T2CON.5 ; RECEIVE CLOCK FLAG
00CE +1 178 EXF2 BIT T2CON.6 ; EXTERNAL FLAG
00CF +1 179 TF2 BIT T2CON.7 ; TIMER 2 OVERFLOW FLAG
+1 180 ;
+1 181 ; PSW D0H
00D0 +1 182 P BIT PSW.0 ; ACCUMULATOR PARITY FLAG
00D1 +1 183 F1 BIT PSW.1 ; USER FLAG 1
00D2 +1 184 OV BIT PSW.2 ; OVERFLOW FLAG
00D3 +1 185 RS0 BIT PSW.3 ; REGISTER BANK SELECT 0
00D4 +1 186 RS1 BIT PSW.4 ; REGISTER BANK SELECT 1
00D5 +1 187 F0 BIT PSW.5 ; USER FLAG 0
00D6 +1 188 AC BIT PSW.6 ; AUXILIARY CARRY FLAG
00D7 +1 189 CY BIT PSW.7 ; CARRY FLAG
+1 190 ;
A51 MACRO ASSEMBLER BCD 12/09/2008 17:07:28 PAGE 4
+1 191 ; PCA0CN D8H
00D8 +1 192 CCF0 BIT PCA0CN.0 ; PCA 0 MODULE 0 INTERRUPT FLAG
00D9 +1 193 CCF1 BIT PCA0CN.1 ; PCA 0 MODULE 1 INTERRUPT FLAG
00DA +1 194 CCF2 BIT PCA0CN.2 ; PCA 0 MODULE 2 INTERRUPT FLAG
00DB +1 195 CCF3 BIT PCA0CN.3 ; PCA 0 MODULE 3 INTERRUPT FLAG
00DC +1 196 CCF4 BIT PCA0CN.4 ; PCA 0 MODULE 4 INTERRUPT FLAG
00DE +1 197 CR BIT PCA0CN.6 ; PCA 0 COUNTER RUN CONTROL BIT
00DF +1 198 CF BIT PCA0CN.7 ; PCA 0 COUNTER OVERFLOW FLAG
+1 199 ;
+1 200 ; ADC0CN E8H
00E8 +1 201 ADLJST BIT ADC0CN.0 ; ADC 0 RIGHT JUSTIFY DATA BIT
00E9 +1 202 ADWINT BIT ADC0CN.1 ; ADC 0 WINDOW COMPARE INTERRUPT FLAG
00EA +1 203 ADSTM0 BIT ADC0CN.2 ; ADC 0 START OF CONVERSION MODE BIT 0
00EB +1 204 ADSTM1 BIT ADC0CN.3 ; ADC 0 START OF CONVERSION MODE BIT 1
00EC +1 205 ADBUSY BIT ADC0CN.4 ; ADC 0 BUSY FLAG
00ED +1 206 ADCINT BIT ADC0CN.5 ; ADC 0 CONVERISION COMPLETE INTERRUPT FLAG
00EE +1 207 ADCTM BIT ADC0CN.6 ; ADC 0 TRACK MODE
00EF +1 208 ADCEN BIT ADC0CN.7 ; ADC 0 ENABLE
+1 209 ;
+1 210 ; SPI0CN F8H
00F8 +1 211 SPIEN BIT SPI0CN.0 ; SPI 0 SPI ENABLE
00F9 +1 212 MSTEN BIT SPI0CN.1 ; SPI 0 MASTER ENABLE
00FA +1 213 SLVSEL BIT SPI0CN.2 ; SPI 0 SLAVE SELECT
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -