: 기존 UART 로 Log 가 출력되고 있는 상태에서 UART를 다른 용도로 사용하기 위해 RTT로 LOG를
변경해 보았습니다. 아래 내용은 ble_app_hids_keyboard 프로젝트에서 테스트를 진행 했습니다.
0> 기본지식
0-1> RTT (Real Time Transfer) 링크
https://www.segger.com/products/debug-probes/j-link/technology/about-real-time-transfer/
SES : Segger Embedded Studio
0-2> 준비물
: nRF52 DK 보드 , USB cable (micro <--> PC )
1> UART 로그 disable 및 RTT 로그 Enable 하기 ()
: sdk_config.h 파일만 고치면 되고 세부내용은 아래 git diff 참고하세요.
@@ -7567,7 +7567,7 @@
// <e> NRF_LOG_BACKEND_RTT_ENABLED - nrf_log_backend_rtt - Log RTT backend
//==========================================================
#ifndef NRF_LOG_BACKEND_RTT_ENABLED
-#define NRF_LOG_BACKEND_RTT_ENABLED 0
+#define NRF_LOG_BACKEND_RTT_ENABLED 1
#endif
// <o> NRF_LOG_BACKEND_RTT_TEMP_BUFFER_SIZE - Size of buffer for partially processed strings.
// <i> Size of the buffer is a trade-off between RAM usage and processing.
@@ -7600,7 +7600,7 @@
// <e> NRF_LOG_BACKEND_UART_ENABLED - nrf_log_backend_uart - Log UART backend
//==========================================================
#ifndef NRF_LOG_BACKEND_UART_ENABLED
-#define NRF_LOG_BACKEND_UART_ENABLED 1
+#define NRF_LOG_BACKEND_UART_ENABLED 0
#endif
// <o> NRF_LOG_BACKEND_UART_TX_PIN - UART TX pin
#ifndef NRF_LOG_BACKEND_UART_TX_PIN
2> J-Link RTT Viewer V7.00 이용해 Log 보기
2-1> J-Link RTT Viewer V7.00 실행
LOG 가 아래처럼 출력되야 정상입니다.
2-2> RTTViewer 위치
3> SES 를 이용해 Log 보기
: 저는 SES 를 더 많이 사용합니다.
SES 실행후 F5 또는 Debug --> Go 를 클릭해 줍니다.
SES 아래쪽 Output 창 --> Debug Terminal로 변경해 줍니다.
--> 이후 아래처럼 Log 출력되면 OK
< 기타>
a> ble_app_interactive 프로젝트의 경우 위수정만으로 동작을 안하고
log_init() 함수에도 수정이 필요합니다.
static void log_init(void)
{
ret_code_t err_code = NRF_LOG_INIT(app_timer_cnt_get);
APP_ERROR_CHECK(err_code);
NRF_LOG_DEFAULT_BACKENDS_INIT(); <-- 요부분 추가
}
--> RTT 가 되긴 하는데 UART 로도 NRF_LOG 메시지 출력이 나오네요.
UART 로 NRF_LOG 안나오게 하기 위한 수정사항 sdk_config.h 파일의 다음을 0으로 변경해야 합니다.
#define NRF_CLI_LOG_BACKEND 0
그럼 수고하세요.
![](https://t1.daumcdn.net/keditor/emoticon/friends1/large/004.gif)
'Nordic_nRF52' 카테고리의 다른 글
[secure_bootloader ] 프로젝트 분석 (0) | 2022.04.11 |
---|---|
[ble_app_cts_c ] 프로젝트 분석 (0) | 2022.04.07 |
[ble_app_beacon ] 프로젝트 분석 (0) | 2022.04.05 |
[ble_app_interactive ] GettickCount() 만들기 (0) | 2022.04.04 |
[nRF52 ] ble_app_interactive 프로젝트를 이용한 ble_app_bms 장치 통신하기 (0) | 2022.03.24 |