C2A_Core
i2c_sils.cpp ファイル
i2c_sils.cpp の依存先関係図:

[ソースコード]

関数

int I2C_init (void *my_i2c_v)
 I2cConfig構造体をグローバルインスタンスとして定義し、ポインタを渡すことでポートを初期化します。 [詳解]
 
int I2C_rx (void *my_i2c_v, void *data_v, int buffer_size)
 I2cConfig構造体にて指定されたchからデータを受信します [詳解]
 
int I2C_tx (void *my_i2c_v, void *data_v, int data_size)
 I2cConfig構造体にて指定されたchへデータを送信します [詳解]
 
int I2C_reopen (void *my_i2c_v, int reason)
 指定されたchを開きなおす [詳解]
 
void I2C_set_stop_flag (void *my_i2c_v, const unsigned char stop_flag)
 
void I2C_set_rx_length (void *my_i2c_v, const uint32_t rx_length)
 rx_lengthを設定する [詳解]
 

関数詳解

◆ I2C_init()

int I2C_init ( void *  my_i2c_v)

I2cConfig構造体をグローバルインスタンスとして定義し、ポインタを渡すことでポートを初期化します。

引数
[in]my_i2c_v初期化するI2cConfig構造体へのポインタ
戻り値
int I2C_ERR_CODEとしたいが, if_listでintと統一されている。
覚え書き
I2C通信ラッパーのクラスを使用する時は起動時に必ず実施してください。 この関数を実行する前にI2cConfig構造体内の設定値を設定しておく必要があります。

i2c_sils.cpp4 行目に定義があります。

◆ I2C_reopen()

int I2C_reopen ( void *  my_i2c_v,
int  reason 
)

指定されたchを開きなおす

引数
[in]my_i2c_v開きなおす際のポート設定
[in]reasonreopenする理由.0は正常操作を示す TODO: reasonのenumを作る?
戻り値
int: I2C_ERR_CODE に従う

i2c_sils.cpp26 行目に定義があります。

◆ I2C_rx()

int I2C_rx ( void *  my_i2c_v,
void *  data_v,
int  buffer_size 
)

I2cConfig構造体にて指定されたchからデータを受信します

引数
[in]my_i2c_v: 対象とするI2cConfig構造体へのポインタ
[in]data_v: 受信データ格納先へのポインタ
[in]buffer_size: 受信データ格納先のバッファサイズ、I2C通信による受信データ長よりも長い必要がある
戻り値
0受信データなし
受信データバイト数
エラー. I2C_ERR_CODE に従う
覚え書き
この関数内でI2C読み出し要求を送信しています

i2c_sils.cpp10 行目に定義があります。

◆ I2C_set_rx_length()

void I2C_set_rx_length ( void *  my_i2c_v,
const uint32_t  rx_length 
)

rx_lengthを設定する

引数
[in]rx_length設定する受信データ長
戻り値
なし

i2c_sils.cpp40 行目に定義があります。

◆ I2C_set_stop_flag()

void I2C_set_stop_flag ( void *  my_i2c_v,
const unsigned char  stop_flag 
)

i2c_sils.cpp33 行目に定義があります。

◆ I2C_tx()

int I2C_tx ( void *  my_i2c_v,
void *  data_v,
int  data_size 
)

I2cConfig構造体にて指定されたchへデータを送信します

引数
[in]my_i2c_v: 対象とするI2cConfig構造体へのポインタ
[in]data_v: 送信データ格納先へのポインタ
[in]count: 送信データサイズ
戻り値
int: I2C_ERR_CODE に従う

i2c_sils.cpp18 行目に定義があります。