아두이노 DS1302 Realtime Clock Test

 

 

DS1302

DS1302 모듈은 실제 시간을 기록해 두었다가 필요시 읽을 수 있도록 해 줍니다.
일반적으로 DS1302 칩 옆에는 항상 배터리가 있는 것을 볼 수 있습니다.
이 배터리는 DS1302 칩이 시간을 계속 카운트 할 수 있도록 전원을 공급해주는 역할을 합니다.
배터리의 수명이 끝났거나 배터리가 모듈에서 분리되는 경우 DS1302 칩에 기록된 시간은 초기화(리셋)되어 버리니 주의 해야 합니다.
그러면, DS1302 모듈에 시간을 기록하고 꺼내보는 작업을 해 보겠습니다.

 

라이브러리 설치

DS1302 모듈을 쉽게 제어하기 위한 라이브러리를 추가합니다. (이미 설치된 경우 건너뜁니다.)

  1. https://github.com/msparks/arduino-ds1302에 접속하여 라이브러리 zip 파일을 다운로드 합니다.
  2. arduino-ds1302-master.zip 라이브러리 파일을 아두이노에 추가합니다.
    아두이노 > 스케치 > 라이브러리 포함하기 > .ZIP 라이브러리 추가…

 

DS1302 작동 테스트

  1. 아래와 같이 DS1302 모듈을 연결합니다.
  2. 아두이노 프로그램에 아래 소스를 입력합니다.

  3. 소스 파일을 아두이노에 업로드 한 다음 시리얼 모니터를 열어보면, 현재 날짜와 시각이 출력되는 것을 볼 수 있습니다.

 

현재 시각이 맞지 않는 경우

  1. 아래와 같이 소스 파일 54 ~ 57 라인의 주석(//)을 해제하고, 현재 시각을 입력합니다.

    (년, 월, 일, 시, 분, 초, 요일)
    요일은 다음 중 하나를 입력합니다.
    Time::kSunday
    Time::kMonday
    Time::kTuesday
    Time::kWednesday
    Time::kThursday
    Time::kFriday
    Time::kSaturday

  2. 시리얼 모니터를 열어서 시각이 제대로 세팅되었는지 확인합니다.
  3. 아래와 같이 소스 파일 54 ~ 57 라인을 주석(//) 처리하고 다시 한번 업로드 합니다. (무한 세팅 방지)

Related Post