|
刚学单片机。用VB做上位机。手动发送1-12个数据。
第一块板上用串口与电脑通信把每次接收到的数据通过PT2262编码发出。
第二块板上用PT2272解码接收。
现在第一块板能正确接收电脑发过来的数据,但发送出去后,第二块板上只接收到第一次的数据,再通过上位机程序发送数据,第一块能收到,第二块就收不到了?
高手请帮帮忙吧。
第一块板51的程序如下:p0口的0,2,4,6与PT2262的d0,d1,d2,d3相连
ORG 0000H
START:JmP MAIN
ORG 30H
MAIN:MOV SP,#60H
ACALL INIT_RS232
WAIT:
JNB RI,WAIT
ClR RI
MOV A,SBUF
anl b,#0H
cpl a
rrc a
mov B.0,c;
rrc a
mov B.2,c
rrc a
mov B.4,c
rrc a
mov B.6,c
mov p0,B
INIT_RS232:
MOV SCON,#01010000B
MOV PCON,#00000000B
MOV TMOD,#00100000B
MOV TH1,#0FDH
MOV TL1,#0FDH
SETB TR1
CLR 04H
RET
end
第二块板的接收程序如下:
ORG 0000H
AJMP START
ORG 0003H
AJMP INT_RUN
ORG 0100H
START:MOV SP,#60H
MOV p0,#11111111B
SETB EA
SETB EX0
SETB PX0
HERE:AJMP HERE
INT_RUN:MOV A,P1
RR A
RR A
RR A
CPL A
MOV P0,A
CLR
RETI
请问程序错在哪里?
|
|