使用例(マスタ送信)
4Byteデータのマスタ送信を行う
[GUI設定例]
シリアル |
使用する | |||
IICA0 |
使用する | |||
転送モード |
シングルマスタ | |||
Master0 |
||||
カウント・クロック設定 |
fCLK/2 | |||
自局アドレス設定 |
16 | |||
動作モード設定 |
標準 | |||
転送クロック(fSCL) |
100000(bps)(実際の値:99378.882) | |||
通信完了割り込み優先順位(INTIICA0) |
高 | |||
マスタ送信完了(コールバック機能設定) |
使用する | |||
マスタ受信完了(コールバック機能設定) |
使用しない | |||
マスタ・エラー(コールバック機能設定) |
使用しない | |||
マスタ送信/受信完了コールバック時にストップ・コンディションを生成 (コールバック拡張機能設定) |
使用する |
[API設定例]
r_main.c
/* Start user code for pragma. Do not edit comment generated here */
#define SLAVE_ADDR (0xA0) /* slave address */
/* End user code. Do not edit comment generated here */
/* Start user code for global. Do not edit comment generated here */
volatile uint8_t g_iica0_tx_buf[4] = { 'A', 'B', 'C', 'D' };
/* End user code. Do not edit comment generated here */
void main(void)
{
R_MAIN_UserInit();
/* Start user code. Do not edit comment generated here */
/* Start to send data as master mode */
R_IICA0_Master_Send(SLAVE_ADDR, (uint8_t *)g_iica0_tx_buf, 4U, 128U);
while (1U)
{
;
}
/* End user code. Do not edit comment generated here */
}
r_cg_serial_user.c
static void r_iica0_callback_master_sendend(void)
{
SPT0 = 1U;
/* Start user code. Do not edit comment generated here */
/* Stop IICA0 module operation */
R_IICA0_Stop();
/* End user code. Do not edit comment generated here */
}