##特徴
- UART経由で簡易コマンドを使ってI2Cスレーブへのデータ送信および受信を行うことが出来ます。
- 送信するデータは可変長バイトデータ、および可変長半角文字列データに対応しています。
- 受信データの出力はHEX形式、バイナリー形式、ダンプ表示(デバッグ用)を指定出来ます。
- I2Cバスに接続しているI2Cデバイスを調べてそのデバイスのアドレスを表示する機能を有します。
##ハードウェア
回路図
VCCは3.3Vです。
SDA、SCLは内部プルアップ抵抗を利用しています。
利用部品
- マイコンARM Cortex-M0(Flash 3KB, SRAM 1KB) LPC810(LPC810M021FN8) 1個
- タクトスイッチ 2個 リセット用x1、ISP用x1
- USB-UARTモジュール(3.3V) 1個 ※プログラム書き込みおよびPCからの利用時に必要
##開発環境
本モジュール用プログラムの開発はWindows 10上にて行っています。
開発には次のソフトウェアを利用しています。
- LPC Xpresso v7.6.2 (+ライブラリ: CMSIS_CORE_LPC8xx)
- Switch Matrix tool
- Flash Magic
##ファームウェア(プログラム)の書き込み方法
UART2I2C/Release/にあるUART2I2C.binまたはUART2I2C.hexがプログラム本体です。
書き込みツールFlash Magic等を使って書き込みを行って下さい。
書き込み方法は下記を参照して下さい。
LPCZone:NXP LPCマイコン情報 - LPC810のフラッシュへの書き込みをシリアルインターフェースで行なう
http://www.nxp-lpc.com/programming_note/note3.html
##UART-I2Cブリッジの使い方
-
シリアル通信(UART)条件
-
3.3V、通信速度 115200bps、8ビット、パリティ none、ストップビット 1bit
-
受信改行コード(ホスト->本モジュール) CR+LF または LF(CRは無視しています)
-
送信改行コード(本モジュール->ホスト) CR+LF(デフォルト)、コマンドによりLFに設定可能
-
I2C接続条件
-
3.3V、スレーブアドレス指定 7ビット
@v[改行] を入力してバージョン情報が正しく表示出来ることを確認します。
(ターミナルソフト利用時は、ローカルエコーON、送信・受信の改行コードをCR+LFに設定)
または@d[[改行] を入力して戻り値'00'が返されることを確認します。
利用可能なコマンドは下記の通りです。
コマンドの詳細については下記を参照下さい。
ART-I2Cブリッジコマンド仕様書V200L1.pdf
- 接続しているI2Cスレーブデバイスの検出
- 有機ELキャラクタディスプレイモジュール(SO1602AWWB-UC-WB-U)
- 液晶キャラクタディスプレイモジュール(ACM1602N1-FLW-FBW)
- I2C RTCモジュール(DS1307+AT2432)