mbed(6) LPC1768で、押しボタンスイッチの押下を検出


 LPC1768ボードで、押しボタンスイッチの押下検出を試しました。
 押しボタンスイッチの、チャタリングを取り除く事と、押下エッジ検出を目標とします。

 H8やR8C等のマイコンを直接使う場合は、タイマを制御うして周期処理ができたのですが、mbedでは取り扱い方法が判りません。
 mbedのライブラリで探しましたが、適切なのが見つかりません。 割り込みは、デバッグがややこしいので使いたくありません。

 いろいろ考えたのですが、使いたくない定周期割り込関数を使うことにしました。

●構成と結果

 写真は、試したものですです。
 中央のmbed押しボタンスイッチと液晶表示器を接続しました。
 押しボタンスイッチ押下毎に液晶表示器のカウント値を更新しています。







●プログラム

 プログラムに、定周期割り込を使った押しボタンスイッチのチャタリング除去と、押下エッジ検出関係のコメントを付けました。

 大きな流れは、
 @定周期割り込で、押しボタンスイッチの押下状況をシフトレジスタに取り込み、チャタリング除去と、押下エッジ検出をします。
  押下エッジ検出なら、フラグを立てます。
 Amain関数で、押下エッジ検出フラグがONか調べ、ONならカウンタを進めて液晶表示器を更新します。









ホームへ戻る