[問題] 有關8051和電腦之間傳輸的問題
把程式做省略
其中 SET_BPS 是RS232的設定
另外 CLOSE
STRONG
MEAD
LIGHT
都是子程式 (無關我的問題所以沒PO出來)
此程式設計構想是
當我電腦輸入8051是0時 跑CLOSE子程式 (溝通的程式用LABVIEW)
當我電腦輸入8051是1時 跑STRONG子程式
當我電腦輸入8051是2時 跑MEAD子程式
當我電腦輸入8051是3時 跑LIGHT子程式
如果沒有符合以上條件 程式跑完回到START1繼續等待輸入
但是實際情況是
我輸入2 12 22 是跑LIGHT
我輸入6 16 26 是跑MEAD
其他數字都是等待繼續輸入
懷疑是START1出錯
可是找不出原因
不知道是否有其他人有類似經驗可以分享問題
補充一下 我的四個子程式結束會回到START1開頭
------------------------以下是程式碼 有省略過了
SIG REG P1.0 ;
ORG 0000H ;
START: MOV R0,#FFH ;
$1: DJNZ R0,$1 ;
MOV SP,#1AH ;
CALL SET_BPS
CLR RI
LR TI
START1: CLR P1.2
CLR P1.3
CLR P1.4
CLR P1.5
CLR SIG
JNB RI,START1 ;等待資料輸入
CLR RI
MOV A,SBUF
SUBB A,#0030H
JZ CLOSE
SUBB A,#0001H
JZ STRONG
SUBB A,#0001H
JZ MEAD
SUBB A,#0001H
JZ LIGHT
LJMP START1
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 140.114.57.22
※ 編輯: gnayiew 來自: 140.114.57.22 (04/06 22:23)
推
04/07 13:20, , 1F
04/07 13:20, 1F
→
04/07 14:52, , 2F
04/07 14:52, 2F
ASM 近期熱門文章
PTT數位生活區 即時熱門文章