Не выводится время на LCD дисплей

использую LCD 1602 и DS1302 не получается вывести время (показывает нули)

#include "stDHT.h"
#include <LiquidCrystal.h>
#include <DS1302.h>


DHT sens(DHT11); // Указать датчик DHT11, DHT21, DHT22
LiquidCrystal lcd(12, 11, 5, 4, 3, 2);
DS1302 rtc(7, 6, 13);

void setup() 
{
  rtc.halt(false);
  rtc.writeProtect(false);
  
  lcd.begin(16,2);

  rtc.setTime(13, 25, 4); 
  
  pinMode(10, OUTPUT);
  pinMode(A0, INPUT);
  pinMode(8, INPUT);
  digitalWrite(8, HIGH);
  analogReference(INTERNAL);
 
}

void loop() 
{
  int w = analogRead(A0);
  int t = sens.readTemperature(8); // чтение датчика на пине 2
  int h = sens.readHumidity(8);    // чтение датчика на пине 2

  if (t > 35) ( digitalWrite(10, HIGH)); 
  if (t < 20) ( digitalWrite(10, HIGH)); 
  else ( digitalWrite(10, LOW));

  if (h < 40) ( digitalWrite(9, HIGH)); 
  if (h > 60) ( digitalWrite(9, HIGH)); 
  else ( digitalWrite(9, LOW));
  
  lcd.setCursor(0, 0);
  lcd.print(t);
  lcd.setCursor(0, 1);
  lcd.print(h);
  lcd.setCursor(5, 0);
  lcd.print("t");
  lcd.setCursor(5, 1);
  lcd.print("h");
  lcd.setCursor(3, 0);
  lcd.print("C");
  lcd.setCursor(3, 1);
  lcd.print("%");
  lcd.setCursor(8, 0);
  lcd.print("0000");
  lcd.setCursor(8, 0);
  lcd.print(w);
  lcd.setCursor(13, 0);
  lcd.print("w");
  delay(500);
  lcd.setCursor(7, 1);
  lcd.print(rtc.getTimeStr());
  delay(1000);
}



Посмотрите как выводится время в примере :slightly_smiling_face:

в каком примере?

Вашей библиотеки DS1302.h
Заодно посмотрите как должны выводится цифры у которых меняется порядок.

В любой библиотеке Ардуино есть примеры кода. Когда у вас что-то не работает, первым делом стоит смотреть туда

Больше интересно, что за библиотека, где озадачились такой строкой :slightly_smiling_face:

Проверьте модуль, после стр.61 вставьте

 Serial.print(rtc.getTimeStr()); // Отправить текущее время через последовательный порт

и , посмотрите в терминале вывод.

Да, в сетапе не забудте вставить Serial.begin(9600);

Если DHT не зависает, код должен работать.
Закомментируйте , для проверки, всё, что связано с датчиком темп-ры и влажн(DHT11).

Если не поможет, проверьте соединения и сам модуль RTC

Неужто проверили?

В Протеусе, по-быстрому, только сериал, и без DHT.(времени свободного маловато)
Но, если по сериалу модуль выдаёт время,(именно эта функция библиотеки), почему на lcd не работать?

Как бы да, но это если правильно запихнуть начальное время(да при правильном соединении и живом кварце). Я ж первую попавшеюся глянул( а их, походу, много), дык там аж семь аргументов изначально заслать надо. Правда и красивой автоматической строки на вывод нету.

Так и я первую попавшуюся))
эту

Я в коде ТС ничего не менял, только убрал DHT

Ба, знакомые всё лица! Ну, у него всё заработает(особенно учитывая что конкретный пример под LCD есть :slightly_smiling_face: )
Осталось ТС разобраться с затиранием остатков при выводе с переменника/DHT.

dht проверил дело не в нём и через serial проверил показывает нули

Молодцом! Теперь проверьте потенциометр и датчик уровня жидкости - вдруг в них проблема :roll_eyes:

всем спасибо я разобрался всё работает

Точно? И 9 градусов показывает и 9 влажности? Про аналог уже и писать неохота :neutral_face:

dht всё правильно показывает

Ок. В чем проблема была?

не правильно подключение указал