임베디드 기초 7편 - 클럭 심화: 보드레이트와 SPI 속도는 어떻게 계산되는가
들어가며 UART 보드레이트 계산 BRR 레지스터 STM32 UART는 BRR(Baud Rate Register)로 분주비를 설정한다. 기본 16배 오버샘플링(OVER8=0) 기준: RM0383 19.3.4 — Fractional baud rate generation: BRR 레지스터와 USARTDIV 관계 1 Baud Rate = f_PCLK / (16 × USARTDIV) USARTDIV는 정수부(12비트)와 소수부(4비트)로 구성된다. 소수점 이하 4비트이므로 1/16 단위까지 설정 가능하다. 계산 예시 UART2, APB1 = 50 MHz, 목표: 115200 bps 1 2 3 4 5 6 USARTDIV = 50,000,000 / (16 × 115,200) = 27.127... 정수부: 27 소수부: 0.127 × 16 = 2.03 → 반올림 → 2 BRR = (27 << 4) | 2 = 0x01B2 실제 보드레이트 역산: ...