秋月電子通商の GPS受信機キットと一昔前に同通商から購入した多機能アラーム時計キットVER-2(現在はVER-2改)とを組合わせてGPS時計を作成しました。
電源電圧は5V(ACアダプター)です。回路図を以下に示します。
多機能アラーム時計キットVER-2の説明書に書かれてある回路図を以下に示します。赤線で囲まれた部分の部品だけを使用します(VER-2改の場合も相当する部分があります)。なお、キットについてくる基板から、4つの7セグメントLEDが乗る基板部分を切り出しておきます。
次の写真はGPS時計の内部の様子です。回路の主要部分はユニバーサル基板(Takasu IC-701-72)上に組んでいます。ケースにはタカチ電機工業のTW13-5-13G(W125 x D125 x H45)を使用しています。また、4つの7セグメントLEDの前面は100円ショップで購入した黒半透明の下敷きから切り出したもので覆っています。
1.PIC用のファームウェアをコンパイルするために MPLAB X IDE v5.50をインストールした後、MPLAB XC8 Compiler v2.32をインストールしておきます。さらに MPLAB® Code Configurator (MCC)もインストールしておきます。
2.PICに書き込むファームウェアはUART25K.X.zipです。3.UART25K.X.zipを解凍して出てくるUART25K.XフォルダーをMPLABXProjectsフォルダー(私の場合はC:\Users\yts\MPLABXProjects)の中に入れ、 MPLAB X IDEにてPIC18F25K50にファームウェアを書き込みます。
4.GPS信号が受信できるようにGPS時計を窓際に置きます。そして、GPS時計に電源(ACアダプター)を繋いで暫く待つと、現在の時刻が表示されます。GPS時計の写真の中で矢印で示したSWで「時間・分」表示と「分・秒」表示とを切り替えることができます。
ファームウェアの中のファイルmain.cのなかに、set_bright関数があります。これは、7セグメントLEDに数字を表示する場合、数字の違いにより明るさが異なることが無いように、LEDの明るさを調整するための関数です。遅滞関数_delay(4000UL);の引数である数値を増やすと明るさが増します。