PIC16F1783を用いたオーブンタイマーの製作です
1秒から99分59秒までのタイマーが可能です
100V 15Aまでの機器を接続できます
1年ほど 使用して、家族からリクエストがありましたので、ソフトウエアの変更を行いました。
変更内容は、希望する時間をメモリに設定する機能がありましたが、固定値の3分、5分、7分にする。
これから、キーの配列は、左からリセット、10秒、1分、3分、5分、7分、10分、スタート/ストップとなります。
また、オーブンのそばで使用し、周囲温度が高温となり、LCDの表示がおかしくなるので、これを修正しました。PICのタイマー機能は、正常に動作しています。
修正内容は、タイマー動作の終了時、LCDの初期設定を行うようにしました。
外観
![](https://i0.wp.com/www.craft-design.yokohama/wp-content/uploads/2019/01/IMG_20190124_112736_resized_20190127_103411044-768x1024.jpg?resize=768%2C1024)
キーは左から リセット(緑)、10秒、1分、3分、5分、7分、10分、スタート/ストップ(黄) です。
![](https://i0.wp.com/www.craft-design.yokohama/wp-content/uploads/2019/01/IMG_20190124_112908_resized_20190127_103439342-1024x768.jpg?resize=1024%2C768)
ケースは、タカチ MB13-3-18、ヒートシンクは。秋月電子 Pー12537です。
下記の手書き図面は、古いタイプのキー配列です。
![](https://i1.wp.com/www.craft-design.yokohama/wp-content/uploads/2019/02/IMG_20190204_0001.jpg?fit=750%2C980&ssl=1)
下記は新キー配列です
![](https://i2.wp.com/www.craft-design.yokohama/wp-content/uploads/2020/01/oven_timer_new_key.gif?fit=750%2C530&ssl=1)
回路図(KiCADを使用)
oven_timer使用パーツ
メインボード(CPU、電源、ブザー、LEDなどが実装されている)
![](https://i0.wp.com/www.craft-design.yokohama/wp-content/uploads/2019/01/IMG_20181018_142851-1.jpg?resize=1020%2C586)
![](https://i0.wp.com/www.craft-design.yokohama/wp-content/uploads/2019/02/IMG_20190204_0011.jpg?fit=750%2C1000&ssl=1)
LCD(16キャラクタ、2行) PWB16230A(DMC16230:OPTREX)
このキャラクタLCDについては、ここを参照してください。
![](https://i0.wp.com/www.craft-design.yokohama/wp-content/uploads/2019/01/IMG_20181018_142916-1.jpg?resize=1022%2C653)
キーボード( 秋月電子:タクトスイッチ(大)10個セットを使用)
![](https://i0.wp.com/www.craft-design.yokohama/wp-content/uploads/2019/01/IMG_20181018_142944-1.jpg?resize=1022%2C325)
ソリッド・ステート・リレー(SSR)キット 35Aタイプ 秋月電子
![](https://i0.wp.com/www.craft-design.yokohama/wp-content/uploads/2019/01/IMG_20181018_143038-1-1024x442.jpg?resize=1024%2C442)
ブロック図
![](https://i0.wp.com/www.craft-design.yokohama/wp-content/uploads/2019/01/ブロック図.png?resize=888%2C563&ssl=1)
プログラム フローチャート
![](https://i2.wp.com/www.craft-design.yokohama/wp-content/uploads/2020/01/oven_timer_soft1.gif?fit=750%2C530&ssl=1)
![](https://i2.wp.com/www.craft-design.yokohama/wp-content/uploads/2020/01/oven_timer_soft2.gif?fit=750%2C530&ssl=1)
![](https://i0.wp.com/www.craft-design.yokohama/wp-content/uploads/2020/01/oven_timer_soft3.gif?fit=750%2C530&ssl=1)
![](https://i1.wp.com/www.craft-design.yokohama/wp-content/uploads/2020/01/oven_timer_soft4.gif?fit=750%2C530&ssl=1)
![](https://i2.wp.com/www.craft-design.yokohama/wp-content/uploads/2020/01/oven_timer_soft5-1.gif?fit=750%2C530&ssl=1)
![](https://i1.wp.com/www.craft-design.yokohama/wp-content/uploads/2020/01/oven_timer_soft6.gif?fit=750%2C530&ssl=1)
ソフトウエア
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);