[CubeMX] UART
1. UART
평소에 잘 사용하지 않는 툴이지만 UART 사용이 불편해서 나중에 또 까먹을까봐 기록으로 남겨둔다.
CubeMX IDE 에서 printf 대신 uart를 사용할려면 다음과 같은 함수를 추가해주면 된다.
몇 가지 방법이 있는데 우선 첫번째 방법
#include "usart.h"
int _write(int file, char* p, int len);
int _write(int file, char* p, int len){
HAL_UART_Transmit(&huart2, (uint8_t*)p, len, 10);
return len;
}
int main(void)
{
MX_USART2_UART_Init();
printf("hello : %d\r\n", count++);
}
중간 중간 중요 코드들이 없지만 대략 uart 관려된 코드만 적는다면 위와 같다. 느낌만 보고 핵심은 _write 함수를 재정의해서 printf를 uart로 동작하게 하는 것이다.
두번째 방법
void print_str(char *str);
void print_str(char *str)
{
HAL_UART_Transmit(&huart2, (uint8_t*)str, strlen((const char*)str), HAL_MAX_DELAY);
}
두번째는 함수를 만들어서 사용하는 것인데 첫번째께 강려크해서 두번째는 잘 사용안할듯 하다.
끝 :)
0 댓글