Nikan писал(а):похоже на то
Спасибо за подтверждение.
Значит Ардуинке легче вместо просто считывания регистров RTC, используя свой таймер рассчитать секунды и свериться с данными в регистрах RTC спустя минуту? Это же сколько "лишнего" засунули в микросхему производители? Этот подход подтверждается работой Ардуино при обрыве связи с RTC. Она досчитает самостоятельно секунды до 60, запишет в часы, минуты, секунды 00 и продолжит считать свои секунды следующую минуту. С такими раскладами (библиотеками)сомнительный смысл тактироваться от RTC для задач менее требовательных к точности как у Ув. Автора? Ожидаемой экономии использования ресурсов (памяти, процессорного времени) не будет. Писал мне один Уважаемый человек здесь на форуме, что Ардуинщикам вредно углубляться в Тех.документацию. Шучу дальше под спойлером.
[spoiler=Спойлер]Раз уж Ув. автор темы исчерпал свой вопрос, может кто-то поможет и мне миновать близкий взрыв мозга от работы RTC 1307, или моих скудных "познаний" в С++, или симуляции процесса в Протеусе, или ... т.п.
если запустить в Loop секции условие
if(preStr!= dataStr)
{preStr = dataStr;
<<исполняемый код>>;}
Где String dataStr - преобразованные в строку текущие данные времени с выхода RTC,
а String preStr - сохранённые данные dataStr в предыдущем цикле Loop,
то условие будет выполняться всегда, т.е. preStr будет перезаписываться в каждом цикле, хотя значения (по дисплею) не изменились.
пробовал и через (preStr.equals(dataStr))
Если же вместо данных с RTC явно укажем вначале (dataStr = String("ххххххх")) , "транзит" срабатывает.
Надеюсь последняя информация от меня достаточная для моделирования и не выходит за рамки Песочницы или Начинающим.[/spoiler]