Renesas RAマイコンを使ってみよう(4)～UARTを使ってみよう～

__Renesas RAマイコンを使ってみよう(3)～スイッチを使ってみよう～__ の続きです。

https://qiita.com/usashirou/items/e0ca61e595a028b6eda5

今回はUARTを使ってみます。
# Configuration
__New Stack➡Connectivity➡UAR(r_sci_uart)__ を選択します。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/285344/d406c8ea-0e21-0ff6-0269-8bce25baa8a8.png)
__g_uart0(r_sci_uart)__ をクリックします。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/285344/dd0c6762-f39b-eafe-e8ae-fdf287dbd0ab.png)
左下のプロバティから __Moduke a uart0 UART(r_sci_uart)➡General__ から __Channel__ を選択します。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/285344/c6e8f3f1-f6a3-f214-863d-80fd92ba52ed.png)
__Channel__ を __９__ にします。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/285344/e9f5105e-792a-e977-8037-2c0cedc07972.png)
__Channel__ を __9__ にするのは __TXD9/RXD9__ だからです。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/285344/2fce0ad2-3e17-2205-41bc-6817d87df58e.png)
ここで __Generate Project Content__ をクリックします。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/285344/edbacfb5-b256-576f-2fd2-9efc7fa95843.png)
# プログラム作成
__Developer Assistance__ を開いて __Call R_SCI_UART_Open()__ を探します。
__R_SCI_UART_Open__ でポートを開き
__R_SCI_UART_Write__ で __UART送信__ を行います。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/285344/a6063dfe-dd16-be97-24bd-f9299adbabff.png)
__Call R_SCI_UART_Write__ を選択します。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/285344/a64a3fee-417c-37c8-ab55-d66e332d29f7.png)
__p_src__ に送るデータを定義します。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/285344/c6fdd36b-fda5-e83c-bd3d-06f11b2053f4.png)
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/285344/15f9c882-3567-6b3f-1caa-fd4bf6d5a979.png)
今回は __uint8_t__ の文字列にします。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/285344/9bade0ea-ad38-73c8-c240-75cece6c23e4.png)
送信文字列を指定します。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/285344/73e97012-5866-e4ca-584a-d99e69600bf3.png)
__byte__ は __sizeof(data)__ にします。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/285344/22e76e55-f2d8-f8c7-d7b0-7e2a9d844446.png)
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/285344/6c4a260a-98be-ad6c-5d37-59a3bc2842a5.png)
最後に __Delay__ を入力します。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/285344/15e3f84f-57a0-75fa-8e59-6b4beb8b873e.png)
![](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/285344/31834450-243c-ea94-1a6b-b5c79614ed11.png)
# プログラム
```
void hal_entry(void)
{
    uint8_t data[] = "test\n\r";
    R_SCI_UART_Open(&g_uart0_ctrl, &g_uart0_cfg);

    /* TODO: add your own code here */
    while(1){
        R_SCI_UART_Write(&g_uart0_ctrl, data, sizeof(data));
        R_IOPORT_PinWrite(&g_ioport_ctrl, LED1,BSP_IO_LEVEL_HIGH );
        R_BSP_SoftwareDelay(1000, BSP_DELAY_UNITS_MILLISECONDS);
        R_IOPORT_PinWrite(&g_ioport_ctrl, LED1,BSP_IO_LEVEL_LOW );
        R_BSP_SoftwareDelay(1000, BSP_DELAY_UNITS_MILLISECONDS);
    }
```