본 단행본은 inflearn에 있는 ChrisP 강사님의 "HAL, CubeMX, TrueSTUDIO를 이용한 STM32F4 무료 강좌"를 정리한 글입니다.
강좌 바로 보기 >> https://www.inflearn.com/course/stm32f4/dashboard
[무료] HAL, CubeMX, TrueSTUDIO를 이용한 STM32F4 무료 강좌 - 인프런 | 강의
고성능 마이크로컨트롤러인 STM32F 시리즈를 처음 접하는 분들이 쉽게 시작할 수 있도록 무료 컴파일러 TrueSTUDIO 및 코드자동생성 프로그램 CubeMX 설치부터 칩 기능의 개념설명, 소스코드작성(HAL
www.inflearn.com
- USART, UART란
USART는 Universal Synchronous Asynchronous Receiver Transmitter의 약자이고,
UART는Universal Asynchronous Receiver Transmitter의 약자이다.
동기식으로 데이터를 보내면 USART, 비동기식으로 데이터를 보내면 UART라고 한다.
동기식은 데이터를 보낼 때, 클럭에 맞추어서 데이터를 보내는 방식이다. 따라서, 이 클럭을 보낼 물리적인 전선이 필요하다.
비동기식은 데이터를 보낼 때, 클럭이 없는 대신 시간 간격으로 데이터를 전송한다. 따라서, 초당 비트 전송율을 의미하는 Baud Rate라는게 존재한다. 이 때, 두 장치간의 Baud Rate가 일치해야 데이터가 깨지지 않고 전송하게 된다.
일반적으로는, 데이터를 PC에서 출력하는 용도로 많이 사용한다. 그래서, USART보다는 UART를 많이 사용하는 편이다.
- 회로도

- CubeMX 설정
1. Pinout & Configuration 설정
UART3 -> Asynchronous
PD8, PD9 -> UART3_TX, UART3_RX
- 코드 작성
uint8_t data;
while (1)
{
// 데이터 수신
// UART 채널 구조체 주소, 데이터 주소, 데이터 길이, 타임아웃
if(HAL_UART_Receive(&huart3, &data, 1, 10) == HAL_OK)
{
// 데이터 송신
HAL_UART_Transmit(&huart3, &data, 1, 10);
}
}
'Develop Knowledge > STM32F4 by ChrisP' 카테고리의 다른 글
3강. Character LCD 문자열 출력 (0) | 2023.02.02 |
---|---|
2-3강. UART Rx Interrupt (0) | 2023.02.02 |
2-2강. UART printf 사용하기 (0) | 2023.02.02 |
1강. GPIO로 LED출력 및 스위치 입력 (0) | 2023.02.02 |
STM32F4 by ChrisP Introduction (0) | 2023.02.02 |