;此程序在硬件上测试通过
;2007-05-27
;附有简化电路图
;为了使初学者能看懂,程序与图尽可能的简单扼要
;实验现象为,发送端的P1口的哪个键被接下,接收端的哪个灯对应着亮
;如果把两个 单片机 的T和R通过无线模块(如基于MCP2120芯片的模块)来扩充,便可做成无线通信
ORG 0000H
AJMP START
ORG 0040H
START:
MOV SP,#60H
MOV SCON,#50H ;串口 方式 1
MOV TMOD,#20H ;T1 方式2
MOV TL1,#0FDH ;波特率 9600 的常数
MOV TH1,#0FDH
SETB TR1
mov r5,#00h
WAIT:
mov p1,#0ffh
mov a ,p1
mov r5,a
lcall delay ;读键盘,这里去抖动,还要加几句话
mov a ,p1
nop
CJNE A,5,WAIT ;是否有键输入
MOV SBUF,a ;串口输出键盘输入的值
NOP
SS: JBC TI,WAIT ;是否发送完毕
SJMP SS
DELAY: ;延时子程序
PUSH 0 ;保存现场
PUSH 1
MOV 0,#06H
DELAY1: MOV 1,#0H
DJNZ 1,$
DJNZ 0,DELAY1
POP 1 ;恢复现场