MPC2000 Reference Manual [JAPANESE] [ENGLISH]
【コマンド】   【パルス発生】
【使い方】
INTA_ON,INTB_ON

INTA_ON 16 (0,X_A)
INTB_OFF 17 (0,U_A)
【書   式】 【機   能】
INTA_ON portn (PG,axis)
INTB_ON portn (PG,axis)

MPG-2314の割り込によるポートONもしくはOFF
【解   説】
INTA_ONは、MPG-2314のカウンタ比較検出 割り込みによりポートをオンします。
割り込みを作動させるためには、以下のコマンド設定が必要です。
●比較カウンタの設定 INSET axis CMP_PLS (もしくはCMP_CNT)
CMP_PLS = パルス位置 , CMP_CNT = エンコーダ・カウンタ位置
●割り込みの有効化 STOP axis C_MORE (もしくはC_LESS)
C_MORE Pls >= COMP+ , C_LESS PLs < COMP+
●比較値COMP+の設定
RANGE axis VAL1 dummy

以上の設定があり、カウンタ値がVAL1を超えると(C_MOREの場合)割り込みが発生し、INTA_ONで指定されたポートをONします。(OFFの場合はINTA_OFFを用いる)
割り込みが発生したあとは、関数RR3(axis)を読み出すことによって割り込みは解除されます。
ただし、解除する前に、RANGE設定によって比較値COMP+を条件の外に変更しておく必要があります。
初期化
INSET axis CMP_CNT /*比較カウンタの選択
STOP axis C_MORE /*割り込み比較条件設定
RANGE axis VAL1 dummy
a=RR3(axis) /* 割り込みをクリアしておく

実行順序としては、
RANGE axis VAL1 summy /* 条件を変えておく
a=RR3(axis) /*割り込みクリア
SWAP
INTA_ON port /*割り込みポート設定
WAIT SW(port) /*割り込み発生の検出
となります。
*RR3のaxisは、X_A,Y_A等の単一軸指定のみ意味を持ちます。

割り込みの解除は、INTA_ON VOID あるいは、INTA_OFF VOIDを実行します。
なお、割り込みには、INTB_ON,INTB_OFFもあり、INTA_と合わせて2つのPGの割り込みまで対応することができます。
サンプルプログラムは、移動500パルスごとに割り込みを発生させ、外部にタイミングトリガを出力します。
INTA_ON,_OFF,INTB_ON,_OFFは、ソフトウェアのタイミング待ちと異なり、正確に位置タイミングを出力することができます。

【MPG-3514】
MPG-3514はMPG-2314とレジスタ構造が異なるために、コマンドの与え方が異なります
初期化
INSET axis CMP_CNT|{C_MORE or C_LESS} リミット値 /*比較カウンタの選択|条件 リミット値
a=RR3(axis) /* 割り込みをクリアしておく

実行順序は、以下のとおりです
INSET axis CMP_CNT|{C_MORE or C_LESS} リミット値
a=RR3(axis)
INTA_ON port /*割り込みポート設定
WAIT SW(port) /*割り込み発生の検出
使用例は以下のようになります

OFF 1

INSET Y_A CMP_PLS|C_MORE 20000

dmy=RR3(Y_A)

INTB_ON 1 (0,Y_A)

  WAIT SW(1)==1






INTA_ON   VOID
PG 0
PG 0 1
PG 0 3
ACCEL 5000
CLRPOS
CLRPOS -1
INSET X_A CMP_PLS
DET_P=500
STOP X_A C_MORE
RANGE X_A DET_P 0
PG 0
FORK 1 *MPG
FORK 3 *MPG2
END
*MPG2
DO
INTA_ON 0 (0,X_A)
WAIT SW(0)
TIME 1
OFF 0
INC DET_P 500
RANGE X_A DET_P DET_P
A_=RR3(X_A)
TIME 5
LOOP
*MPG
RMVC X_A 1
END
  [LASTMODIFY]2019-08-21 16:31:26 [CREATEDATE]2008-07-04 20:01:27
MPC2000 Reference Manual -R5.11-   (C)2007 ACCEL Corp. all right reserved.