PIC16F1783を用いたオーブンタイマーの製作です
1秒から99分59秒までのタイマーが可能です
100V 15Aまでの機器を接続できます
1年ほど 使用して、家族からリクエストがありましたので、ソフトウエアの変更を行いました。
変更内容は、希望する時間をメモリに設定する機能がありましたが、固定値の3分、5分、7分にする。
これから、キーの配列は、左からリセット、10秒、1分、3分、5分、7分、10分、スタート/ストップとなります。
また、オーブンのそばで使用し、周囲温度が高温となり、LCDの表示がおかしくなるので、これを修正しました。PICのタイマー機能は、正常に動作しています。
修正内容は、タイマー動作の終了時、LCDの初期設定を行うようにしました。
外観
キーは左から リセット(緑)、10秒、1分、3分、5分、7分、10分、スタート/ストップ(黄) です。
ケースは、タカチ MB13-3-18、ヒートシンクは。秋月電子 Pー12537です。
下記の手書き図面は、古いタイプのキー配列です。
下記は新キー配列です
回路図(KiCADを使用)
oven_timer使用パーツ
メインボード(CPU、電源、ブザー、LEDなどが実装されている)
LCD(16キャラクタ、2行) PWB16230A(DMC16230:OPTREX)
このキャラクタLCDについては、ここを参照してください。
キーボード( 秋月電子:タクトスイッチ(大)10個セットを使用)
ソリッド・ステート・リレー(SSR)キット 35Aタイプ 秋月電子
ブロック図
プログラム フローチャート
ソフトウエア
Oven Timer
PIC16F EEPROMの使い方
1)EEPROM初期化(8バイト:8番地)
__EEPROM_DATA(0,0,0,0,0,0,0,0);
2)EEPROM書き込み
(memory_L,memory_Uの値をEEPROM0,1番地に格納)
__EEPROM_WRITE(0,memory_L);
__EEPROM_WRITE(1,memory_U);
3)EEPROM読み出し
(EEPROM0,1番地の値をmemory_L、Uに格納)
__memory_L = EEPROM_READ(0);
__memory_U = EEPROM_READ(1);