作者king53719 (伟仔)
看板ASM
标题电脑(VB)经由MAX-232与8051沟通上问题
时间Mon Mar 12 20:51:06 2007
HI, 我有一个8051跟rs232沟通上的问题,想麻烦请教各位!
我是利用vb经由rs232在经由MAX-232转换位准传送到8051。
我主要是在CASE "A"中出现问题,其余动作正常,当我从VB中传出ASCII码1
,也就是要执行 CASE "A"中让P0.2的LED导通(亮),但是没辨法亮,
其余经由VB传出的ASCII码执行的动作正常,麻烦您帮我一下..谢谢!
以下是我8051的程式!
MOV R5,#25
CALL DELAYms
CPL P0.0
;-------------------------------;
WAIT: JNB RI,WAIT
CPL P0.1
CLR RI
MOV A,SBUF
;-------------------------------;
;--SELECT CASE------------------;
;--CASE "A"---------------------;
MA:
CJNE A,#1,MB
CPL P0.2
JMP MEND
;--CASE "B"---------------------;
MB:
CJNE A,#2,MC
MOV R1,#10
MBLOOP:
CPL P0.3
MOV R5,#25
CALL DELAYms
CPL P0.3
MOV R5,#25
CALL DELAYms
DJNZ R1,HBLOOP
JMP HEND
;--CASE "C"----------------------;
MC:
CJNE A,#3,MEND
MOV R1,#10
MCLOOP:
CPL P0.4
MOV R5,#50
CALL DELAYms
CPL P0.4
MOV R5,#50
CALL DELAYms
DJNZ R1,MCLOOP
JMP MEND
;--CASE "D"----------------------;
;--CASE "E"----------------------;
;--CASE ELSE---------------------;
MEND:
CPL PO.2
MOV R5,#50
CALL DELAYms
CPL PO.1
JMP WAIT
;--CASE END-----------------------;
;---------以下为副程式------------;
;---------------------------------;
INIT_RS232:
MOV TMOD,#20H
MOV TH1,#0E8H
SETB TR1
MOV SCON,
#01010000B
RET
;----------------------------------;
DELAYms:
MOV R6,#100
DELAYm : MOV R7,#100
DJNZ R7,$
DJNZ R6,DELAYm
DJNZ R5,DELAYms
RET
;----------------------------------;
END
;----------------------------------;
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 163.15.220.202
1F:→ sintsu:要不要先做的debug key检查led是否正常先? 03/13 18:05