本帖最后由 海鸥的梦 于 2012-4-1 20:44 编辑
单片机1中30h~34h单元的数据发送给单片机2并存放在单片机2中的50h~54h单元中,怎么在
proteus仿真中显示结果?
单片机1:
org 0000h
ljmp start
org 0023h
ljmp send
org 1000h
start: mov tmod,#20h
mov scon,#50h
mov pcon,#00h
mov tl1,#0fdh
mov th1,#0fdh
setb ea
setb es
setb tr1
int: mov sbuf,#55h ;握手信号
mov r1,#0ffh
loop: nop
djnz r1,loop
jnb f0,int ;没有收到对方握手信息,等待
mov r0,#30h
mov sbuf,@r0
ljmp $
send: jb f0,lab1 ;对方已准备好,转发送
mov a,sbuf ;收对方握手信号
cjne a,#55h,lab0
setb f0
lab0: clr ri
re
ti
lab1: mov sbuf,@r0 ;发送30H~34H单元内容
inc r0
cjne r0,#35h,lab2
clr es
lab2: clr ti
reti
end
单片机2:
org 0000h
ljmp start
org 0023h
ljmp input
org 1000h
start:mov tmod,#20h
mov scon,#50h
mov pcon,#00h
mov tl1,#0fdh
mov th1,#0fdh
mov r0,#50h
setb ea
setb es
setb tr1
ljmp $
input:jb f0,lab1
mov a,sbuf
cjne a,#55h,lab0
setb f0
mov sbuf,#55h ;发送出握手信号
lab0: clr ri
reti
lab1: mov @r0,sbuf
inc r0
cjne r0,#55h,lab2
clr es
lab2: clr ri
reti
end
一周热门 更多>