Странный вывод от DS1307 RTC

rtc

Я использую DS1307 RTC (https://www.adafruit.com/product/3296) и микроконтроллер Arduino Mega, пытаясь просто установить и прочитать время RTC. Однако при каждой попытке вывести данные на последовательный монитор я получаю вот такое:

Пример вывода

Код и схема подключения довольно просты, поэтому я и запутался. Я просто напрямую подключаю выводы Vcc, GRND, SCL и SDA часов к Arduino и использую слегка изменённую версию примера кода из библиотеки RTC, предоставленной Adafruit.

#include <Wire.h>
#include "RTClib.h"

RTC_DS1307 rtc;

void setup () {
  while (!Serial); // for Leonardo/Micro/Zero

  Serial.begin(57600);
  rtc.begin();

  rtc.adjust(DateTime(2017, 11, 17, 20, 33, 0));


}

void loop () {
    DateTime now = rtc.now();

    Serial.print(now.year(), DEC);
    Serial.print('/');
    Serial.print(now.month(), DEC);
    Serial.print('/');
    Serial.print(now.day(), DEC);
    Serial.print(' ');
    Serial.print(now.hour(), DEC);
    Serial.print(':');
    Serial.print(now.minute(), DEC);
    Serial.print(':');
    Serial.print(now.second(), DEC);
    Serial.println();

    Serial.println();
    delay(1000);
}

Я знаю, что делаю что-то не так, но не понимаю, что именно. Буду очень благодарен за любую помощь.

, 👍1


1 ответ


-1

Измените скорость передачи данных на 57600, это указывает на: Serial.begin(57600);

,