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などが実装されている)

bty

LCD(16キャラクタ、2行) PWB16230A(DMC16230:OPTREX)

このキャラクタLCDについては、ここを参照してください。

bty

キーボード( 秋月電子:タクトスイッチ(大)10個セットを使用)

bty

ソリッド・ステート・リレー(SSR)キット 35Aタイプ 秋月電子

bty

ブロック図

プログラム フローチャート

ソフトウエア

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);