SDOTECK HOME

  • ご参考になりましたか?
    SDOTECKブログでは、みなさんからのフィードバックをお待ちしています。 説明が解らなかったり、もっと詳しく解説してほしいポイント・テーマがありましたら、お気軽にsudoteck@gmail.com までメールくださるか、記事にコメントして下さい。
  • -

RF PowerAMP なら

  • RF AMP DESIGN

HEX calc pro 1.00

  • HEX calc pro ver1.00
    エンジニア向けの16進と浮動小数点を混在して入力出来る計算機 。 Version 1.00 高機能な 16進電卓や科学計算電卓はありますが、いちいちモードを切り替えなければならず、最大の問題は16進数と小数点値を同時に使用出来ないことです。
    詳しい説明はここ
    iTunes ではここまで

ATT calc

  • ATT calc ver2.00
    iPhone 用 RF アッテネーター計算ソフトです。  RF開発エンジニアに必要な、 dBm - W 換算機能をはじめ、π型やT型の ATTを 設計する上で、必要な dB値から抵抗値を算出する機能と、 E24系列の抵抗値を 使用したときの減衰量(dB)と整合インピーダンス(Ω) が表示されますので、どの 抵抗値の組み合わせがよいか検討できます。  また、正確な値を必要とする場合に2個のE24系列抵抗を並列接続して理想の値を 求める計算機能も持っています。  操作はピッカーホイールを回すだけですので、実験中でも片手で簡単に操作 できます。

FIL Calc

  •  LPF 計算機
    RFエンジニア向けフィルター計算ソフト LPFやHPFの設計をするときに、いちいちパソコンを起動してフィルタを設計、結果をプリントアウトして、実験室に行ってネットワークアナライザで測定・実験、ちょっと修正したい時にまたパソコンの所にもどって、再計算...というのが結構面倒で、手軽にiPhone で計算できるといいいなと思って作りました。

iPhone APP

  • ATT calc ver2.00
    SDOTECK が開発した iPhone APP の紹介です。 NEWS---SWRproリリース

Amazon

  • AMAZON Books

RAKUTEN

  • RAKUTEN

mujic.jp

  • music.jp
    music.jp

サイト内検索には?

  • -------------------------------
    ◆下の検索機能でこのブログのすべての関連項目を検索出来ます。是非使ってみて下さい。
サイト内検索
ココログ最強検索 by 暴想

SCHEMATICS

BOSE

  • BOSE
    クワイアットコンフォート20
無料ブログはココログ

Google

  • Google

« RF IC AMPのはなし | トップページ | I2Cページ書き込みについて »

2010年6月21日 (月)

I2C Read のはなし

I2C Readとは
I2Cはデバイスを組み込みCPUなどからコントロールする簡単なシリアル通信方法です。PLLやDACなどパラメーターの設定だけで事足りることが多くて、EEPROMなどを使用する以外はI2Cバスで読み込みを行う機会が少なく、実際読んでみたら読めないなんてことがあります。今回は読み込みを考えてみます。
ハード的には
やっぱり読み込みの代表例はEEPROMなどのメモリーでしょう。ここでは256Byte以下の小さなメモリをアクセスする基本を見てみます。Microchip社の24LCXXシリーズデーターシートを参考にしました。I2cread
まず書き込みを上図でおさらいしてみましょう。I2Cにはデバイスのアドレスと読み書きをコントロールする ControlByte があります。アクセス順は
1) START コンディション
2) Control Byte <---- デバイスからACK返答
3) Addres Byte <---- デバイスからACK返答
4) Dtata Byte <---- デバイスからACK返答
5) STOP コンディション
でデバイスからの応答は ACKのみです。
次に読み込みを行う場合です。
1) START コンディション
2) Control Byte <---- デバイスからACK返答
3) Addres Byte <---- デバイスからACK返答
  ( ここまでは、書き込みと同じですね。)
4)ここで再度スタートコンディションを送る
5) Control Byte <---- デバイスからACK返答
 違う点は最後のビットがREAD モード( High)です。
  (読み込みを改めて指定するコマンドです)
6) マスターがクロックを9クロック同じように送りながら
  CLKの Low->Highの時にデーターをデバイスから読み込みます。
7) 通常のプロトコルならば、マスターはデバイスからのデーター受信完了を示す ACKを送るべきですが、1バイトだけの場合・最終バイトの場合には ACKを返しません。
8) STOPコンディションを送る
 この場合、もしACKを返しますとデバイスはさらにクロックに応じて次のアドレスのデーターを返します。これを利用すると連続バイト読み込みが可能です。
ソフト的には
過去I2Cを使い始めた頃、上記シーケンスのようにして1バイト読み込みが完成したので、全く同じように8バイト連続受信しようとしてクロックを送ってはみたものの、最初の1バイトしか受信できずに困ったあげく、上記全部のシーケンスを8回繰り返してとりあえずOKにしてました。
 悪いのはデバイスにせいにしてたんですが、よくマニュアルを読んだら連続して読む場合ACKを返す必要があったことを知って反省しました。その他にもページ書き込み(連続書き込み)の制限を知らずにサイズを超えて一度に書き込もうとして失敗・書き込み時間が5mSほどかかることを知らずに、なぜか書けなくて悩んでたなんてことはまた別の項目で...

« RF IC AMPのはなし | トップページ | I2Cページ書き込みについて »

DIGITAL」カテゴリの記事

コメント

コメントを書く

(ウェブ上には掲載しません)

トラックバック

この記事のトラックバックURL:
http://app.cocolog-nifty.com/t/trackback/556493/48683802

この記事へのトラックバック一覧です: I2C Read のはなし:

« RF IC AMPのはなし | トップページ | I2Cページ書き込みについて »