EA機能 / I2Cフラッシュメモリ書込み

 
  I2Cを分析(=リードのみ)できるロジアナは存在しますが、当機能はライトもできます。   I2C リード&ライトできるロジアナは当製品のみ  当社調査 2019/1



●例: I2Cフラッシュメモリのライト、リード



本EA機能の使用例として、I2Cフラッシュメモリを
ライトしてみます

I2Cフラッシュメモリを搭載した市販汎用ブレッドボードを本EA機能で接続しました。メモリは、アトメル社-AT24C02
本機LogicMOTHERからの接続は、SCL, SDA の2信号とGNDの3本
ブレッドボードは、中央に8ピンのフラッシュメモリをのせて、左端のツイスト線で、2.5Vの電源を入力しています。SCL, SDA は2Kでプルアップ。


I2Cは2線ですが少し複雑なシーケンスです。本EA機能を実証するには特性上適していますので使いました。以下I2Cの特徴です。(詳細はI2C仕様参照)
・双方向同期式
・状態遷移が数種ある




シーケンスの説明


ソースとなるテキストデータを作成します。エディタで簡単にできます。(別オプション信号発生で採用されている方式、EAも同じ方式です。参考
本機に作成したデータをダウンロードします。この時点では、実行されておらず、外部との接続は全て
HIZ状態。
実行すると、
出力指定部分は出力され、入力指定部分は入力し、並行して動作するロジアナがそれらを同時にサンプリングします。
ソースとなるテキストデータは、プログラム不要、単に 1, 0 をベタ書きすればその通りに入出力できる


データ作成−ライト


データ =
01000010 をライトすることにします。I2Cフォーマットでシリアルパターンを作成します。(メモリのデータシートに準拠)
ACK はデバイスが出力し本機への入力になるので、
HIZ として作成   ソースのテキストデータ 

この方式からわかるようにプロトコル自体を作成できるので、I2C以外でもほぼ制限なく作れます。独自プロトコルでも対応できます。(EA機能仕様範囲内)



※波形色は、水色、ピンク色、青色のIO種別で表示されます。上の波形中の黄色文字は説明用追記で表示されません





実行−ライト

データ =
01000010 のライトを実行します
ACK は正しく実行されるとデバイスが L を出力し本機に入力されます。実行で実際に、
HIZ → L に変化しました。(出力と入力が同時表示されています)
3個のACKが正しく応答されているので、データのライトもできているはずなので、次にリードして確かめます






データ作成−リード

リードデータはデバイスからの入力になるので、
HIZ として作成
リードデータの直前のACKは、デバイスからの入力になるので、
HIZ。リードデータの直後のACKは、本機からの出力になるので、HIZでなく Hです。






実行−リード

先にライトしたデータ =
01000010 がリードできています。SCL↑がSDA有効部です。(出力と入力が同時表示されています)
本EA機能が接続した外部機器を制御できたわけです




入出力の変化点は同期しています
中間に意図的に
HIZ を挿入することができます(幅自由)
バスの衝突を考慮する必要がある場合これで対応できます


一般にI2Cデバイスは、変化点でHIZ領域を持っているのでそこで変化させれば特に制御側はHIZを挿入しなくても問題ありません
入力指定でも構いません。今回は参考用に付加しました。(詳細はI2C仕様参照)



フラッシュROMライター ?


このブレッドボードはとりあえず実験用ですが、I2C系汎用のフラッシュROMライターかのようになってしまいました
メーカーによってピン位置が変わってもICクリップなのでつかみ直せます
※希望者には、このブレッドボードを有償提供します(電源なし、メモリ搭載、配線済、回路図)

どんな型番のフラッシュメモリもライトできるはずです。I2Cに限らず、SPI、パラレル...
IO数には32本の制約はあります。IO電圧は、VCC 1.5V 〜 5V系信号 まで対応します。



※当ロジックアナライザーは、デルタコア社オリジナル開発です。
記載されている各名称、製品名は、各社の商標、または、登録商標です。

Copyright (c)  デルタコア All Rights Reserved.