본문 바로가기

Nordic/nRF52

[nRF52 xBee EVM] - 기본동작 테스트 - UART (IAR)

 

nRF52 xBee EVM 보드의 UART 테스트를 위해 nRF5 SDK의 /examples/peripheral/uart 예제를 테스트 했다.

[nRF52 xBee EVM] 보드의 UART 핀은 P6, P8에 할당되어 있다.

 

pca10040.h 파일에서 핀맵 수정이 가능하다.

/components/boards/pca10040.h
 

UART 동작 테스트는 CP2105 USB2UART 보드를 이용하여 PC와 통신 할수 있도록 했다.

 
int main(void)
{
    uint32_t err_code;

    bsp_board_init(BSP_INIT_LEDS);

    const app_uart_comm_params_t comm_params =
      {
          RX_PIN_NUMBER,
          TX_PIN_NUMBER,
          RTS_PIN_NUMBER,
          CTS_PIN_NUMBER,
          UART_HWFC,
          false,
#if defined (UART_PRESENT)
          NRF_UART_BAUDRATE_115200
#else
          NRF_UARTE_BAUDRATE_115200
#endif
      };

    APP_UART_FIFO_INIT(&comm_params,
                         UART_RX_BUF_SIZE,
                         UART_TX_BUF_SIZE,
                         uart_error_handle,
                         APP_IRQ_PRIORITY_LOWEST,
                         err_code);

    APP_ERROR_CHECK(err_code);

#ifndef ENABLE_LOOPBACK_TEST
    printf("\r\nUART example started.\r\n");

    while (true)
    {
        uint8_t cr;
        while (app_uart_get(&cr) != NRF_SUCCESS);
        while (app_uart_put(cr) != NRF_SUCCESS);

        if (cr == 'q' || cr == 'Q')
        {
            printf(" \r\nExit!\r\n");

            while (true)
            {
                // Do nothing.
            }
        }
    }
#else

    // This part of the example is just for testing the loopback .
    while (true)
    {
        uart_loopback_test();
    }
#endif
}
 

 

 

 

프로그램 실행하면 printf 함수 및 UART ECHO 동작테스를 확인 할 수 있다.
 
반응형