9月 292016
 

前回の「REX-USB61mk2で強化された機能(その4)」では、
REX-USB61mk2添付ソフトウェアのスクリプト実行アプリケーション USB61mk2_Script.exe
について紹介しました。

今回は、REX-USB61mk2用として新たにリリースされたレジスタ設定ツールのお話です。

[レジスタ設定ツール]とは、I2Cデバイス内にあるレジスタの読出しや設定を画面上から簡単に
行うことができるアプリケーションで、以下の特徴があります。
・I2Cデバイスの仕様書等にあるレジスタフィールドの表記と同様な表示が可能。
・I2Cデバイスのレジスタ表示詳細をXMLで記述、ユーザによるカスタマイズが可能。
・読み出したレジスタ値のCSVファイル保存が可能

それでは、以降でこのレジスタ設定ツールについて説明していきましょう。

I2Cのセンサーデバイスの多くは内部にいくつかのレジスタを持っています。
センサー動作を決めたり、測定値の取得のために内部レジスタへアクセスする必要があります。

通常、I2Cデバイスの仕様書を読み解いて、スクリプトを作成したり
ライブラリAPIを使ったプログラムを作成して、これらの制御を行います。

I2Cデバイスの仕様書にあるレジスタの説明ではよくレジスタマップ(レジスタ構成)や
レジスタフィールドの形式でそれらのレジスタについて説明しています。

以下は セイコーエプソンの RTC-8564NB の例です。

【レジスタ構成の例:セイコーエプソン社製 RTCC-8564NB】

Address Function Address Function
00h Control1
コントロールレジスタ1
08h Years
カレンダカウンタ[年]
01h Control2
コントロールレジスタ2
09h Minute Alarm
アラームレジスタ[分]
02h Seconds
時計カウンタ[秒]
0Ah Hour Alarm
アラームレジスタ[時]
03h Minutes
時計カウンタ[分]
0Bh Day Alarm
アラームレジスタ[日]
04h Hours
時計カウンタ[時]
0Ch Weekday Alarm
アラームレジスタ[曜]
05h Days
カレンダカウンタ[日]
0Dh CLKOUT frequency
CLKOUT出力 設定レジスタ
06h Weekdays
曜日カウンタ
0Eh Timer control
定周期タイマ割り込み機能 制御レジスタ
07h Month/Century
カレンダカウンタ[月]
0Fh Timer
定周期タイマ ダウンカウンタ


【レジスタフィールドの例:コントロールレジスタ1】

Address Function Bit7 Bit6 Bit5 Bit4 Bit3 Bit2 Bit1 Bit0
00h Control1 TEST 0 STOP 0 TEST 0 0 0

TESTビット [bit7, bit3] デバイスメーカーのTEST用で必ず “0” を書き込みます。
STOPビット [bit5] “1” をセットすると本デバイスのすべての動作が停止します。
“0” をセットすると、動作を再開(停止を解除)します。

レジスタ設定ツールではこのI2Cデバイス内レジスタをレジスタマップ、レジスタフィールド
の形式で画面上に表示することができます。
そして、各レジスタの値の読出しや書込みがレジスタマップ、レジスタフィールドの形式で行えます。

例えば、デバイス特性の理解やデバイスへの設定値を探す場合に
コマンドやパラメタをレジスタへ書き込み、その結果をレジスタから読み出して
フィードバックを確認しながら最適な値を決めていきます。

レジスタ設定ツールを使うとこのような作業が画面上から簡単に行えるようになります。

次ページでは、具体的にレジスタ設定ツールで RTC-8564NBを制御してみます。

次頁[2]へ続く…

 返信する

以下のHTML タグと属性が利用できます: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong>

(必須)

(必須)

*