;レーダープログラム
;
;（有）姫路ソフトワークス
;
; 最も近い方向を検出し上体をその方向に向ける。(検出範囲左右45度)
;
;検索開始位置記録
V25=0-450
;検索ステップ量
V26=10
;検索終了位置
V27=450
;短距離初期値
V28=0
;短距離検索位置
V29=V25
;中距離初期値
V30=0
;中距離探知位置
V31=V25
:RADARMAINLOOP1
MOVE(X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,V25,X,X,X,X,X,1000)
:RADARLOOP1
;
;中距離センサーチェック
;
MOVE(X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,V25,X,X,X,X,X,1)
V11=0
V13=0
V10=INPUTADC(3)
V12=INPUTADC(7)
V11=V11+V10
V13=V13+V12
WAIT(1)
V10=INPUTADC(3)
V12=INPUTADC(7)
V11=V11+V10
V13=V13+V12
;
JUMPIF(V10,<,V31,MIDRADARSKIP1)
;位置記録
V31=V10
V30=V25
;
:MIDRADARSKIP1
JUMPIF(V13,<,V28,SHTRADARSKIP1)
;位置記録
V28=V13
V29=V25
:SHTRADARSKIP1
V25=V25+V26
JUMPIF(V25,<=,V27,RADARLOOP1)
JUMPIF(V28,>=,V31,SETSHORT1)
JUMPIF(V31,<,5,SETSKIP1)
:SETMID1
MOVE(X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,V30,X,X,X,X,X,1200)
V01=R19
JUMP(RADAREXIT1)

:SETSHORT1
JUMPIF(V28,<,5,SETSKIP1)
MOVE(X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,V29,X,X,X,X,X,1200)
V01=R19
JUMP(RADAREXIT1)

:SETSKIP1
MOVE(X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,0,X,X,X,X,X,1200)
V01=R19
:RADAREXIT1




