3.5.1 アラームクロックの作成
1.作成時期
2012/8/下旬〜2012/9/中旬 2.作成日数 3週間 3.実験,作成 1.部品,回路について 部品,マイコン回路は、"3.4.8.データログ温湿度計の実験"のI2Cリアルタイムクロックモジュール, キーパッド, LCD, 電源, リセット(タクトSWは削除)回路を使用し、基板に組み込める小型の圧電ブザー, バックライト付きLCDを追加しました。 又、ケースはタカチの"MB-4"にしました。尚、今回作成したアラームクロックのパーツは、共立エレショップと秋月電子通商で 全て揃います。 ○参考書籍 ・C言語で作るPIC電子工作(CQ出版社) ・PICによるホーム・コントロール工作入門(CQ出版社) ![]() 2.マイコンプログラムについて プログラミングツールはFEDのWIZ-C Pro(Ver.17)を使用しました。プログラム処理について、0.1秒周期の割り込みを発生させて、 0.5秒周期でI2Cリアルタイムクロックモジュールのアクセス, PIC内蔵EEPROMのアクセス, LCD表示, アラームの断続音の処理等を 行っています。又、PIC内蔵EEPROMにはアラーム時刻の時,分(2バイト)のみを記録しています。尚、アラームクロックプログラムは、 "3.4.8.データログ温湿度計の実験"を参考にして作成しました。 尚、コンパイルについて、割り込みタイプの変更(クイック割り込み→通常割り込み:アプリケーションデザイナーを使用しない設定 ("Use Application Designer"のチェックを外す)で、"xxx.main.c"内の"QuickInt = 1"を"NormalInt = 1"に変更して再コンパイル)と、 スタックオプションの変更(スタックサイズを増やす:"Current Project Options"のOptimisations"の"Use PIC Call Stack"のチェックを 外して再コンパイル)を行いました。変更方法の詳細は、"PICによるホーム・コントロール工作入門(CQ出版社)"のColumn1-3, Column1-5を参照してください。 ○アプリケーションデザイナ設定 ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ○マイコンプログラム ・プログラムリスト(ALARMCLOCK_User.c) ・プログラムリスト(I2C.c) ・プログラムリスト(I2C.h) ・WIZ-C(Ver.17)プロジェクト(ALARMCLOCK:03050101P.LZH) 3.以下の写真について 1枚目のパソコン画面は、PICマイコンのプログラミング環境です。自作パソコンのWindows7(32bit)上のWIZ-C Pro(Ver.17)と 秋月電子通商のPICプログラマを使用しました。2〜10枚目の写真は、アラームクロック内部の写真です。ユニバーサル基板と ケースに取り付けたパーツはピンヘッダーとピンソケットを使って配線しました。又、ケースのカバーには、ブザー音用の穴を開け、 ケースの底面にはゴム足を付けました。11〜14枚目の写真は、LCDバックライトSWをONにしたアラームクロックのLCD表示です。 11枚目はアラームSWがOFFの場合の表示モードで、12枚目はアラームSWがONの場合の表示モードです。13枚目は日時設定モードで、 14枚目はアラーム時刻設定モードです。15枚目の写真は、LCDバックライトSWをOFFにしたアラームクロックのLCD表示です。 16,17枚目は運用中の写真です。 ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() 4.感想 今回は、"3.4.8.データログ温湿度計の実験"を参考にしてアラームクロックを作成しました。 I2Cリアルタイムクロックモジュールから常に時計データを読込み、設定時刻のアラームを鳴らすだけの機能にしました。 とても使いやすく実用的なアラームクロックが作成できました。今後も実用的な電子工作を行います。 トップページヘもどる |