今回も、以前のブログ「REX-USB61mk2で強化された機能(その4)」で使用した
RTC-8564NBが8ピンDIP用基板に実装された市販のリアルタイムクロックモジュールを使用します。
REX-USB61mk2 との接続については、以前のブログ「REX-USB61mk2で強化された機能(その4)」
を参考にしてください。
RTC-8564NBとの接続ができたら、レジスタ設定ツールを起動します。
起動すると最初に以下の画面が表示されます。
[レジスタ設定ファイルを開く]ボタンをクリックします。
レジスタ設定ファイルとは、レジスタマップ、スジスターフィールドをXMLで記述したもので
I2Cデバイスのデータシート等の仕様書に基づいて事前に作成しておく必要があります。
今回は、RTC-8564NB用にあらかじめ作成されたファイル[61mk2_REG_SETTING_RTC.xml]が用意されて
いますので、それを選択して読み出します。
XMLファイルが読み出されると定義されたレジスタマップが表示されます。
では、この画面からRTC-8564を制御してみます。
最初に、RTC-8564 の初期設定を行います。
(1) [レジスタアクセス開始(ON)]ボタンをクリックします。
(2) 時計の停止、割り込みイベントの停止を行い、
時計の日付、曜日および時刻に 2016年9月30日(金曜日)16時25分31秒を設定します。
アドレス | レジスタ | 設定値 | 説明 |
00h | Control1コントロールレジスタ1 | 20h | ビット5のSTOPをONにして時計を停止 |
01h | Control2コントロールレジスタ2 | 00h | 割り込みイベントを停止 | 02h | Seconds時計カウンタ[秒] | 31h | 31秒をBCD値で設定 |
03h | Minutes時計カウンタ[分] | 25h | 25分をBCD値で設定 |
04h | Hours時計カウンタ[時] | 16h | 16時をBCD値で設定 |
05h | Daysカレンダカウンタ[日] | 30h | 30日をBCD値で設定 |
06h | Weekdays曜日カウンタ | 05h | 金曜日 |
07h | Month/Centuryカレンダカウンタ[月] | 09h | 9月をBCD値で設定 |
08h | Yearsカレンダカウンタ[年] | 16h | 2016年の16をBCD値で設定 |
設定値を入力して[Enter]を押してデバイスへの書込みを行いますが、
この操作は各レジスタ毎に行います。
(3) 次に、クロックデータを1秒間隔で取得するために、[定期的なリード更新時間(秒)]に[1]を入力します。
そして、時計カウンタ(秒/分/時)の各レジスタの右側にある[□定期的にリードする]にチェックを入れます。
(4) 最後に、コントロールレジスタ1のビット5のSTOPをOFFにして、時計を開始しします。
時計が開始すると、1秒間隔で時計カウンタ(秒)レジスタが更新されていることが確認できます。
以上が、レジスタ設定ツールの基本的な動作です。
今回は、REX-USB61mk2用として新たにリリースされたレジスタ設定ツールを紹介しました。
そして、実際にRTC-8564NBを接続し動作させてみました。
次回は、このレジスタ設定ツール用にレジスタマップ、レジスターフィールドを定義するXMLファイル
について説明します。
「REX-USB61mk2の新機能 レジスタ設定ツール(その2)」に続く…
関連記事
SPI/I2C Serial EEPROMへのアクセスを簡単に(その1)
SPI/I2C Serial EEPROMへのアクセスを簡単に(その2)
SPI/I2C Serial EEPROMへのアクセスを簡単に(その3)
SPI/I2C Serial EEPROMへのアクセスを簡単に(その4)
SPI/I2C Serial EEPROMへのアクセスを簡単に(その5)
I2C RTCデバイスにアクセスする
I2C気圧センサーにアクセスする
機能が大幅に強化されたSPI/I2Cプロトコル・エミュレータが新登場!!!
REX-USB61mk2で強化された機能(その1)
REX-USB61mk2で強化された機能(その2)
REX-USB61mk2で強化された機能(その3)
REX-USB61mk2で強化された機能(その4)
REX-UBS61mk2の新機能 レジスタ設定ツール(その2)
REX-USB61mk2の新機能 EEPROM書込みユーティリティ
この記事で紹介した製品