ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • 아두이노와 MH Real Time과 연결하고 간단한 문자열 함수 보기
    Arduino/MH Real Time 2020. 11. 3. 17:50

    하드웨어의 연결

    위의 표에서는 D2~D4에 핀을 연결하였는데, A2~4번핀에 연결하자.

    MHREAL TIME의 CLK은 아두이노의 A4번 핀에 연결

    MHREAL TIME의 DAT은 아두이노의 A3번 핀에 연결
    MHREAL TIME의 RST은 아두이노의 A2번 핀에 연결

    나머지 핀은 GND와 VCC를 연결한다.

     

     

    라이브러리는 DS1302를 추가해서 사용한다.

    기본적인 내용을 시리얼 모니터를 통해 출력해보자.

    소스 코드

    더보기
    //  DS1302 라이브러리를 추가
    #include <DS1302.h>
    
    #define    SCK_PIN   A4 //  클락(출력핀)
    #define    DAT_PIN   A3 //  데이터(입력핀 일 수도 출력핀일 수도)
    #define    RST_PIN   A2 //  리셋(출력핀)
    
    DS1302 rtc(RST_PIN,DAT_PIN,SCK_PIN);
    
    void setup() {
      // put your setup code here, to run once:
      rtc.halt(false);          //  중지시키는 함수(중지 제거)
    
      rtc.writeProtect(false);  //  쓰기 방지 제거
    
      Serial.begin(9600);
    
      //  날짜 설정
      rtc.setDOW(TUESDAY);
    
      //  시,분,초 설정
      rtc.setTime(14,25,0);
    
      //  일,월,연도  
      rtc.setDate(3,11,2020);
    
      //  요일은 라이브러리에 추가되어있다.
      Serial.println(String("월요일 : ") +MONDAY);
      Serial.println(String("화요일 : ") +TUESDAY);
      Serial.println(String("수요일 : ") +WEDNESDAY);
      Serial.println(String("목요일 : ") +THURSDAY);
      Serial.println(String("금요일 : ") +FRIDAY);
      Serial.println(String("토요일 : ") +SATURDAY);
      Serial.println(String("일요일 : ") +SUNDAY);
    }
    
    void loop() {
      // put your main code here, to run repeatedly:
      Serial.println(String("요일 : ") +rtc.getDOWStr());
      Serial.println(String("날짜 : ") +rtc.getDateStr());
      Serial.println(String("시간 : ") +rtc.getTimeStr());
    
      delay(1000);  //  1초 간격으로 출력
    }

     

     

    간단한 문자열 함수들

    소스 코드

    더보기
    String s = "123:456";
    String is = "123";
    
    void setup() {
      // put your setup code here, to run once:
      Serial.begin(9600);
      
      Serial.println(String("찾는 위치 : ") +s.indexOf(":"));
    
      Serial.println(String("문자 분리 : ") +s.substring(0,3));
    
      Serial.println(String("문자열의 길이 : ") +s.length());
    
      Serial.println(String("문자열을 정수로 : ")+ is.toInt());
    }
    
    void loop() {}

     

    댓글

Designed by Tistory.