;系統(tǒng)晶振是 11.0592 MHz;51單片機(jī)發(fā)送單片機(jī)程序
;此程序用Proteus仿真通過
本文引用地址:http://www.ex-cimer.com/article/201611/321852.htm;此程序在硬件上測(cè)試通過
;2007-05-27
;附有簡化電路圖
;為了使初學(xué)者能看懂,程序與圖盡可能的簡單扼要
;實(shí)驗(yàn)現(xiàn)象為,發(fā)送端的P1口的哪個(gè)鍵被接下,接收端的哪個(gè)燈對(duì)應(yīng)著亮
;如果把兩個(gè)單片機(jī)的T和R通過無線模塊(如基于MCP2120芯片的模塊)來擴(kuò)充,便可做成無線通信
ORG0000H
AJMPSTART
ORG0040H
START:
MOVSP,#60H
MOVSCON,#50H;串口 方式 1
MOVTMOD,#20H;T1 方式2
MOVTL1,#0FDH;波特率 9600 的常數(shù)
MOVTH1,#0FDH
SETBTR1
movr5,#00h
WAIT:
movp1,#0ffh
mova ,p1
movr5,a
lcall delay;讀鍵盤,這里去抖動(dòng),還要加幾句話
mova ,p1
nop
CJNEA,5,WAIT;是否有鍵輸入
MOVSBUF,a;串口輸出鍵盤輸入的值
NOP
SS:JBCTI,WAIT;是否發(fā)送完畢
SJMPSS
DELAY:;延時(shí)子程序
PUSH0;保存現(xiàn)場(chǎng)
PUSH1
MOV0,#06H
DELAY1: MOV1,#0H
DJNZ1,$
DJNZ0,DELAY1
POP1;恢復(fù)現(xiàn)場(chǎng)
POP0
RET
END
;系統(tǒng)晶振是 11.0592 MHz
;51單片機(jī)接收單片機(jī)程序
;此程序用Proteus仿真通過
;此程序在硬件上測(cè)試通過
;2007-05-27
;附有簡化電路圖
;為了使初學(xué)者能看懂,程序與圖盡可能的簡單扼要
;實(shí)驗(yàn)現(xiàn)象為,發(fā)送端的P1口的哪個(gè)鍵被接下,接收端的哪個(gè)燈對(duì)應(yīng)著亮
;如果把兩個(gè)單片機(jī)的T和R通過無線模塊(如基于MCP2120芯片的模塊)來擴(kuò)充,便可做成無線通信
ORG0000H
AJMPSTART
ORG0040H
START:
MOVSCON,#50H;串口 方式 1
MOVTMOD,#20H;T1 方式 2
MOVTL1,#0FDH;波特率 9600 的常數(shù)
MOVTH1,#0FDH
SETBTR1
WAIT:
JBCRI,DIS_REC;是否接收到數(shù)據(jù)
sjmpwait
DIS_REC:
MOVA,SBUF;讀串口接收到的數(shù)據(jù)
movp1,a
SJMPwait
end
評(píng)論