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

📄 can_main.ls1

📁 CAN总线源程序,欢迎大家共同学习
💻 LS1
📖 第 1 页 / 共 3 页
字号:
                     528     ; }
                     529                             ; SOURCE LINE # 92
013B 80D8            530             SJMP    ?C0020
013D                 531     ?C0021:
                     532     ; out(IER,0x85);
                     533                             ; SOURCE LINE # 93
013D 7D85            534             MOV     R5,#085H
013F 7F04            535             MOV     R7,#04H
0141 7EC0            536             MOV     R6,#0C0H
0143 020000   F      537             LJMP    _out
                     538     ; END OF CAN_INI
                     539     
----                 540     CSEG    AT      00003H
0003 020000   F      541             LJMP    SEARCH
                     542     
                     543     ; }
                     544     ; 
                     545     ; 
                     546     ; 
                     547     ; 
                     548     ; SEARCH() interrupt 0
                     549     
----                 550             RSEG  ?PR?SEARCH?CAN_MAIN
                     551             USING   0
0000                 552     SEARCH:
0000 C0E0            553             PUSH    ACC
0002 C0F0            554             PUSH    B
0004 C083            555             PUSH    DPH
0006 C082            556             PUSH    DPL
0008 C0D0            557             PUSH    PSW
000A 75D000          558             MOV     PSW,#00H
000D C000            559             PUSH    AR0
000F C001            560             PUSH    AR1
0011 C002            561             PUSH    AR2
0013 C003            562             PUSH    AR3
0015 C004            563             PUSH    AR4
0017 C005            564             PUSH    AR5
0019 C006            565             PUSH    AR6
001B C007            566             PUSH    AR7
                     567             USING   0
                     568                             ; SOURCE LINE # 99
                     569     ; {
                     570     ; #pragma asm
                     571     ; CLR EA;
001D C2AF            572               CLR EA;
                     573     ; PUSH DPH;
001F C083            574               PUSH DPH;
                     575     ; PUSH DPL;
0021 C082            576               PUSH DPL;
                     577     ; PUSH PSW;
0023 C0D0            578               PUSH PSW;
                     579     ; PUSH ACC;
0025 C0E0            580               PUSH ACC;
                     581     ; #pragma endasm
                     582     ; 
                     583     ; a=in(IR);
                     584                             ; SOURCE LINE # 109
0027 7F03            585             MOV     R7,#03H
0029 7EC0            586             MOV     R6,#0C0H
A51 MACRO ASSEMBLER  CAN_MAIN                                                             11/24/2006 12:29:26 PAGE    10

002B 120000   F      587             LCALL   _in
002E 8F00     F      588             MOV     a?,R7
                     589     ; if(a&0x01)
                     590                             ; SOURCE LINE # 110
0030 E500     F      591             MOV     A,a?
0032 30E013          592             JNB     ACC.0,?C0023
                     593     ; {RCVDATA();
                     594                             ; SOURCE LINE # 111
0035 120000   F      595             LCALL   RCVDATA
0038                 596     ?C0024:
                     597     ; 
                     598     ; while(in(SR)&0x01)
                     599                             ; SOURCE LINE # 113
0038 7F02            600             MOV     R7,#02H
003A 7EC0            601             MOV     R6,#0C0H
003C 120000   F      602             LCALL   _in
003F EF              603             MOV     A,R7
0040 30E01A          604             JNB     ACC.0,?C0026
                     605     ; RCVDATA();
                     606                             ; SOURCE LINE # 114
0043 120000   F      607             LCALL   RCVDATA
0046 80F0            608             SJMP    ?C0024
                     609     ; }
                     610                             ; SOURCE LINE # 115
0048                 611     ?C0023:
                     612     ; else if (a&0x02)
                     613                             ; SOURCE LINE # 116
0048 E500     F      614             MOV     A,a?
004A 30E109          615             JNB     ACC.1,?C0027
                     616     ; 
                     617     ; my_flag.flags.ERR_FLAG=1;
                     618                             ; SOURCE LINE # 118
004D AF00     F      619             MOV     R7,my_flag
004F EF              620             MOV     A,R7
0050 4404            621             ORL     A,#04H
0052 F500     F      622             MOV     my_flag,A
0054 8007            623             SJMP    ?C0026
0056                 624     ?C0027:
                     625     ; 
                     626     ; else
                     627     ; 
                     628     ; my_flag.flags.BERR_FLAG=1;
                     629                             ; SOURCE LINE # 122
0056 AF00     F      630             MOV     R7,my_flag+01H
0058 EF              631             MOV     A,R7
0059 4401            632             ORL     A,#01H
005B F500     F      633             MOV     my_flag+01H,A
005D                 634     ?C0026:
                     635     ; #pragma asm
                     636     ; POP ACC;
005D D0E0            637               POP ACC;
                     638     ; POP PSW;
005F D0D0            639               POP PSW;
                     640     ; POP DPL;
0061 D082            641               POP DPL;
                     642     ; POP DPH;
0063 D083            643               POP DPH;
                     644     ; SETB EA;
0065 D2AF            645               SETB EA;
                     646     ; #pragma endasm
                     647     ; 
                     648     ; 
                     649     ; }
                     650                             ; SOURCE LINE # 132
0067 D007            651             POP     AR7
0069 D006            652             POP     AR6
A51 MACRO ASSEMBLER  CAN_MAIN                                                             11/24/2006 12:29:26 PAGE    11

006B D005            653             POP     AR5
006D D004            654             POP     AR4
006F D003            655             POP     AR3
0071 D002            656             POP     AR2
0073 D001            657             POP     AR1
0075 D000            658             POP     AR0
0077 D0D0            659             POP     PSW
0079 D082            660             POP     DPL
007B D083            661             POP     DPH
007D D0F0            662             POP     B
007F D0E0            663             POP     ACC
0081 32              664             RETI    
                     665     ; END OF SEARCH
                     666     
                     667             END
A51 MACRO ASSEMBLER  CAN_MAIN                                                             11/24/2006 12:29:26 PAGE    12

SYMBOL TABLE LISTING
------ ----- -------


N A M E               T Y P E  V A L U E   ATTRIBUTES

?C0001 . . . . . . .  C ADDR   0002H   R   SEG=?PR?MAIN?CAN_MAIN
?C0002 . . . . . . .  C ADDR   0012H   R   SEG=?PR?MAIN?CAN_MAIN
?C0004 . . . . . . .  C ADDR   0032H   R   SEG=?PR?MAIN?CAN_MAIN
?C0006 . . . . . . .  C ADDR   0042H   R   SEG=?PR?MAIN?CAN_MAIN
?C0007 . . . . . . .  C ADDR   0054H   R   SEG=?PR?MAIN?CAN_MAIN
?C0008 . . . . . . .  C ADDR   0068H   R   SEG=?PR?MAIN?CAN_MAIN
?C0009 . . . . . . .  C ADDR   0078H   R   SEG=?PR?MAIN?CAN_MAIN
?C0012 . . . . . . .  C ADDR   0003H   R   SEG=?PR?CAN_INI?CAN_MAIN
?C0014 . . . . . . .  C ADDR   0022H   R   SEG=?PR?CAN_INI?CAN_MAIN
?C0016 . . . . . . .  C ADDR   0043H   R   SEG=?PR?CAN_INI?CAN_MAIN
?C0018 . . . . . . .  C ADDR   0064H   R   SEG=?PR?CAN_INI?CAN_MAIN
?C0019 . . . . . . .  C ADDR   0085H   R   SEG=?PR?CAN_INI?CAN_MAIN
?C0020 . . . . . . .  C ADDR   0115H   R   SEG=?PR?CAN_INI?CAN_MAIN
?C0021 . . . . . . .  C ADDR   013DH   R   SEG=?PR?CAN_INI?CAN_MAIN
?C0023 . . . . . . .  C ADDR   0048H   R   SEG=?PR?SEARCH?CAN_MAIN
?C0024 . . . . . . .  C ADDR   0038H   R   SEG=?PR?SEARCH?CAN_MAIN
?C0026 . . . . . . .  C ADDR   005DH   R   SEG=?PR?SEARCH?CAN_MAIN
?C0027 . . . . . . .  C ADDR   0056H   R   SEG=?PR?SEARCH?CAN_MAIN
?C0030 . . . . . . .  C ADDR   0081H   R   SEG=?PR?MAIN?CAN_MAIN
?C_STARTUP . . . . .  C ADDR   -----       EXT
?DT?CAN_MAIN . . . .  D SEG    001DH       REL=UNIT
?PR?CAN_INI?CAN_MAIN  C SEG    0146H       REL=UNIT
?PR?MAIN?CAN_MAIN. .  C SEG    009FH       REL=UNIT
?PR?SEARCH?CAN_MAIN.  C SEG    0082H       REL=UNIT
A? . . . . . . . . .  D ADDR   001AH   R   SEG=?DT?CAN_MAIN
AC . . . . . . . . .  B ADDR   00D0H.6 A   
ACC. . . . . . . . .  D ADDR   00E0H   A   
AR0. . . . . . . . .  D ADDR   0000H   A   
AR1. . . . . . . . .  D ADDR   0001H   A   
AR2. . . . . . . . .  D ADDR   0002H   A   
AR3. . . . . . . . .  D ADDR   0003H   A   
AR4. . . . . . . . .  D ADDR   0004H   A   
AR5. . . . . . . . .  D ADDR   0005H   A   
AR6. . . . . . . . .  D ADDR   0006H   A   
AR7. . . . . . . . .  D ADDR   0007H   A   
B. . . . . . . . . .  D ADDR   00F0H   A   
BERR . . . . . . . .  C ADDR   -----       EXT
BUF. . . . . . . . .  D ADDR   0000H   R   SEG=?DT?CAN_MAIN
CAN_INI. . . . . . .  C ADDR   0000H   R   SEG=?PR?CAN_INI?CAN_MAIN
CAN_MAIN . . . . . .  N NUMB   -----       
CY . . . . . . . . .  B ADDR   00D0H.7 A   
DPH. . . . . . . . .  D ADDR   0083H   A   
DPL. . . . . . . . .  D ADDR   0082H   A   
EA . . . . . . . . .  B ADDR   00A8H.7 A   
ERR. . . . . . . . .  C ADDR   -----       EXT
ES . . . . . . . . .  B ADDR   00A8H.4 A   
ET0. . . . . . . . .  B ADDR   00A8H.1 A   
ET1. . . . . . . . .  B ADDR   00A8H.3 A   
EX0. . . . . . . . .  B ADDR   00A8H.0 A   
EX1. . . . . . . . .  B ADDR   00A8H.2 A   
F0 . . . . . . . . .  B ADDR   00D0H.5 A   
IE . . . . . . . . .  D ADDR   00A8H   A   
IE0. . . . . . . . .  B ADDR   0088H.1 A   
IE1. . . . . . . . .  B ADDR   0088H.3 A   
INT0 . . . . . . . .  B ADDR   00B0H.2 A   
INT1 . . . . . . . .  B ADDR   00B0H.3 A   
IP . . . . . . . . .  D ADDR   00B8H   A   
IT0. . . . . . . . .  B ADDR   0088H.0 A   
IT1. . . . . . . . .  B ADDR   0088H.2 A   
MAIN . . . . . . . .  C ADDR   0000H   R   SEG=?PR?MAIN?CAN_MAIN
A51 MACRO ASSEMBLER  CAN_MAIN                                                             11/24/2006 12:29:26 PAGE    13

MY_FLAG. . . . . . .  D ADDR   001BH   R   SEG=?DT?CAN_MAIN
OV . . . . . . . . .  B ADDR   00D0H.2 A   
P. . . . . . . . . .  B ADDR   00D0H.0 A   
P0 . . . . . . . . .  D ADDR   0080H   A   
P1 . . . . . . . . .  D ADDR   0090H   A   
P2 . . . . . . . . .  D ADDR   00A0H   A   
P3 . . . . . . . . .  D ADDR   00B0H   A   
P3_1 . . . . . . . .  B ADDR   00B0H.1 A   
PCON . . . . . . . .  D ADDR   0087H   A   
PS . . . . . . . . .  B ADDR   00B8H.4 A   
PSW. . . . . . . . .  D ADDR   00D0H   A   
PT0. . . . . . . . .  B ADDR   00B8H.1 A   
PT1. . . . . . . . .  B ADDR   00B8H.3 A   
PX0. . . . . . . . .  B ADDR   00B8H.0 A   
PX1. . . . . . . . .  B ADDR   00B8H.2 A   
RB8. . . . . . . . .  B ADDR   0098H.2 A   
RCVDATA. . . . . . .  C ADDR   -----       EXT
RD . . . . . . . . .  B ADDR   00B0H.7 A   
READDATA . . . . . .  C ADDR   -----       EXT
REC_DATA . . . . . .  C ADDR   -----       EXT
REC_REMOTE . . . . .  C ADDR   -----       EXT
REN. . . . . . . . .  B ADDR   0098H.4 A   
RI . . . . . . . . .  B ADDR   0098H.0 A   
RS0. . . . . . . . .  B ADDR   00D0H.3 A   
RS1. . . . . . . . .  B ADDR   00D0H.4 A   
RXD. . . . . . . . .  B ADDR   00B0H.0 A   
SBUF . . . . . . . .  D ADDR   0099H   A   
SCON . . . . . . . .  D ADDR   0098H   A   
SEARCH . . . . . . .  C ADDR   0000H   R   SEG=?PR?SEARCH?CAN_MAIN
SM0. . . . . . . . .  B ADDR   0098H.7 A   
SM1. . . . . . . . .  B ADDR   0098H.6 A   
SM2. . . . . . . . .  B ADDR   0098H.5 A   
SP . . . . . . . . .  D ADDR   0081H   A   
T0 . . . . . . . . .  B ADDR   00B0H.4 A   
T1 . . . . . . . . .  B ADDR   00B0H.5 A   
TB8. . . . . . . . .  B ADDR   0098H.3 A   
TCON . . . . . . . .  D ADDR   0088H   A   
TDATA. . . . . . . .  C ADDR   -----       EXT
TEST . . . . . . . .  C ADDR   -----       EXT
TF0. . . . . . . . .  B ADDR   0088H.5 A   
TF1. . . . . . . . .  B ADDR   0088H.7 A   
TH0. . . . . . . . .  D ADDR   008CH   A   
TH1. . . . . . . . .  D ADDR   008DH   A   
TI . . . . . . . . .  B ADDR   0098H.1 A   
TL0. . . . . . . . .  D ADDR   008AH   A   
TL1. . . . . . . . .  D ADDR   008BH   A   
TMOD . . . . . . . .  D ADDR   0089H   A   
TR0. . . . . . . . .  B ADDR   0088H.4 A   
TR1. . . . . . . . .  B ADDR   0088H.6 A   
TUF. . . . . . . . .  D ADDR   000DH   R   SEG=?DT?CAN_MAIN
TXD. . . . . . . . .  B ADDR   00B0H.1 A   
WR . . . . . . . . .  B ADDR   00B0H.6 A   
_DELAY . . . . . . .  C ADDR   -----       EXT
_IN. . . . . . . . .  C ADDR   -----       EXT
_OUT . . . . . . . .  C ADDR   -----       EXT


REGISTER BANK(S) USED: 0 

ASSEMBLY COMPLETE.  0 WARNING(S), 0 ERROR(S)

⌨️ 快捷键说明

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