📄 main.src
字号:
; .\main.SRC generated from: main.c
; COMPILER INVOKED BY:
; D:\KeilC51\C51\BIN\C51.EXE main.c ROM(COMPACT) BROWSE DEFINE(evalboard) DEBUG OBJECTEXTEND LISTINCLUDE SYMBOLS SRC(.\main.SRC)
$NOMOD51
NAME MAIN
P0 DATA 080H
P1 DATA 090H
P2 DATA 0A0H
P3 DATA 0B0H
T0 BIT 0B0H.4
AC BIT 0D0H.6
T1 BIT 0B0H.5
EA BIT 0A8H.7
IE DATA 0A8H
RD BIT 0B0H.7
ES BIT 0A8H.4
IP DATA 0B8H
RI BIT 098H.0
INT0 BIT 0B0H.2
CY BIT 0D0H.7
TI BIT 098H.1
INT1 BIT 0B0H.3
PS BIT 0B8H.4
SP DATA 081H
OV BIT 0D0H.2
WR BIT 0B0H.6
SBUF DATA 099H
PCON DATA 087H
SCON DATA 098H
TMOD DATA 089H
TCON DATA 088H
IE0 BIT 088H.1
IE1 BIT 088H.3
B DATA 0F0H
ACC DATA 0E0H
ET0 BIT 0A8H.1
ET1 BIT 0A8H.3
TF0 BIT 088H.5
TF1 BIT 088H.7
RB8 BIT 098H.2
TH0 DATA 08CH
EX0 BIT 0A8H.0
IT0 BIT 088H.0
TH1 DATA 08DH
TB8 BIT 098H.3
EX1 BIT 0A8H.2
IT1 BIT 088H.2
P BIT 0D0H.0
SM0 BIT 098H.7
TL0 DATA 08AH
SM1 BIT 098H.6
TL1 DATA 08BH
SM2 BIT 098H.5
PT0 BIT 0B8H.1
PT1 BIT 0B8H.3
RS0 BIT 0D0H.3
TR0 BIT 088H.4
RS1 BIT 0D0H.4
TR1 BIT 088H.6
PX0 BIT 0B8H.0
PX1 BIT 0B8H.2
DPH DATA 083H
DPL DATA 082H
REN BIT 098H.4
RXD BIT 0B0H.0
TXD BIT 0B0H.1
F0 BIT 0D0H.5
PSW DATA 0D0H
?PR?main?MAIN SEGMENT CODE INBLOCK
?DT?main?MAIN SEGMENT DATA OVERLAYABLE
?CO?MAIN SEGMENT CODE
?C_INITSEG SEGMENT CODE
?DT?MAIN SEGMENT DATA
EXTRN CODE (cmdb_prompt)
EXTRN CODE (cmdb_scan)
EXTRN CODE (clock_init)
EXTRN CODE (_cmd_proc)
EXTRN CODE (cmdb_init)
EXTRN CODE (_DINPUT)
EXTRN CODE (_DISPLY)
EXTRN CODE (_timer0_wait)
EXTRN CODE (_com_puts)
EXTRN CODE (com_initialize)
EXTRN CODE (timer0_initialize)
EXTRN CODE (clock_update)
EXTRN CODE (?C_STARTUP)
PUBLIC main
RSEG ?DT?main?MAIN
?main?BYTE:
cmd?040: DS 3
RSEG ?DT?MAIN
dg: DS 8
RSEG ?CO?MAIN
?SC_0:
DB 'T' ,'D' ,'P' ,' ' ,'V' ,'1' ,'.' ,'0' ,00DH,00AH
DB 000H
RSEG ?C_INITSEG
DB 008H
DB dg
DB 000H
DB 000H
DB 00AH
DB 000H
DB 000H
DB 00AH
DB 000H
DB 000H
; #include <reg51.h>
; #include <stdlib.h>
; #include "tdp.h"
; #ifdef evalboard /* 采用硬件目标板时需要使用以下外部函数 */
; extern void DINPUT(unsigned char aa, unsigned char bb);
; extern void DISPLY(unsigned char data *cc);
; static unsigned char data dg[]={0,0,10,0,0,10,0,0};
; #endif
;
; void main (void) {
RSEG ?PR?main?MAIN
main:
USING 0
; SOURCE LINE # 10
; unsigned i;
; for (i = 0; i < 1000; i++); /* 延时,等待系统上电稳定 */
; SOURCE LINE # 12
;---- Variable 'i?041' assigned to Register 'R6/R7' ----
CLR A
MOV R7,A
MOV R6,A
?C0001:
INC R7
CJNE R7,#00H,?C0010
INC R6
?C0010:
CJNE R6,#03H,?C0001
CJNE R7,#0E8H,?C0001
?C0002:
; timer0_initialize (); /* 定时器0初始化 */
; SOURCE LINE # 13
LCALL timer0_initialize
; com_initialize (); /*串行口初始化 */
; SOURCE LINE # 14
LCALL com_initialize
; #ifdef evalboard /* 采用硬件目标板时 */
; DINPUT(0X0A,0X07); /* 需要对板上MAX7219初始化 */
; SOURCE LINE # 16
MOV R5,#07H
MOV R7,#0AH
LCALL _DINPUT
; DINPUT(0X0B,0X07);
; SOURCE LINE # 17
MOV R5,#07H
MOV R7,#0BH
LCALL _DINPUT
; DINPUT(0X09,0X0FF);
; SOURCE LINE # 18
MOV R5,#0FFH
MOV R7,#09H
LCALL _DINPUT
; DINPUT(0X0c,0X01);
; SOURCE LINE # 19
MOV R5,#01H
MOV R7,#0CH
LCALL _DINPUT
; DISPLY(dg); /* 板上LED 显示 00-00-00 */
; SOURCE LINE # 20
MOV R7,#LOW (dg)
LCALL _DISPLY
; #endif
; timer0_wait (TIMER0_TICKS_PER_SEC / 10);
; SOURCE LINE # 22
MOV R7,#0AH
MOV R6,#00H
LCALL _timer0_wait
; clock_init ();
; SOURCE LINE # 23
LCALL clock_init
; com_puts ("TDP V1.0\r\n");
; SOURCE LINE # 24
MOV R3,#0FFH
MOV R2,#HIGH (?SC_0)
MOV R1,#LOW (?SC_0)
LCALL _com_puts
?C0004:
; while (1) {
; SOURCE LINE # 25
; const char *cmd;
; cmdb_init ();
; SOURCE LINE # 27
LCALL cmdb_init
; cmdb_prompt ();
; SOURCE LINE # 28
LCALL cmdb_prompt
; for (cmd = NULL; cmd == NULL; cmd = cmdb_scan ()) {
; SOURCE LINE # 29
MOV cmd?040,#00H
MOV cmd?040+01H,#00H
MOV cmd?040+02H,#00H
?C0006:
MOV A,cmd?040+02H
ORL A,cmd?040+01H
ORL A,cmd?040
JNZ ?C0007
; clock_update ();
; SOURCE LINE # 30
LCALL clock_update
; }
; SOURCE LINE # 31
LCALL cmdb_scan
MOV cmd?040,R3
MOV cmd?040+01H,R2
MOV cmd?040+02H,R1
SJMP ?C0006
?C0007:
; cmd_proc (cmd);
; SOURCE LINE # 32
MOV R3,cmd?040
MOV R2,cmd?040+01H
MOV R1,cmd?040+02H
LCALL _cmd_proc
; }
; SOURCE LINE # 33
SJMP ?C0004
; END OF main
END
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -