このページの内容は最新ではありません。最新版の英語を参照するには、ここをクリックします。
I2C Controller Read
I2C 周辺デバイスまたは I2C 周辺デバイス レジスタからデータを読み取る
ライブラリ:
Embedded Coder Support Package for STMicroelectronics Discovery Boards /
STM32F769I-Discovery
Embedded Coder Support Package for STMicroelectronics Discovery Boards /
STM32F746G-Discovery
説明
I2C Controller Read ブロックは、ボードに接続された I2C 周辺デバイスからシリアル データを読み取ります。このブロックを使用して、I2C 周辺デバイスの特定のレジスタからデータを読み取ることができます。
I2C 通信の詳細については、I2C 通信のサポートを参照してください。
端子
出力
Data — I2C 周辺デバイスからのデータ
ベクトル
この端子はボード上の I2C デバイスからベクトル データを読み取ります。データのサイズは [データ サイズ] パラメーターで指定した値になります。
データ型: int8
| uint8
| int16
| uint16
| int32
| uint32
| single
| double
Status — 読み取り操作のステータス
スカラー
[出力エラー ステータス] パラメーターを選択すると、Status
というラベルが付いた出力端子が使用可能になります。
この端子は各読み取り要求のステータスを次の表に記載されているとおりに出力します。
戻りステータス コード
ステータス | 説明 |
---|---|
0 | SUCCESS |
1 | BUSY |
2 | ARBITRATION_LOST |
4 | NO_ACKNOWLEDGE |
8 | BUS_ERROR |
16 | BUS_NOT_IN_USE |
データ型: uint8
パラメーター
I2C module — データを読み取る I2C モジュール
0
(既定値)
I2C 周辺デバイスからデータを読み取るボード上の I2C モジュールを指定します。
Peripheral address — データを読み取る I2C レジスタ周辺デバイス アドレス
10
(既定値) | integer greater than or equal to 0
データを読み取る I2C 周辺デバイス アドレスを指定します。このアドレスは 16 進数形式の hex2dec()
で指定できます。たとえば、‘hex2dec(‘20’)’ のようになります。
Peripheral byte order — I2C 周辺デバイスでサポートされているバイト順
BigEndian
(既定値) | LittleEndian
2 バイトのバイト順のオプションは次のとおりです。
BigEndian - I2C バスで最上位バイトが最初に送信されます。
LittleEndian - I2C バスで最下位バイトが最初に送信されます。
Enable register access — 特定の I2C 周辺デバイス レジスタから読み取るためのオプション
オン (既定値) | オフ
このパラメーターを選択すると、ブロックは [Peripheral register address] パラメーターで指定された I2C 周辺デバイス レジスタからデータを読み取ります。
このパラメーターをオフにすると、[Send NACK at the end of data transfer] パラメーターと [Remove stop bit at the end of data transfer] パラメーターが表示されます。これらのパラメーターを使用して、要件に従って読み取り操作を変更できます。
Peripheral register address — データを読み取る I2C 周辺デバイス レジスタ アドレス
0
(既定値) | integer between 0 and 255
データを読み取る I2C レジスタ アドレスを指定します。
このアドレスは、整数として指定するか、hex2dec()
を使用して 16 進数形式で指定します。たとえば、‘hex2dec(‘20’)’ のようになります。
レジスタの読み取り/書き込みの詳細については、I2C レジスタの読み取り/書き込みを参照してください。
依存関係
このパラメーターは、[Enable register access] パラメーターを選択した場合にのみ表示されます。
データ型 — I2C 周辺デバイスからのデータのデータ型
uint8
(既定値) | int8
| int16
| uint16
| int32
| uint32
| single
| double
I2C 周辺デバイスから読み取るデータ型を選択します。
Data size (N) — I2C 周辺デバイスから読み取るデータ サイズ
1
(既定値) | integer greater than or equal to 0
選択したデータ型について I2C 周辺デバイスから読み取るデータ サイズを指定します。
Send NACK at the end of data transfer — データ転送の最後に Not Acknowledge (応答なし) ビットを送信するためのオプション
オフ (既定値) | オン
このパラメーターを選択すると、I2C Controller Read ブロックは周辺デバイスに対して最終バイトで NACK (Not Acknowledge/応答なし) ビットを送信します。
周辺デバイスは NACK を受信すると、I2C コントローラー ブロックからのストップ コンディションを待機します。コントローラー ブロックは、転送を中止するためのストップ コンディション、または新しい転送を開始するための繰り返しのスタート コンディションのいずれかを生成します。
このパラメーターをオフにすると、I2C Controller Read ブロックは周辺デバイスに対してすべてのバイトの最後に ACK (Acknowledge/肯定応答) ビットを送信します。ACK は、I2C Controller Read ブロックで次のバイトを周辺デバイスから読み取る準備ができたことを示します。
依存関係
このパラメーターは、[Enable register access] パラメーターをオフにした場合にのみ表示されます。
Remove stop bit at the end of data transfer — データ転送の最後にストップ ビットを削除するためのオプション
オフ (既定値) | オン
このパラメーターをオフにすると、ブロックはストップ コンディションを送信します。このコンディションは、ブロックによるデータ送信が終了し、他の任意の I2C コントローラー ブロックで新しい読み取り/書き込み操作を開始できるように I2C バスが空いたことを示します。
このパラメーターを選択すると、ブロックは別のスタート コンディションとそれに続くアドレスおよび読み取り/書き込みビットを送信します。ブロックは任意の数のスタート コンディションを再帰的に送信します。このような繰り返しのスタート コンディションにより、バスをリリースせずに周辺デバイスへの書き込み操作が可能になります。操作中に他のコントローラー ブロックによる割り込みは発生しません。
依存関係
このパラメーターは、[Enable register access] パラメーターをオフにした場合にのみ表示されます。
出力エラー ステータス — データ送信中にエラー ステータスを表示するためのオプション
オフ (既定値) | オン
このパラメーターを選択すると、Status
というラベルが付いた出力端子が使用可能になります。
この端子は読み取り操作が成功すると 0
を出力します。
サンプル時間 — I2C 周辺デバイスからデータを読み取る頻度
0.1
(既定値)
I2C Controller Read ブロックで I2C 周辺デバイスからデータを読み取る頻度を指定します。このパラメーターを -1
と指定すると、ブロックはモデル内のブロックのコンテキストに基づいてサンプル時間を継承します。
参考
I2C Controller Write (Embedded Coder) | Workaround for Interrupt Workflow with Sensors
MATLAB コマンド
次の MATLAB コマンドに対応するリンクがクリックされました。
コマンドを MATLAB コマンド ウィンドウに入力して実行してください。Web ブラウザーは MATLAB コマンドをサポートしていません。
Select a Web Site
Choose a web site to get translated content where available and see local events and offers. Based on your location, we recommend that you select: .
You can also select a web site from the following list:
How to Get Best Site Performance
Select the China site (in Chinese or English) for best site performance. Other MathWorks country sites are not optimized for visits from your location.
Americas
- América Latina (Español)
- Canada (English)
- United States (English)
Europe
- Belgium (English)
- Denmark (English)
- Deutschland (Deutsch)
- España (Español)
- Finland (English)
- France (Français)
- Ireland (English)
- Italia (Italiano)
- Luxembourg (English)
- Netherlands (English)
- Norway (English)
- Österreich (Deutsch)
- Portugal (English)
- Sweden (English)
- Switzerland
- United Kingdom (English)