📄 printerb.lst
字号:
+1 156 ; SCON0 98H
0098 +1 157 RI BIT SCON0.0 ; RECEIVE INTERRUPT FLAG
0099 +1 158 TI BIT SCON0.1 ; TRANSMIT INTERRUPT FLAG
009A +1 159 RB8 BIT SCON0.2 ; RECEIVE BIT 8
009B +1 160 TB8 BIT SCON0.3 ; TRANSMIT BIT 8
009C +1 161 REN BIT SCON0.4 ; RECEIVE ENABLE
009D +1 162 SM2 BIT SCON0.5 ; MULTIPROCESSOR COMMUNICATION ENABLE
009E +1 163 SM1 BIT SCON0.6 ; SERIAL MODE CONTROL BIT 1
009F +1 164 SM0 BIT SCON0.7 ; SERIAL MODE CONTROL BIT 0
+1 165 ;
+1 166 ; IE A8H
00A8 +1 167 EX0 BIT IE.0 ; EXTERNAL INTERRUPT 0 ENABLE
00A9 +1 168 ET0 BIT IE.1 ; TIMER 0 INTERRUPT ENABLE
00AA +1 169 EX1 BIT IE.2 ; EXTERNAL INTERRUPT 1 ENABLE
00AB +1 170 ET1 BIT IE.3 ; TIMER 1 INTERRUPT ENABLE
00AC +1 171 ES BIT IE.4 ; SERIAL PORT INTERRUPT ENABLE
00AD +1 172 ET2 BIT IE.5 ; TIMER 2 INTERRUPT ENABLE
00AF +1 173 EA BIT IE.7 ; GLOBAL INTERRUPT ENABLE
+1 174 ;
+1 175 ; IP B8H
00B8 +1 176 PX0 BIT IP.0 ; EXTERNAL INTERRUPT 0 PRIORITY
00B9 +1 177 PT0 BIT IP.1 ; TIMER 0 PRIORITY
00BA +1 178 PX1 BIT IP.2 ; EXTERNAL INTERRUPT 1 PRIORITY
00BB +1 179 PT1 BIT IP.3 ; TIMER 1 PRIORITY
00BC +1 180 PS BIT IP.4 ; SERIAL PORT PRIORITY
00BD +1 181 PT2 BIT IP.5 ; TIMER 2 PRIORITY
+1 182 ;
+1 183 ; SMB0CN C0H
00C0 +1 184 SMBTOE BIT SMB0CN.0 ; SMBUS 0 TIMEOUT ENABLE
00C1 +1 185 SMBFTE BIT SMB0CN.1 ; SMBUS 0 FREE TIMER ENABLE
00C2 +1 186 AA BIT SMB0CN.2 ; SMBUS 0 ASSERT/ACKNOWLEDGE FLAG
00C3 +1 187 SI BIT SMB0CN.3 ; SMBUS 0 INTERRUPT PENDING FLAG
00C4 +1 188 STO BIT SMB0CN.4 ; SMBUS 0 STOP FLAG
00C5 +1 189 STA BIT SMB0CN.5 ; SMBUS 0 START FLAG
00C6 +1 190 ENSMB BIT SMB0CN.6 ; SMBUS 0 ENABLE
A51 MACRO ASSEMBLER PRINTERB 02/14/2006 08:49:11 PAGE 4
+1 191 ;
+1 192 ; T2CON C8H
00C8 +1 193 CPRL2 BIT T2CON.0 ; CAPTURE OR RELOAD SELECT
00C9 +1 194 CT2 BIT T2CON.1 ; TIMER OR COUNTER SELECT
00CA +1 195 TR2 BIT T2CON.2 ; TIMER 2 ON/OFF CONTROL
00CB +1 196 EXEN2 BIT T2CON.3 ; TIMER 2 EXTERNAL ENABLE FLAG
00CC +1 197 TCLK BIT T2CON.4 ; TRANSMIT CLOCK FLAG
00CD +1 198 RCLK BIT T2CON.5 ; RECEIVE CLOCK FLAG
00CE +1 199 EXF2 BIT T2CON.6 ; EXTERNAL FLAG
00CF +1 200 TF2 BIT T2CON.7 ; TIMER 2 OVERFLOW FLAG
+1 201 ;
+1 202 ; PSW D0H
00D0 +1 203 P BIT PSW.0 ; ACCUMULATOR PARITY FLAG
00D1 +1 204 F1 BIT PSW.1 ; USER FLAG 1
00D2 +1 205 OV BIT PSW.2 ; OVERFLOW FLAG
00D3 +1 206 RS0 BIT PSW.3 ; REGISTER BANK SELECT 0
00D4 +1 207 RS1 BIT PSW.4 ; REGISTER BANK SELECT 1
00D5 +1 208 F0 BIT PSW.5 ; USER FLAG 0
00D6 +1 209 AC BIT PSW.6 ; AUXILIARY CARRY FLAG
00D7 +1 210 CY BIT PSW.7 ; CARRY FLAG
+1 211 ;
+1 212 ; PCA0CN D8H
00D8 +1 213 CCF0 BIT PCA0CN.0 ; PCA 0 MODULE 0 INTERRUPT FLAG
00D9 +1 214 CCF1 BIT PCA0CN.1 ; PCA 0 MODULE 1 INTERRUPT FLAG
00DA +1 215 CCF2 BIT PCA0CN.2 ; PCA 0 MODULE 2 INTERRUPT FLAG
00DB +1 216 CCF3 BIT PCA0CN.3 ; PCA 0 MODULE 3 INTERRUPT FLAG
00DC +1 217 CCF4 BIT PCA0CN.4 ; PCA 0 MODULE 4 INTERRUPT FLAG
00DE +1 218 CR BIT PCA0CN.6 ; PCA 0 COUNTER RUN CONTROL BIT
00DF +1 219 CF BIT PCA0CN.7 ; PCA 0 COUNTER OVERFLOW FLAG
+1 220 ;
+1 221 ; ADC0CN E8H
00E8 +1 222 AD0LJST BIT ADC0CN.0 ; ADC 0 RIGHT JUSTIFY DATA BIT
00E9 +1 223 AD0WINT BIT ADC0CN.1 ; ADC 0 WINDOW COMPARE INTERRUPT FLAG
00EA +1 224 AD0STM0 BIT ADC0CN.2 ; ADC 0 START OF CONVERSION MODE BIT 0
00EB +1 225 AD0STM1 BIT ADC0CN.3 ; ADC 0 START OF CONVERSION MODE BIT 1
00EC +1 226 AD0BUSY BIT ADC0CN.4 ; ADC 0 BUSY FLAG
00ED +1 227 AD0INT BIT ADC0CN.5 ; ADC 0 CONVERISION COMPLETE INTERRUPT FLAG
00EE +1 228 AD0TM BIT ADC0CN.6 ; ADC 0 TRACK MODE
00EF +1 229 AD0EN BIT ADC0CN.7 ; ADC 0 ENABLE
+1 230 ;
+1 231 ; SPI0CN F8H
00F8 +1 232 SPIEN BIT SPI0CN.0 ; SPI 0 SPI ENABLE
00F9 +1 233 MSTEN BIT SPI0CN.1 ; SPI 0 MASTER ENABLE
00FA +1 234 SLVSEL BIT SPI0CN.2 ; SPI 0 SLAVE SELECT
00FB +1 235 TXBSY BIT SPI0CN.3 ; SPI 0 TX BUSY FLAG
00FC +1 236 RXOVRN BIT SPI0CN.4 ; SPI 0 RX OVERRUN FLAG
00FD +1 237 MODF BIT SPI0CN.5 ; SPI 0 MODE FAULT FLAG
00FE +1 238 WCOL BIT SPI0CN.6 ; SPI 0 WRITE COLLISION FLAG
00FF +1 239 SPIF BIT SPI0CN.7 ; SPI 0 INTERRUPT FLAG
240
0000 241 ORG 00H ;PRINTERB.ASM
0000 2100 242 AJMP MAIN
0100 243 ORG 100H
0100 1201C4 244 MAIN: LCALL PORTINT ;端口初始化.外设(打印机)和片外RAM是统一编址的.
0103 31D7 245 ACALL PRINTERA
0105 3109 246 ACALL PRINT
0107 2107 247 STOP: AJMP STOP
0109 740A 248 PRINT: MOV A,#0AH ; 换行
010B 120199 249 LCALL PR
010E 740D 250 MOV A,#0DH ;回车
0110 120199 251 LCALL PR
0113 9001BD 252 MOV DPTR,#CLK ; 打印ASCII字符:"CLOCK: "
0116 E4 253 SC: CLR A
0117 93 254 MOVC A,@A+DPTR
0118 120199 255 LCALL PR
011B A3 256 INC DPTR
A51 MACRO ASSEMBLER PRINTERB 02/14/2006 08:49:11 PAGE 5
011C B420F7 257 CJNE A,#20H,SC
258 ; CLOCK
011F 7871 259 MOV R0,#71H ;打印 时:分:秒( "19:15:53: ")
0121 7D06 260 MOV R5,#6
0123 E6 261 SS0: MOV A,@R0
0124 2430 262 ADD A,#30H ;转换手滴狝SCII码
0126 120199 263 LCALL PR ;打印一个字符
0129 08 264 INC R0
012A E8 265 MOV A,R0
012B 30E005 266 JNB ACC.0,SB ;在第1,3,5位之后应打印安": "号
012E 743A 267 MOV A,#3AH ;在第0,2,4位之后应不打印": "号
0130 120199 268 LCALL PR
0133 DDEE 269 SB: DJNZ R5,SS0
0135 7420 270 MOV A,#20H
0137 120199 271 LCALL PR
013A 7420 272 MOV A,#20H
013C 120199 273 LCALL PR
013F 740D 274 MOV A,#0DH
0141 120199 275 LCALL PR
0144 9001B7 276 MOV DPTR,#DATE ;打印ASCII字符:"DATE: "
0147 E4 277 SD: CLR A
0148 93 278 MOVC A,@A+DPTR
0149 120199 279 LCALL PR
014C A3 280 INC DPTR
014D B420F7 281 CJNE A,#20H,SD
282 ; DATE
0150 7877 283 MOV R0,#77H ;打印 月:日:周日:("10:6:5: ")
0152 7D05 284 MOV R5,#5
0154 E6 285 SS1: MOV A,@R0
0155 2430 286 ADD A,#30H
0157 120199 287 LCALL PR
015A 08 288 INC R0
015B E8 289 MOV A,R0
015C 30E005 290 JNB ACC.0,SA
015F 743A 291 MOV A,#3AH
0161 120199 292 LCALL PR
0164 DDEE 293 SA: DJNZ R5,SS1
0166 7420 294 MOV A,#20H
0168 120199 295 LCALL PR
016B 7420 296 MOV A,#20H
016D 120199 297 LCALL PR
0170 740D 298 MOV A,#0DH
0172 120199 299 LCALL PR
0175 9001B1 300 MOV DPTR,#YEAR ;打印ASCII字符:" YEAR: "
0178 E4 301 SE: CLR A
0179 93 302 MOVC A,@A+DPTR
017A 120199 303 LCALL PR
017D A3 304 INC DPTR
017E B420F7 305 CJNE A,#20H,SE
306 ; YEAR
0181 787C 307 MOV R0,#7CH ;打印年:("2003")
0183 7D04 308 MOV R5,#4
0185 E6 309 SS2: MOV A,@R0
0186 2430 310 ADD A,#30H
0188 120199 311 LCALL PR
018B 08 312 INC R0
018C DDF7 313 DJNZ R5,SS2
018E 740A 314 MOV A,#0AH ;打印机换行
0190 120199 315 LCALL PR
0193 740D 316 MOV A,#0DH ; 打印机回车
0195 120199 317 LCALL PR
0198 22 318 RET
0199 C083 319 PR: PUSH DPH ;打印子程序,要打业淖址
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -