USB-ISSをTera Termでテストする方法

USBをI2Cに変換する、Devantech の USB-ISS は、下記でお求めになれます。

https://www.elefine.jp/SHOP/USB-ISS.html

USB-ISS、USB-ISS-SV は、 0x5A, 0x01 のような16進数(バイナリーデータ)でデータ通信を行う必要があります。
シリアル通信のテストが簡単に行え、よく使われるターミナルソフトTera Termでは、通常、文字コードが送られます。例えば、A のキーを押すと、16進数の 41 が送信されます。
それが、設定を行うことにより、16進数での送受信、表示ができるようになります。

設定ファイルの変更

Tera Term実行ファイルが入っているフォルダーに入っている設定ファイルをテキストエディタ―で開きます。

C:¥Program Files¥teraterm¥TERATERM.INI

その中の
Debug=off

Debug=on
にして、デバッグモードを有効にします。

保存後、Tera Termを起動します。

16進数表示

Shit + Esc (Shiftキーを押しながらEscキーを押す)でデバッグモードになります。押すごとに、
デバッグモード -> 16進デバッグモード -> 非表示 -> 通常表示
の順に切り替わります。
その中の 「16進デバッグモード 」を使用します。すると、下記のように16進数で表示されるようになります。ローカルエコーをONにすると、キーを押すたびにキーコードが表示されます。

16進数データの送信

USB-ISSを使うには、01 なども送る必要があります。Ctrl を押しながら、A を押すと 01 を送ることもできますが、わかりにくいのでマクロを使ったほうが便利です。

テキストエディタ―で下記のような内容のファイルを作成し、
USB-ISS_Version.ttl
というようなファイル名で保存します。

send $5A$01

5A 01 は、USB-ISSのファームウェアのバージョンを確認するためのコマンドです。

Tera Termのメニューの コントロール → マクロでマクロの実行ができます。

先ほど保存したファイルを選択します。

16進数(バイナリーデータ)が送信され、USB-ISSからの返信が表示されます。
07 07 40 が返信です。

コマンドごとにマクロファイルを作成することにより、USB-ISSの設定、I2Cデバイスからの読み出し等を行うことができます。

PoKeys57Eで温度センサー入力を行う方法

PoKeys57E にDTH11、DTH22等の1-Wire温度センサーを接続し、温度測定を行うことができます。
PoKeys57E は、下記でお買いお求めいただけます。https://www.elefine.jp/SHOP/PoKeys57E.html

ここでは、下記のDHT22の接続の仕方を説明します。https://www.elefine.jp/SHOP/SN-DHT22.html

接続

DHTとPoKeys57Eは、下記のように接続します。
DHT22 の1番ピン Pokeys57E の+3.3V 端子
DHT22 の2番ピン Pokeys57E の 1 端子
DHT22 の4番ピン Pokeys57E の GND端子

DHT22 の1番と2番を5.1kΩ、または、4.7kΩの抵抗を介して接続して、プルアップを行ってください。

PoKeys57Eの設定

PoKeys configuration の上部メニュー、Peripherals の Easy Sensors を選択します。

2. EasySesors setup ウィンドウが表示されます。
Add DHT-xx 1-Wire sensor ボタンをクリックします。

3. PoKeys Pin は、Pin 1、Device type は、DHT22 / AM2302 を選択します。

4. Finish をクリックします。

5. 下図のようにリストに追加されますので、Send to device ボタンをクリックして、設定内容を Pokeys57Eへ転送します。

6. Refresh values をクリックすると、温度が表示されます。

Modbus /TCPのスレーブ設定

温度センサー入力値は、Modbus/TCPのスレーブとして、 Modbus/TCP マスターから読み出すことができます。

メニュー、Deviceの中の Modbus configuration を選択します。

Sensors の Read にチェックを付けて、Close ボタンをクリックします。

メインウィンドウの Send to device ボタンをクリックして、設定内容をPokeys57Eへ書き込みます。

センサーの入力値は、Modbusのレジスターアドレス、400から499で読み出すことができます。
ただし、ProfiLabの場合は、401からのアドレスを設定します。

ProfiLabからは、Modbus/TCP-Read Input Registers を使って、読み出すことができます。
設定例 センサーID 0の読み出し

回路例 入力値を100で割った値を表示させます。