「さん、ハイッ」ペダル
「さん、ハイッ」ペダル
ほとんど私信
id:r0r0さんが「さん、ハイッ」ペダルを組み立てておられる(id:r0r0:20060302:1141310971)。
曰く、
実はチャタリング対策に200Hzのローパスフィルターなんて組み込んでみたんですけれど、なかなかどうして誤作動しまくりで楽しいですな・・・orz
そうなんですよ、あのプログラムだとスイッチの性能に依存した動作になってしまいます。
実は筆者の試作でも、秋月で買ったタクトスイッチでは動作したけれど、FS-5U に組み込むとチャタリングにより誤動作したという経験があって、微妙にパラメータを弄りました。id:r0r0さんの使われたゲーム用(?)スイッチだとタクトスイッチよりもチャタリング/バウンス時間が長いと思われます。
すっかり忘れていますが、ざっと見たところ*1、IDLE/STABLE→TRANS3→THREE の遷移では ペダルが踏まれたらTimer0(8MHzを1/1024で8bitカウント)をスタートしてTRANS3へ移り、Timer0 割り込みが6回呼ばれたらTHREEへ遷移しているので、
1/8MHz * 1024 * 256 * 6 = 196.6msec
の間にスイッチのチャタリング/バウンスが収まれば大丈夫。
対して THREE→TRAN4→FOUR1 では、ペダルが踏まれたらTimer0(8MHzを1/1024で8bitカウント)をスタートしてTRANS4へ移りますが、1回の割り込みだけでFOUR1へ移行しています。
実際の動作と照らし合わせて、3拍目のペダル踏み、4拍目のペダル踏み どちらで伝わっていない感じでしょうか?
ところで
「さん、ハイッ」ペダルへのリンクはこちら:id:Chuck:20050711#p1