使用例
UART通信で4Byte受信後、受信したデータをそのまま送信し、通信を終了させる
[GUI設定例]
シリアル |
使用する | |||
SAU0 |
使用する | |||
Channel0 |
||||
チャネル0 |
UART0(送信/受信機能) | |||
データ・ビット長設定 (受信機能) |
8ビット | |||
データ転送方向設定 (受信機能) |
LSB | |||
パリティ設定 (受信機能) |
パリティなし | |||
ストップ・ビット長設定 (受信機能) |
1ビット固定です | |||
受信データ・レベル設定 |
標準 | |||
転送レート設定 (受信機能) |
9600(bps)(誤差:+0.16% 許容最小:-5.17% 許容最大:+5.16%) | |||
受信完了割り込み設定(INTSR0) |
低 | |||
受信完了 (コールバック機能設定) |
使用する | |||
エラー (コールバック機能設定) |
使用する | |||
転送モード設定 |
単発モード | |||
データ・ビット長設定 (送信機能) |
8ビット | |||
データ転送方向設定 (送信機能) |
LSB | |||
パリティ設定 (送信機能) |
パリティなし | |||
ストップ・ビット長設定 (送信機能) |
1ビット | |||
送信データ・レベル設定 |
標準 | |||
転送レート設定 (送信機能) |
9600(bps)(誤差:+0.16%) | |||
送信完了割り込み設定(INTST0) |
低 | |||
送信完了 (コールバック機能設定) |
使用する |
[API設定例]
r_main.c
/* Start user code for global. Do not edit comment generated here */
extern volatile uint8_t g_uart0_buf[4];
/* 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 the UART0 module operation */
R_UART0_Start();
/* Receive UART0 data */
R_UART0_Receive((uint8_t *)g_uart0_buf, 4U);
while (1U)
{
;
}
/* End user code. Do not edit comment generated here */
}
r_cg_serial_user.c
/* Start user code for global. Do not edit comment generated here */
volatile uint8_t g_uart0_buf[4];
/* End user code. Do not edit comment generated here */
static void r_uart0_callback_receiveend(void)
{
/* Start user code. Do not edit comment generated here */
/* Send UART0 data */
R_UART0_Send((uint8_t *)g_uart0_buf, 4U);
/* End user code. Do not edit comment generated here */
}
static void r_uart0_callback_sendend(void)
{
/* Start user code. Do not edit comment generated here */
/* Stop the UART0 module operation */
R_UART0_Stop();
/* End user code. Do not edit comment generated here */
}