● 実験テーマ8

「PIC24F_内蔵RTCC TEST」の顛末記

■ 2011.08.08
  <目的>
  ・RTCに関しては、今迄、I2C_RTCモジュールを使って既に実現しているが、PIC24Fに内蔵されているRTCC
   を扱うのは初めてである。
   後閑氏のPIC24F活用本に、内蔵RTCC(時計・カレンダ機能)の製作例が載っているので、これを自作のLCD
   ライブラリ、自作のPIC24Fトレーニング基板にカスタマイズしながら、アラーム機能も含めて把握できればと
   思っている。

  <後閑氏の記事と異なる部分>
  ・自作LCDライブラリを使う。
  ・LCDへの表示フォーマットを、右図のように変更(特に曜日表示を追加)
  ・後閑氏は、RTCC出力ピン(RB14と共存)を、1秒毎のLED反転(点滅)出力として使っているが、自作トレーニン
   グ基板は、RB14ポートとしてLCD-D4に使っているので、このLEDステータス表示は使用不可
   (単なる表示だけなので問題なし)
  ・CPUは、PIC24FJ64GA002を使用(後閑氏は、ポート数の多いPIC24F64GA004を使用)
  → ROM, RAM容量はM、同じなので問題ないと思われる。
  ・基板は、自作のPIC24Fトレーニング基板を改造し、手作りの時計用X'talモジュールを挿入することにより、
   内蔵RTCCの実験が可能なようにした。

  <RTCCの内部構成>
  ・参考までに、RTCCの内部構成を下図に示します。


■ 2011.08.16
  ・今日からデバッグ開始
  ・コンパイルは、1発で上手く行く。
   但し、何故か、コンパイル出力ファイル(OUTPUTダイアログ)の表示が、1部分、変な書体の斜め譜太文字(青)
   になってしまっている??
   Windows Meマシンへ、Excelをインストールしてから、おかしいので、そのせいかと思い、アンインストール→再
   起動したが症状変わらず。
   突然何が起こったのだろうか???
   Hexファイルは正常に生成されるので、実質作業に影響ないので、とりあえずこのまま進めることにする。
   MPLAB IDEを、再インストールするしかないのかな〜〜〜

  ・火入れ式
   @ LCDのイニシャルは掛かっている模様(2ライン設定で、全画面クリアされている。)
   A しかし、LCDには何も表示されない。
   B RTCC内部の、0.5秒クロックに同期している、T1割込みによるLED反転(0.5秒毎)は、上手く行っている。

  ・I2C_RTCの場合と比べて、RTCレジスタ(時刻・カレンダ値)が、16Bitで、年を除いて、2つのBCD値が2パック
   構成になっているため、char型にキャストしてから、自作サブルーチン(データ引数:char型)を呼ぶようにしたが、
   これでも上手く行かず。

  
・現在、RB14(RTCC出力ピンとの多重機能ピン)は、RTCC出力ピン有効にセットされているため、RB14単純出力ポート
   (LCDデータビット)として使用できなくなると思われる。
  → RCFGCAL = 0xAC00;  // RTCC出力ピン有効   を
     RCFGCAL = 0xA800;  // RTCC出力ピン無効   に修正したら
     LCD表示し、RTCCが動きだした。

 

 

 


■ 2011.08.17
  ・ALM動作確認→ イニシャル時に、ALM_LEDが点灯しているため動作確認しずらく(イニシャル時は消灯の方が自然)
   イニシャル字、明示的に消灯させた。
   その結果、下図に示す通り、思惑通りの動作が確認できた。


■ 2011.08.18
  ・今回の目的は、達せられたので、これで本件はクローズすることにした。


<最終回路図>
 ・こちらから、どうぞ→ 「PIC_RTCC(時計・カレンダー)回路図」
  尚、本回路図には、Line入力アンプとRS232C I/Fが書かれていますが、本テーマでは使用していません。

<最終ソース及び、ヘッダーファイル>
 ・こちらから、どうぞ→ RTCC_Check.c
               My_LCD_Lib.c
               My_LCD_Lib.h


← 実験テーマ1に戻る   TOP PAGEに戻る   実験テーマ9へ →