'初期処理〜メインループ
NLOOP = 0
MAIN: 'メインループの先頭
NLOOP = NLOOP + 1
IF NLOOP = 25 THEN
GOSUB BATTERY_CHECK
NLOOP = 0
ENDIF
REMGET:
'リモコン等から操作入力を取込む処理
(省略)
action_proc:
'操作キーに応じてアクション分岐
(省略)
GOTO MAIN 'メインループの末端
'-----サブルーチン群----
BATTERY_CHECK: 'Battery check
i2 = AD(1) '3.3v voltage
IF i2 <= AD_BAT_OK THEN GOTO BAT_CHK_RTN
BAT_LOW:
IF i2 > AD_BAT_LOW THEN
'バッテリー交換アラーム後に動作停止
FOR i = 1 TO 10
OUT 52, 1 'LED off
MUSIC "CA"
DELAY 100
OUT 52, 0 'LED on
DELAY 100
NEXT i
END 'ロボ動作停止
ENDIF
'Vcc電圧降下中, 警告音+警告表示
OUT 52, 1 'LED off
MUSIC "AC"
DELAY 50
OUT 52, 0 'LED on
BAT_CHK_RTN:
RETURN
|