I2C Controller Write
I2C 周辺デバイスまたは I2C 周辺デバイス レジスタにデータを書き込む
アドオンが必要: この機能には Simulink Coder Support Package for NXP FRDM-KL25Z Board アドオンが必要です。
ライブラリ:
Simulink Coder Support Package for NXP FRDM-KL25Z Board/FRDM-KL25Z
説明
I2C Controller Write ブロックは、ボードに接続された I2C 周辺デバイスにデータを書き込みます。このブロックを使用して、I2C 周辺デバイスの特定のレジスタにデータを書き込むことができます。
I2C 通信の詳細については、I2C 通信のサポートを参照してください。
例
Read Acceleration Data from MMA8451Q 3-Axis Digital Accelerometer Using I2C
Use Simulink® Coder™ Support Package for NXP™ FRDM-KL25Z Board to control the color of the RGB LED based on the orientation of the board.
端子
入力
データ型: int8 | uint8 | int16 | uint16 | int32 | uint32 | single | double
出力
[出力エラー ステータス] パラメーターを選択すると、ブロックで出力端子が構成されます。ブロックの端子には Status というラベルが付けられ、ブロックの出力端子で書き込み操作のステータスが出力されることを示します。
ブロックはステータスを uint8 値として出力します。それぞれの値がデータ転送ステータスに対応します。
| ステータスの値 | ステータスの説明 |
|---|---|
0 | SUCCESS |
1 | BUSY |
2 | ARBITRATION_LOST |
4 | NO_ACKNOWLEDGE |
8 | I2C_BUS_ERROR |
データ型: uint8
パラメーター
I2C 周辺デバイスへのデータの書き込み元となるボード上の I2C モジュールを指定します。
データの書き込み先の I2C 周辺デバイス アドレスを指定します。I2C 周辺デバイス アドレスは 7 ビット アドレスです。
このアドレスは、整数として指定するか、hex2dec() を使用して 16 進数形式で指定します。たとえば、‘hex2dec(‘61’)’ のようになります。
2 バイトのバイト順のオプションは次のとおりです。
BigEndian - I2C バスで最上位バイトが最初に送信されます。
LittleEndian - I2C バスで最下位バイトが最初に送信されます。
このパラメーターを選択すると、ブロックは [Peripheral register address] パラメーターで指定された I2C 周辺デバイス レジスタにデータを書き込みます。
このパラメーターをオフにすると、[Send NACK at the end of data transfer] パラメーターと [Remove stop bit at the end of data transfer] パラメーターが表示されます。これらのパラメーターを使用して、要件に従って書き込み操作を変更できます。
データの書き込み先の I2C 周辺デバイス レジスタ アドレスを指定します。
このアドレスは、整数として指定するか、hex2dec() を使用して 16 進数形式で指定します。たとえば、‘hex2dec(‘20’)’ のようになります。
レジスタの読み取り/書き込みの詳細については、I2C レジスタの読み取り/書き込みを参照してください。
依存関係
このパラメーターは、[Enable register access] パラメーターを選択した場合にのみ表示されます。
このパラメーターを選択すると、I2C Controller Write ブロックは周辺デバイスに対して最終バイトで NACK (Not Acknowledge/応答なし) ビットを送信します。
周辺デバイスは NACK を受信すると、I2C コントローラー ブロックからのストップ コンディションを待機します。コントローラー ブロックは、転送を中止するためのストップ コンディション、または新しい転送を開始するための繰り返しのスタート コンディションのいずれかを生成します。
このパラメーターをオフにすると、I2C Controller Write ブロックは周辺デバイスに対してすべてのバイトの最後に ACK (Acknowledge/肯定応答) ビットを送信します。ACK は、I2C Controller Write ブロックで次のバイトを周辺デバイスから読み取る準備ができたことを示します。
依存関係
このパラメーターは、[Enable register access] パラメーターをオフにした場合にのみ表示されます。
このパラメーターをオフにすると、ブロックはストップ コンディションを送信します。このコンディションは、ブロックによるデータ送信が終了し、他の任意の I2C コントローラーで読み取り/書き込み操作を開始できるように I2C バスが空いたことを示します。
このパラメーターを選択すると、ブロックは別のスタート コンディションとそれに続くアドレスおよび読み取り/書き込みビットを送信します。ブロックは任意の数のスタート コンディションを再帰的に送信します。このような繰り返しのスタート コンディションにより、バスをリリースせずに周辺デバイスへの書き込み操作が可能になります。操作中に他のコントローラー ブロックによる割り込みは発生しません。
依存関係
このパラメーターは、[Enable register access] パラメーターをオフにした場合にのみ表示されます。
このパラメーターを選択すると、ブロックで出力端子が構成されます。ブロックの端子には Status というラベルが付けられ、ブロックの出力端子で書き込み操作のステータスが出力されることを示します。
ブロックはステータスを uint8 値として出力します。それぞれの値がデータ転送ステータスに対応します。
| ステータスの値 | ステータスの説明 |
|---|---|
0 | SUCCESS |
1 | BUSY |
2 | ARBITRATION_LOST |
4 | NO_ACKNOWLEDGE |
8 | I2C_BUS_ERROR |
バージョン履歴
R2016b で導入
MATLAB Command
You clicked a link that corresponds to this MATLAB command:
Run the command by entering it in the MATLAB Command Window. Web browsers do not support MATLAB commands.
Web サイトの選択
Web サイトを選択すると、翻訳されたコンテンツにアクセスし、地域のイベントやサービスを確認できます。現在の位置情報に基づき、次のサイトの選択を推奨します:
また、以下のリストから Web サイトを選択することもできます。
最適なサイトパフォーマンスの取得方法
中国のサイト (中国語または英語) を選択することで、最適なサイトパフォーマンスが得られます。その他の国の MathWorks のサイトは、お客様の地域からのアクセスが最適化されていません。
南北アメリカ
- América Latina (Español)
- Canada (English)
- United States (English)
ヨーロッパ
- 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)
