# Advanced UART Tutorials

**What you’ll do**
- `UartClient` 기반 예제로 **명령 입력**/**속도 요청**/**보조 명령**을 직접 스케줄링하는 구성을 익힙니다.

**Prerequisites**
- {doc}`SDK Guide </page/SDK/sdk_guide>`
- {doc}`Driver Tutorials </page/SDK/tutorials/driver_tutorials>` (권장)
- {doc}`UART Protocol Reference </page/Protocol/uart_protocol>`

**Next**
- 공개 API 상세: {doc}`C++ API Reference </page/SDK/sdk_reference>`

---

```{admonition} UartClient를 쓰는 경우
:class: note

- 프레임 단위 타이밍(송신/요청 주기)을 직접 제어해야 할 때
- **보조 명령**을 커스텀 시퀀스로 실험/디버깅할 때

```

이 페이지에서 UART는 저수준 방식(`UartClient`)으로 **프레임 송수신/요청 주기/수신 대기/파싱**을 직접 구성하는 튜토리얼을 의미합니다.

**명령 입력**/**속도 요청**/**보조 명령**의 프레임 ID(각각 `0xA5`, `0xB3`, `0xAF`)는 {doc}`UART Protocol Reference </page/Protocol/uart_protocol>`에 정리되어 있습니다.

```{toctree}
:maxdepth: 1

uart_client_read_speed
uart_client_read_battery
uart_client_read_allstate
uart_client_teleop_and_speed
```
