程序如下:
;----------------------------------------
ORG 0000H
SJMP START
ORG 0023H
LJMP UART_INT
;----------------------------------------
START:
MOV SP, #60H
MOV SCON, #50H ;方式1,8-n-1
MOV TMOD, #20H
MOV TH1, #0FDH ;波特率设置
MOV TL1, #0FDH ;9600@11.0592MHz
SETB TR1
SETB ES ;开放中断
SETB EA
LOOP:
MOV A, P2 ;读出的拨码开关信息
DJNZ R7, $ ;延时
DJNZ R6, $ - 2
MOV B, P2 ;再读
CJNE A, B, LOOP ;消抖
MOV SBUF, A ;向串口发送
MOV P1, A ;在本机显示
JNB TI, $
CLR TI
SJMP LOOP
;----------------------------------------
UART_INT:
PUSH ACC
JB TI, U_EXIT
CLR RI
MOV A, SBUF ;读出串口收到的信息
MOV P0, A ;送P0口显示
U_EXIT: POP ACC
RETI
;----------------------------------------
END
;----------------------------------------
甲乙都是 pc机?