セミオートとバイナリー処理の内部を少しだけ公開!

機能紹介

陽炎シリーズでのバイナリートリガーは何型から搭載してた?

ご存じの方もいると思いますが、2018年発売の陽炎2型C(改)と陽炎3型C(改)から搭載していました。

当時は日本国内で販売されている電子トリガーで、バイナリートリガーを搭載している商品は陽炎だけでした。
最近では海外製の電子トリガーでもバイナリートリガーを搭載するようになってきました。

陽炎シリーズでバイナリートリガーを搭載しているモデル

陽炎2型C、陽炎2型C+、陽炎2型E(現行モデル)
陽炎3型C、陽炎3型D
陽炎6型+、陽炎6型E(現行モデル)
陽炎7型+、陽炎7型E(現行モデル)
陽炎8型改(現行モデル)
陽炎9型E(現行モデル)

セミオートとバイナリー処理の流れ

セミオートの発砲動作(1回のトリガー操作で1回発砲)

  1. トリガーを引く
  2. 発砲する
  3. セレクターがSEMIならトリガー長引きまで待つ
  4. 長引きだったらプログラム設定、放したら発砲完了

バイナリーの発砲動作(1回のトリガー操作で2回発砲)

  1. トリガーを引く
  2. 発砲する
  3. セレクターがBINARYならトリガーを放すまで待つ
  4. トリガーを放したら発砲する
  5. 発砲完了

セミオートとバイナリーの発砲処理部分(抜粋)

少しだけコメント書きました。

; セミオートの発砲処理と後処理
PAGESEL _shoot
CALL _shoot
PAGESEL $
BANKSEL r0x11B1
MOVWF r0x11B1
MOVF r0x11B1,W
BTFSS STATUS,2
GOTO _01129_DS_       ; 発砲処理に問題があった場合ジャンプ

; セレクターはバイナリーか?
MOVLW 0x00
PAGESEL _Get_Fire_Mode
CALL _Get_Fire_Mode
PAGESEL $
BANKSEL r0x11B1
MOVWF r0x11B1
XORLW 0x04
BTFSS STATUS,2
GOTO _01126_DS_      ; バイナリー以外ならジャンプ

; セレクターがバイナリーならトリガーオフまで停止
PAGESEL _TrgOff
CALL _TrgOff
PAGESEL $

; トリガーオフで発砲処理
PAGESEL _shoot
CALL _shoot
PAGESEL $
GOTO _01133_DS_

_01126_DS_:
; トリガー長引き処理
MOVLW 0x00
MOVWF STK01
MOVLW 0xd0
MOVWF STK00
MOVLW 0x07
PAGESEL _ChkTrgLong
CALL _ChkTrgLong
PAGESEL $
BANKSEL r0x11B1
MOVWF r0x11B1
MOVF r0x11B1,W
BTFSC STATUS,2
GOTO _01133_DS_      ; 長引きが完了する前にトリガーオフされたらジャンプ

; プログラム設定へ
PAGESEL _setting
CALL _setting
PAGESEL $
BANKSEL r0x11B1
MOVWF r0x11B1
XORLW 0x02
BTFSC STATUS,2      ; 戻り値で再起動または設定キャンセル
GOTO _01166_DS_      ; 再起動
GOTO _01133_DS_      ; 設定キャンセル

_01129_DS_:
; 発砲処理に問題があった場合トリガーオフになるまで待つ
PAGESEL _TrgOff
CALL _TrgOff
PAGESEL $

_01133_DS_:      ; セミオートまたはバイナリーの発砲処理完了

個人で電子トリガーを研究、製作されている方々の参考になれば幸いです。

陽炎シリーズのご購入はこちら

タイトルとURLをコピーしました