산업기술
이번 편에서는 마이크로컨트롤러 기반 실시간 클록(RTC)의 핵심으로 들어갑니다. 이전 글들은 타이머 기초와 펄스 폭 변조를 다뤘습니다. 이 글에서는 RTC가 어떻게 정확한 1초 간격을 유지하고, 시간과 날짜를 관리하며, 드리프트를 보상하고, 변조로부터 보호하는지 설명합니다.
RTC는 꾸준한 1초 틱을 생성하고 지속적인 카운트를 유지하는 전용 하드웨어입니다. 간단한 타이밍 다이어그램은 틱 생성기, 초 카운터를 읽는 소프트웨어 루틴, 3초 후 작동하는 알람을 보여줍니다. 핵심 요구사항은 정확도와 연속 동작입니다.

현대 마이크로컨트롤러 RTC에는 보통 다음이 포함됩니다:

RTC의 핵심은 32,768Hz 크리스탈입니다. 잘 설계된 발진기에서 크리스탈 자체가 주요 오차 원인입니다. 외부 TCXO는 서브 ppm 안정성을 제공할 수 있으며, 내부 발진기도 보상으로 비슷한 성능을 달성할 수 있습니다.
일반적인 오차 원인:
아래 Texas Instruments 제공 그래프는 온도와 초기 오차의 결합, 신중한 보정으로 총 오차를 노란색 밴드(보드 레벨 측정 후 달성 가능 목표)로 가져올 수 있음을 보여줍니다.

연간 1ppm 정확도로 클록은 약 30초 편차 - 대부분의 취미 프로젝트보다 훨씬 낫지만 미션 크리티컬 시스템에서는 여전히 고려할 가치 있습니다.
하드웨어 단순성을 희생하지 않고 작은 드리프트를 보정하는 두 가지 일반적인 전략:
조정 가능한 프리스케일러. RTC가 프로그래밍 가능한 프리스케일러를 노출하면 소프트웨어가 몇 초마다 모듈러스를 조정할 수 있습니다. 예를 들어 0.00010초 빠른 클록은 4초마다 프리스케일러를 32,768에서 32,781로 변경하여 매번 부족한 0.00010초를 더할 수 있습니다.

장점: 세밀한 보정, 최소 코드. 단점: 조정 가능한 프리스케일러와 추가 레지스터 필요.
소프트웨어 보정. 하드웨어에 프로그래밍 가능한 프리스케일러가 없으면 펌웨어가 초 카운터의 누적 오차를 추적합니다. 누적 오차가 1초에 도달하면 틱을 더하거나 뺍니다. 조정은 사이클당 한 번만 보여 급격한 변화로 느껴질 수 있습니다.

장점: 모든 RTC에서 작동. 단점: 틱 레이트에서 눈에 띄는 점프 발생.
시간이 청구, 사용량 제한, 중요 시퀀싱과 연계된 애플리케이션에서는 RTC를 변조로부터 보호하는 것이 필수적입니다. 많은 마이크로컨트롤러가 제공하는 기능:
예를 들어 이 기사에서 사용된 MCU는 한 번 설정되면 칩 리셋 전까지 클리어할 수 없는 락 비트를 가지고 있어, 악성 코드가 클록을 변경하지 못하도록 방지합니다.
일부 RTC는 완전한 시간 및 달력 카운터를 통합합니다. 하드웨어에 이들이 없으면 펌웨어가 32비트 초 카운터에서 표준 알고리즘으로 날짜를 유도할 수 있습니다. C 표준 라이브러리 time.h는 에포크(보통 1970년 1월 1일) 이후 초를 반환하는 함수를 기대합니다. RTC 카운터를 읽는 간단한 get_time() 래퍼가 라이브러리에 공급되면, 라이브러리가 윤년, 일광 절약 시간, 포맷팅을 처리합니다.
32비트 카운터는 2³²초 후 오버플로 - 약 136년 후. 그러나 에포크가 1970년에서 시작하면 2038년에 롤오버 발생(Y2038 문제). C 라이브러리에 의존하는 시스템은 카운터가 2³¹-1에 도달하면 미정의 동작 경험 가능.
NASA의 Deep Impact 미션은 0.1초 단위로 시간을 추적하던 32비트 타이머가 2013년 롤오버하여 제어 명령이 잠재적으로 손상된 후 통신을 상실했습니다.
"정확한 손실 원인은 알려지지 않았지만, 분석 결과 Deep Impact의 방향 제어 상실로 이어질 수 있는 컴퓨터 시간 태깅 잠재적 문제가 발견되었습니다."
— NASA 뉴스 릴리스, 2013
설계자는 시스템 예상 수명을 편안하게 초과하는 카운터를 사용하거나 펌웨어에서 롤오버 처리를 구현해야 합니다.
이 시리즈의 마지막 글에서는 소프트웨어 행잉 시에도 마이크로컨트롤러를 생존하게 하는 안전망인 워치독 타이머를 다룰 예정입니다.
산업기술
생산성이 이익을 이끄므로 자산과 사람이 일하지 않을 때 돈을 테이블 위에 두고 있는 것입니다. 유휴 시간을 줄여 생산성과 이익을 높이는 방법이 있습니다. 하지만 그러려면 유휴 시간의 다양한 원인과 실용적 해결책을 이해해야 합니다. 유휴 시간의 정의 유휴 시간은 사람과 자원이 준비되었고, 의지 있으며, 일할 수 있는데 일하지 않는 상태입니다. 유휴를 생산성의 반대라고 생각할 수 있습니다. 유휴 상태일 때 팀은 생산할 수 있는데 하지 않는 것입니다. 따라서 처음에는 유휴 시간이 다운타임과 매우 비슷해 보입니다. 하지만 중요한 차이점이
WellPCB 실제 고객 피드백 모음 WellPCB 실제 피드백, 소중한 고객님들로부터 받은 진솔한 피드백과 평가를 제품 및 서비스 참고자료로 공개합니다. 고객님의 목소리가 저희를 앞으로 나아가게 하는 원동력입니다. WellPCB 제품과 서비스를 선택해 주셔서 감사합니다. 더 만족스러운 고객 경험과 서비스를 위해 계속 노력하겠습니다. 고객 후기 연대기 2017-06-14: 빠른 서비스 감사합니다! 5일 만에 도착해 놀랐습니다. 납땜하느라 답장이 늦었네요. 감사합니다. 2017-07-28: PCB 잘 받았습니다. 향후 필요하면 다