[CubeMX] UART

01_CubeMX_UART

enter image description here

[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 댓글