UP
(周波数)カウンタを作る
機能
PC4に入力されたパルスを1秒または10秒間カウントするという単純なもの。
カウンタは16bit(65535まで)。
青ボタンを押すとカウント時間が交互に1秒と10秒に切り替わる。
10秒時には一番下の液晶バーが表示される。カウントが更新されるごとに
下から2番目の液晶バーがON/OFFする。
ハードウェア
実際には負の小パルスを数えたかったので入力段は
こんな感じのを作ったが3.3Vロジックのパルスなら
直接PC4に入れるだけで作るものはない。
プログラム概要
PC4の立ち上がりでカウント用変数をカウントアップ、
RTC WAKEUPによる1秒ごとの割り込みでカウント用変数を退避、リセットし
更新フラグ用変数をセット。メインのループでは更新フラグを監視、
セットされていたら退避されたカウント数をLCDに表示、更新フラグをリセット
(1秒の場合)。
discoveryではシステムクロックは内部発振、RTCは外部Xtalで作られて
いるのでシステムクロックの分周ではなくRTCによる割り込みを使ったほうが
正確。
プロジェクト一式(zipファイル)mcount.zip
2012.02
mm@ils.uec.ac.jp