📄 da0832.lst
字号:
00AA +1 166 EX1 BIT IE.2 ; EXTERNAL INTERRUPT 1 ENABLE
00AB +1 167 ET1 BIT IE.3 ; TIMER 1 INTERRUPT ENABLE
00AC +1 168 ES BIT IE.4 ; SERIAL PORT INTERRUPT ENABLE
00AD +1 169 ET2 BIT IE.5 ; TIMER 2 INTERRUPT ENABLE
00AF +1 170 EA BIT IE.7 ; GLOBAL INTERRUPT ENABLE
+1 171 ;
+1 172 ; IP B8H
00B8 +1 173 PX0 BIT IP.0 ; EXTERNAL INTERRUPT 0 PRIORITY
00B9 +1 174 PT0 BIT IP.1 ; TIMER 0 PRIORITY
00BA +1 175 PX1 BIT IP.2 ; EXTERNAL INTERRUPT 1 PRIORITY
00BB +1 176 PT1 BIT IP.3 ; TIMER 1 PRIORITY
00BC +1 177 PS BIT IP.4 ; SERIAL PORT PRIORITY
00BD +1 178 PT2 BIT IP.5 ; TIMER 2 PRIORITY
+1 179 ;
+1 180 ; SMB0CN C0H
00C0 +1 181 SMBTOE BIT SMB0CN.0 ; SMBUS 0 TIMEOUT ENABLE
00C1 +1 182 SMBFTE BIT SMB0CN.1 ; SMBUS 0 FREE TIMER ENABLE
00C2 +1 183 AA BIT SMB0CN.2 ; SMBUS 0 ASSERT/ACKNOWLEDGE FLAG
00C3 +1 184 SI BIT SMB0CN.3 ; SMBUS 0 INTERRUPT PENDING FLAG
00C4 +1 185 STO BIT SMB0CN.4 ; SMBUS 0 STOP FLAG
00C5 +1 186 STA BIT SMB0CN.5 ; SMBUS 0 START FLAG
00C6 +1 187 ENSMB BIT SMB0CN.6 ; SMBUS 0 ENABLE
+1 188 ;
+1 189 ; T2CON C8H
00C8 +1 190 CPRL2 BIT T2CON.0 ; CAPTURE OR RELOAD SELECT
A51 MACRO ASSEMBLER DA0832 05/30/2005 20:27:46 PAGE 4
00C9 +1 191 CT2 BIT T2CON.1 ; TIMER OR COUNTER SELECT
00CA +1 192 TR2 BIT T2CON.2 ; TIMER 2 ON/OFF CONTROL
00CB +1 193 EXEN2 BIT T2CON.3 ; TIMER 2 EXTERNAL ENABLE FLAG
00CC +1 194 TCLK BIT T2CON.4 ; TRANSMIT CLOCK FLAG
00CD +1 195 RCLK BIT T2CON.5 ; RECEIVE CLOCK FLAG
00CE +1 196 EXF2 BIT T2CON.6 ; EXTERNAL FLAG
00CF +1 197 TF2 BIT T2CON.7 ; TIMER 2 OVERFLOW FLAG
+1 198 ;
+1 199 ; PSW D0H
00D0 +1 200 P BIT PSW.0 ; ACCUMULATOR PARITY FLAG
00D1 +1 201 F1 BIT PSW.1 ; USER FLAG 1
00D2 +1 202 OV BIT PSW.2 ; OVERFLOW FLAG
00D3 +1 203 RS0 BIT PSW.3 ; REGISTER BANK SELECT 0
00D4 +1 204 RS1 BIT PSW.4 ; REGISTER BANK SELECT 1
00D5 +1 205 F0 BIT PSW.5 ; USER FLAG 0
00D6 +1 206 AC BIT PSW.6 ; AUXILIARY CARRY FLAG
00D7 +1 207 CY BIT PSW.7 ; CARRY FLAG
+1 208 ;
+1 209 ; PCA0CN D8H
00D8 +1 210 CCF0 BIT PCA0CN.0 ; PCA 0 MODULE 0 INTERRUPT FLAG
00D9 +1 211 CCF1 BIT PCA0CN.1 ; PCA 0 MODULE 1 INTERRUPT FLAG
00DA +1 212 CCF2 BIT PCA0CN.2 ; PCA 0 MODULE 2 INTERRUPT FLAG
00DB +1 213 CCF3 BIT PCA0CN.3 ; PCA 0 MODULE 3 INTERRUPT FLAG
00DC +1 214 CCF4 BIT PCA0CN.4 ; PCA 0 MODULE 4 INTERRUPT FLAG
00DE +1 215 CR BIT PCA0CN.6 ; PCA 0 COUNTER RUN CONTROL BIT
00DF +1 216 CF BIT PCA0CN.7 ; PCA 0 COUNTER OVERFLOW FLAG
+1 217 ;
+1 218 ; ADC0CN E8H
00E8 +1 219 AD0LJST BIT ADC0CN.0 ; ADC 0 RIGHT JUSTIFY DATA BIT
00E9 +1 220 AD0WINT BIT ADC0CN.1 ; ADC 0 WINDOW COMPARE INTERRUPT FLAG
00EA +1 221 AD0STM0 BIT ADC0CN.2 ; ADC 0 START OF CONVERSION MODE BIT 0
00EB +1 222 AD0STM1 BIT ADC0CN.3 ; ADC 0 START OF CONVERSION MODE BIT 1
00EC +1 223 AD0BUSY BIT ADC0CN.4 ; ADC 0 BUSY FLAG
00ED +1 224 AD0INT BIT ADC0CN.5 ; ADC 0 CONVERISION COMPLETE INTERRUPT FLAG
00EE +1 225 AD0TM BIT ADC0CN.6 ; ADC 0 TRACK MODE
00EF +1 226 AD0EN BIT ADC0CN.7 ; ADC 0 ENABLE
+1 227 ;
+1 228 ; SPI0CN F8H
00F8 +1 229 SPIEN BIT SPI0CN.0 ; SPI 0 SPI ENABLE
00F9 +1 230 MSTEN BIT SPI0CN.1 ; SPI 0 MASTER ENABLE
00FA +1 231 SLVSEL BIT SPI0CN.2 ; SPI 0 SLAVE SELECT
00FB +1 232 TXBSY BIT SPI0CN.3 ; SPI 0 TX BUSY FLAG
00FC +1 233 RXOVRN BIT SPI0CN.4 ; SPI 0 RX OVERRUN FLAG
00FD +1 234 MODF BIT SPI0CN.5 ; SPI 0 MODE FAULT FLAG
00FE +1 235 WCOL BIT SPI0CN.6 ; SPI 0 WRITE COLLISION FLAG
00FF +1 236 SPIF BIT SPI0CN.7 ; SPI 0 INTERRUPT FLAG
237
0000 238 ORG 0000H
0000 2100 239 AJMP START
0100 240 ORG 0100H
0100 241 START :
0100 75FFDF 242 mov WDTCN, #0dfh ; disable watchdog timer 禁止看门狗定时器
0103 75FFAD 243 mov WDTCN, #0adh
0106 75B167 244 mov OSCXCN, #67h ; enable external crystal 外部晶振
245 ; oscillator at 22.1184MHz
246
0109 E4 247 clr A ; wait at least 1ms 延时1ms
010A D5E0FD 248 djnz acc, $ ; wait ~512us
010D D5E0FD 249 djnz acc, $ ; wait ~512us
250 ; orl OSCICN, #08h
251 ; orl OSCXCN, #80h
252
0110 253 PORT_Init:
254 ; mov XBR0, #00h
255 ; mov XBR1, #00h
0110 75E340 256 mov XBR2, #40h
A51 MACRO ASSEMBLER DA0832 05/30/2005 20:27:46 PAGE 5
257
0113 258 EMIF_Init:
0113 75A32F 259 mov EMI0CF, #2fh ; 复用方式,高4端口。
0116 75A165 260 mov EMI0TC, #65h ; 时序控制,timing (7-cycle MOVX)
0119 75B5FF 261 mov P74OUT, #0FFh ; P4-7口推挽输出
262 ; mov P3MDOUT, #00h ; P0口推挽输出
263
264
265
266
011C 901F00 267 MAIN: MOV DPTR,#01f00H ; 置DAC0832的地址
011F 74F0 268 LP: MOV A,#0F0H ; 设定高电平
0121 F0 269 MOVX @DPTR,A ; 启动D/A转换,输出高电平
0122 12012D 270 LCALL DELAY ; 延时显示高电平
0125 7410 271 MOV A,#10H ; 设定低电平
0127 F0 272 MOVX @DPTR,A ; 启动D/A转换,输出低电平
0128 12012D 273 LCALL DELAY ; 延时显示低电平
012B 80F2 274 SJMP LP ; 连续输出方波
275
276
277 ; 延时子程序
012D 278 Delay:
012D 7D02 279 mov r5, #2
012F 7E14 280 A0: mov r6, #20
0131 7F32 281 A1: mov r7, #50
0133 282 DelayLoop:
0133 00 283 NOP
0134 00 284 NOP
0135 DFFC 285 djnz r7, DelayLoop
0137 DEF8 286 djnz r6, A1
0139 DDF4 287 djnz r5, A0
013B 22 288 ret
289
290 END
A51 MACRO ASSEMBLER DA0832 05/30/2005 20:27:46 PAGE 6
XREF SYMBOL TABLE LISTING
---- ------ ----- -------
N A M E T Y P E V A L U E ATTRIBUTES / REFERENCES
A0 . . . . . . . . C ADDR 012FH A 280# 287
A1 . . . . . . . . C ADDR 0131H A 281# 286
AA . . . . . . . . B ADDR 00C0H.2 A 183#
AC . . . . . . . . B ADDR 00D0H.6 A 206#
ACC. . . . . . . . D ADDR 00E0H A 107# 248 249
AD0BUSY. . . . . . B ADDR 00E8H.4 A 223#
AD0EN. . . . . . . B ADDR 00E8H.7 A 226#
AD0INT . . . . . . B ADDR 00E8H.5 A 224#
AD0LJST. . . . . . B ADDR 00E8H.0 A 219#
AD0STM0. . . . . . B ADDR 00E8H.2 A 221#
AD0STM1. . . . . . B ADDR 00E8H.3 A 222#
AD0TM. . . . . . . B ADDR 00E8H.6 A 225#
AD0WINT. . . . . . B ADDR 00E8H.1 A 220#
ADC0CF . . . . . . D ADDR 00BCH A 73#
ADC0CN . . . . . . D ADDR 00E8H A 115# 219 220 221 222 223 224 225 226
ADC0GTH. . . . . . D ADDR 00C5H A 82#
ADC0GTL. . . . . . D ADDR 00C4H A 81#
ADC0H. . . . . . . D ADDR 00BFH A 76#
ADC0L. . . . . . . D ADDR 00BEH A 75#
ADC0LTH. . . . . . D ADDR 00C7H A 84#
ADC0LTL. . . . . . D ADDR 00C6H A 83#
ADC1 . . . . . . . D ADDR 009CH A 44#
ADC1CF . . . . . . D ADDR 00ABH A 58#
ADC1CN . . . . . . D ADDR 00AAH A 57#
AMX0CF . . . . . . D ADDR 00BAH A 71#
AMX0SL . . . . . . D ADDR 00BBH A 72#
AMX1SL . . . . . . D ADDR 00ACH A 59#
B. . . . . . . . . D ADDR 00F0H A 123#
CCF0 . . . . . . . B ADDR 00D8H.0 A 210#
CCF1 . . . . . . . B ADDR 00D8H.1 A 211#
CCF2 . . . . . . . B ADDR 00D8H.2 A 212#
CCF3 . . . . . . . B ADDR 00D8H.3 A 213#
CCF4 . . . . . . . B ADDR 00D8H.4 A 214#
CF . . . . . . . . B ADDR 00D8H.7 A 216#
CKCON. . . . . . . D ADDR 008EH A 31#
CPRL2. . . . . . . B ADDR 00C8H.0 A 190#
CPT0CN . . . . . . D ADDR 009EH A 46#
CPT1CN . . . . . . D ADDR 009FH A 47#
CR . . . . . . . . B ADDR 00D8H.6 A 215#
CT2. . . . . . . . B ADDR 00C8H.1 A 191#
CY . . . . . . . . B ADDR 00D0H.7 A 207#
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -