Inflearn brand logo image

인프런 커뮤니티 질문&답변

mth3636님의 프로필 이미지
mth3636

작성한 질문수

[임베디드 입문용] 임베디드 개발은 실제로 이렇게 해요.

1-Wire통신! 나름 유명했다. (온도센서) 3

타이머 최대 주파수 질문

해결된 질문

작성

·

13

0

안녕하세요 강의 잘보고 있습니다.
타이머 2는 최대가 72MHz니까 굳이 외부 크리스탈 안써도 사용이 가능하지요?

답변 2

0

ojtube5님의 프로필 이미지
ojtube5
지식공유자

네 맞습니다. 외부 크리스탈을 쓰는 이유는 여러 이유가 있는데.. 아래와 같습니다.

외부 크리스탈이 꼭 필요한 경우

  1. USB 통신

    • USB 2.0 Full-Speed는 48 MHz 정확도가 ±0.25% 이내여야 함.

    • 내부 HSI로는 이 기준을 맞추기 힘들고, HSE를 PLL로 곱해서 72 MHz → 48 MHz 파생해야 안정 동작.

  2. 정확한 UART/CAN/I²S 통신

    • UART 같은 직렬통신은 클럭 오차가 누적되면 프레임 에러 발생.

    • HSI(±1% 오차)는 9600bps 이하에서는 대체로 괜찮지만, 115200bps 이상이나 CAN(정확도 요구 높음)에서는 문제가 생김.

    • HSE를 쓰면 안정적.

  3. RTC(Timekeeping)

    • 장기간 시간 기준 유지에는 정밀한 기준 클럭 필요.

    • RTC는 보통 32.768 kHz LSE 크리스탈을 따로 쓰지만, 시스템 주기도 HSE 기반으로 더 정확해짐.

  4. 고정밀 타이밍/PWM

    • 예: 1초 정확 타이머, 오디오 샘플링, 모터 제어 주파수 등

    • HSI는 오차가 있어서 긴 시간 기준으로 보면 누적 오차 발생 → HSE로 보정 가능.

0

안녕하세요, 인프런 AI 인턴입니다.

mth3636님, 현재 수강하고 계신 강의에서 사용되는 타이머 설정은 마이크로컨트롤러의 내부 클럭에 따라 달라질 수 있습니다. STM32와 같은 MCU에서는 내부 클럭을 통해 72MHz의 동작을 지원하며, 외부 크리스탈을 사용하지 않고도 특정한 주파수에 맞춰 타이머를 설정할 수 있습니다.

외부 크리스탈을 사용하는 이유는 MCU가 더 높은 정밀도와 안정성을 보장하기 위해서인데, 많은 경우 외부 크리스탈 없이도 MCU의 내부 고정밀 클럭(COSC)이나 PLL을 통해 만족할 만한 성능을 얻을 수 있습니다.

외부 크리스탈을 사용하지 않고 타이머 2를 72MHz로 동작시키는 방법은 강의 자료나 데이터시트를 참고하여 필요한 설정을 확인하시면 됩니다. 타이머 최대 주파수 관련 설정이나 외부 크리스탈의 필요 여부는 주로 애플리케이션의 요구사항이나 시스템의 디자인에 따라 결정됩니다.

관련해서 타이머와 클럭 설정에 대한 자세한 설명이 있는 답변들을 참고해 보실 수 있습니다:
- 온도센서 제어 중 타이머 설정: 타이머 설정의 방법과 이유에 대해 자세히 설명합니다.
- 클럭의 의미를 설명해주시는 부분에 질문이 있어요: 클럭 속도와 타이머 간 관계를 이해하는 데 도움이 되는 답변입니다.

저는 질문자님의 이해를 돕고자 지식공유자님의 기존 답변을 참고하여 유사한 답변 링크를 추천해드리고 있습니다.
현재 베타 기능으로 답변이 만족스럽지 않을 수 있는 점 양해 부탁드립니다. 🙏
추가적으로 궁금한 점이 있으시면, 이어서 질문해 주세요. 곧 지식공유자께서 답변해 주실 것입니다.

mth3636님의 프로필 이미지
mth3636

작성한 질문수

질문하기