冗長命令
この命令は冗長命令です。次の命令に置き換わっています:FP_DEBOUNCE
この命令は、指定したビットについてフィルタ処理を行い、結果をビット単位で出力します。この命令は、スイッチのバウンスの影響を無効にする場合などに利用することができます。
入力
入力マスクに従ってビットをフィルタ処理する入力データ
どのビットをフィルタするかを指定する入力マスク
フィルタ時間をミリ秒単位で指定
出力
フィルタ後のデータ
F命令を使用する代わりに、対応するFP7命令を使用することをおすすめします。FP_DEBOUNCE
実行条件立ち上がり時は、s1_InputDataで指定した入力の全ビットを無条件に直接d_OutputDataに出力するため、バウンスの影響を回避することはできません。フィルタ処理時間は、最大1スキャンの誤差が発生する場合があります。
s1_InputDataで指定されたデータについて、s2_InputMaskで"1"となっているビットについて、フィルタ処理を行います。処理の結果は、d_OutputDataに出力します。フィルタ処理時間(0~30000ms)は、s3_FilterTimeに指定します。s2_InputMaskの内容が "0"ならば、フィルタ処理は行いません。s1_InputDataの対応するビットはそのまま、d_OutputDataに出力されます。
フィルタ処理時間後、あるいはs2_InputMaskに"0"を割り付けるなどしてマスキングを行わない場合などは、d_OutputDataのビットと値は、s1_InputDataと同じになります。
s2_InputMask = 1 (16#0001)の場合、ビット0はフィルタ処理され、それ以外のビットはフィルタ処理されません。s3_FilterTimeには、500msが指定されています。
s2_InputMask = 0 (16#0000)の場合、ビット0~Fはフィルタ処理されません。
s3_FilterTimeで指定したフィルタ処理時間が、0未満または30000を超えるとき
s3_FilterTimeで指定したフィルタ処理時間が、0未満または30000を超えるとき