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

📄 int_rec.lst

📁 《单片机原理实用教程——基于Proteus虚拟仿真》一书的配套光盘
💻 LST
字号:

ASEM-51 V1.2                                         Copyright (c) 1996 by W.W. Heinz                                         PAGE 1





       MCS-51 Family Cross Assembler   A S E M - 5 1   V 1.2
       =====================================================



	Source File:	INT_REC.ASM
	Object File:	INT_REC.HEX
	List File:	INT_REC.LST



 Line  I  Addr  Code            Source

    1:		N      0000		ORG  0000H            	;主程序入口
    2:	  0000	02 01 00	     	LJMP  MAIN
    3:		N      0023	        ORG  0023H            	;串行中断入口
    4:	  0023	02 01 1B	     	LJMP SERVE2
    5:		N      0100	        ORG  0100H
    6:	  0100	75 89 20	MAIN:   MOV  TMOD, #20H         ;将T1设为工作方式2
    7:	  0103	75 8D F3	        MOV  TH1, #0F3H         ;fosc=6MHz时,BD=2400
    8:	  0106	75 8B F3	        MOV  TL1, #0F3H
    9:	  0109	D2 8E		        SETB  TR1               ;启动T1
   10:	  010B	75 87 80	        MOV  PCON, #80H         ;Smod=1
   11:	  010E	75 98 D0	        MOV  SCON, #0D0H        ;串行口设为工作方式3, 允许接收
   12:	  0111	78 40		        MOV  R0, #40H        	;数据块首地址
   13:	  0113	7F 10			MOV R7, #10H		;接收字节数
   14:	  0115	D2 AC		        SETB ES                 ;允许串行口中断
   15:	  0117	D2 AF		        SETB EA                 ;开中断
   16:	  0119	80 FE		        SJMP $                  ;等待中断
   17:
   18:				;接收方单片机的中断服务程序:
   19:	  011B	10 98 04	SERVE2: JBC  RI, LOOP           ;是接收中断,清零RI,转入接收
   20:	  011E	C2 99		        CLR  TI                 ;是发送中断,清零TI
   21:	  0120	80 23		        SJMP ENDT
   22:	  0122	E5 99		LOOP:   MOV  A, SBUF            ;接收数据
   23:	  0124	A2 D0		        MOV  C, P               ;奇偶标志送C
   24:	  0126	40 06		        JC   LOOP1              ;为奇数,转入LOOP1
   25:	  0128	72 9A		        ORL  C, RB8             ;为偶数,检测RB8
   26:	  012A	40 06		        JC   LOOP2              ;奇偶校验出错
   27:	  012C	80 0A		        SJMP LOOP3
   28:	  012E	82 9A		LOOP1:  ANL  C, RB8             ;检测RB8
   29:	  0130	40 06		        JC   LOOP3              ;奇偶校验正确
   30:	  0132	74 FF		LOOP2:  MOV  A, #0FFH
   31:	  0134	F5 99		        MOV  SBUF, A            ;发送“不正确”应答信号
   32:	  0136	80 0D		        SJMP ENDT
   33:	  0138	F6		LOOP3:  MOV @R0, A              ;存放接收数据
   34:	  0139	C4			SWAP A
   35:	  013A	F5 90			MOV P1,A
   36:	  013C	74 00		        MOV  A, #00H
   37:	  013E	F5 99		        MOV  SBUF, A            ;发送“正确”应答信号
   38:	  0140	08		        INC  R0                 ;修改数据指针
   39:	  0141	DF 02		        DJNZ R7, ENDT           ;未接收完数据
   40:	  0143	C2 AC		        CLR  ES                 ;全部数据接收完毕, 禁止串行口中断
   41:	  0145	32		ENDT:   RETI                    ;中断返回
   42:
   43:					END

ASEM-51 V1.2                                         Copyright (c) 1996 by W.W. Heinz                                         PAGE 2








                     register banks used:  ---

                     no errors




ASEM-51 V1.2                                         Copyright (c) 1996 by W.W. Heinz                                         PAGE 3





	       L I S T   O F   S Y M B O L S
	       =============================


SYMBOL				  TYPE     VALUE	LINE
------------------------------------------------------------
AC				  BIT	      D6
ACC				  DATA	      E0
B				  DATA	      F0
CY				  BIT	      D7
DPH				  DATA	      83
DPL				  DATA	      82
EA				  BIT	      AF
ENDT				  CODE	    0145	  41
ES				  BIT	      AC
ET0				  BIT	      A9
ET1				  BIT	      AB
EX0				  BIT	      A8
EX1				  BIT	      AA
EXTI0				  CODE	    0003
EXTI1				  CODE	    0013
F0				  BIT	      D5
IE				  DATA	      A8
IE0				  BIT	      89
IE1				  BIT	      8B
INT0				  BIT	      B2
INT1				  BIT	      B3
IP				  DATA	      B8
IT0				  BIT	      88
IT1				  BIT	      8A
LOOP				  CODE	    0122	  22
LOOP1				  CODE	    012E	  28
LOOP2				  CODE	    0132	  30
LOOP3				  CODE	    0138	  33
MAIN				  CODE	    0100	   6
OV				  BIT	      D2
P				  BIT	      D0
P0				  DATA	      80
P1				  DATA	      90
P2				  DATA	      A0
P3				  DATA	      B0
PCON				  DATA	      87
PS				  BIT	      BC
PSW				  DATA	      D0
PT0				  BIT	      B9
PT1				  BIT	      BB
PX0				  BIT	      B8
PX1				  BIT	      BA
RB8				  BIT	      9A
RD				  BIT	      B7
REN				  BIT	      9C
RESET				  CODE	    0000
RI				  BIT	      98
RS0				  BIT	      D3
RS1				  BIT	      D4
RXD				  BIT	      B0

ASEM-51 V1.2                                         Copyright (c) 1996 by W.W. Heinz                                         PAGE 4



SYMBOL				  TYPE     VALUE	LINE
------------------------------------------------------------
SBUF				  DATA	      99
SCON				  DATA	      98
SERVE2				  CODE	    011B	  19
SINT				  CODE	    0023
SM0				  BIT	      9F
SM1				  BIT	      9E
SM2				  BIT	      9D
SP				  DATA	      81
T0				  BIT	      B4
T1				  BIT	      B5
TB8				  BIT	      9B
TCON				  DATA	      88
TF0				  BIT	      8D
TF1				  BIT	      8F
TH0				  DATA	      8C
TH1				  DATA	      8D
TI				  BIT	      99
TIMER0				  CODE	    000B
TIMER1				  CODE	    001B
TL0				  DATA	      8A
TL1				  DATA	      8B
TMOD				  DATA	      89
TR0				  BIT	      8C
TR1				  BIT	      8E
TXD				  BIT	      B1
WR				  BIT	      B6

⌨️ 快捷键说明

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