Все те же часы

Петр пишет о том, что периодичность чтения времени с I2C-часов определяется неполной секундой, которую считают миллисом. За секунду далеко они не разбегутся.
Хотя, с другой стороны, у этого чипа RTC есть секундный выход (SQW), если правильно помню.

А я вот думаю, зачем все это, если кругом есть вайфай, есп и нтп,

1 лайк

Смысл моей писанины в том, чтобы время на дисплее обновлялось сразу же после смены секунд в rtc , а не спустя например 0.5 с. А то ктонить опять упрекнет, что часы отстают)))
Стыдно признаться, но я не собрал ни одних часов на ардуино. Да и метео станцию тоже… Флюгер и анемометр стоят на шесте, а ардуинку к ним подключить все времени нет. Так и определяю визуально скорость и направление ветра… Ужос.))

1 лайк

Правильно помнишь. Вот если его зарядить на прерывание то не надо никаких миллис .

Чтение пина ничуть не медленней чтения I2C в ожидании смены секунд. Остальные накладные расходы на вывод картинки эквивалентны. Задержка будет в любом случае, так что беспокоится нет причин.

1 лайк

Если есть свободные пины, то я за.

Короче, парни, за свободные пины - :wine_glass:

1 лайк

Хороший вопрос - зачем там PD триггер? ))

Я для этого опрашиваю RTC каждые 50 милисекунд. Не рассыпется ))

Не будет millis() корректно так работать, точнее вообще не будет так работать - там нужно ещё добавлять новый обработчик прерывания Timer/Counter0 Compare Match A.

И снова здрасьте. Дермо немного улеглось. Теперь по порядку. Полностью согласен с Pyotr, по поводу миллис. Часы идут в rtc, иначе зачем ОН, в момент когда секунды rtc обнуляться if (targetTime < millis()) и свершается это таинство - прибавиться единица на ЛСД и в регистрах СТМ32. Часы могут отстать на одну сек, если и там и там будут нули (например), но синхронизируются они от разных источников, и это условие возможно 1 на миллион, может и миллиард. Автор этих часов все это продумал, и сделал очень грамотно. Далее про ЧИП 2721. Я своял много игрушек и везде ставил микро USB много и не по одному разу разьем отваливался от натуги, наверное. Паять его очень не удобно, да еще с моим одном глазом. Нашел (случайно) USB-C, с этим чипом. получил и хотел его выкинуть. Оказалось плата МПП, не стал мудрить. Изучив функционалку, тоже был удивлен, ничего особенного стоит полевик параллель входу с резистором в истоке. есть выход управления p-канальным полевиком, но он не используется. Короче, конвертировал в ток и напряжение на выходе стало на уровне 5В. раньше на холостую до 5.8В доходило и стабилитрон не помогал. как ОН это делает не совсем понято, но за 63000 которая стоит в самом корпусе часов, мне стало спокойно. Она не выносит более 5.5В, одну самую первую сжег этим, правда по выходу - не пропаял делитель на FB по минусу. Про открытый сток. Года 3-4 назад, я делал это в стм32ф446 на С. Там на каждый порт отведено 3 регистра. В одном из них, по адресу, нужно записать в определенные биты две единицы. Можно писать на прямую, а можно считать-исправить-записать. Может это только в Ф446, хотя вряд ли. У них даже выводы совпадают, просто в последней 64Pin и фарша гораздо больше. Вроде все просто бери даташит узнавай по какому адресу порты, и пихай, но как это делать в ардуино - не знаю - ЧАЙНИК. В Си через HAL драйверы. MOSFET установленный в часы из ОЧЕНЬ старых запасов без маркировки, мы пользовались парт номером 5N1. я понял, почему он так, логика была 5В, ток канала у него 5А, а вот крутизна наверное не очень. Заказал датчик положения. придут, попробую сделать выключение подсветки. Тряхнул загорелась, ешо тряхнул погасла. Но с этим, надеюсь сам разберусь. Все равно вскрывать банку, все вынимать, паять, заодно и FET новый поставлю. Как всегда, недельку поиграю и в шкап.

а нарисовать по человечески влом было, что это у тебя подключение от USB?

А глаза свои тебе открыть влом было там на фунционалке написано, тем более вопрос то очень существенный.

я в петроглифах (наскальных надписях) не разбираюсь, от конструктора ожидалась схема по ГОСТ, конкректно по этой микросхеме, у неё другое предназначение, а за использование компонента не по назначению, тебе как конструктору старшие товарищи точно по чём-то настучали, если ты действительно конструктор

Есть измерение напряжения на входе 63000, т.е. напряжение сети и Акк. Пока Акк разряжен, напряжение там не поднимется выше 4В. так подобраны преобразователи В → А. А как только станет оное, ключ выключится, а напряжение увеличится до 4.5В и будет питать часы, пока есть сеть. Если захочется руками отключить зарядку, это нужно сделать либо когда на ЛСД 30 либо 00сек. Потому что напряжение АЦП измеряется в это время (смотри скетч). на выходе 63000 стоит дополнительно тантал 470мкФх10В и его заряда должно хватить на 1 сек. Код с АЦП упадет ниже 4В, ключ снова включится и часы заработают от Акк. Пока это не отлажено, ключ плохо управляется. если интересно, посмотрите ранние посты.Не знаю понятно ли я объяснил. старался.

Видится мне ты не только в петроглифах не разбираешься, ты и в профессиях не разбираешься. Расскажи в чем ее предназначение. Мне было бы интересно, я серьезно. Мне кажется это источник напряжения параллельного типа, либо последовательного, когда работает через MOSFET. На этой плате такового не было. Думаю, что китайцы не глупее нас. А схему по госту жди. гостов много, тебе по какому?.

это контроллер быстрой зарядки, общается с источником питания по протоколу и если нужен большой выходной ток, он запрашивает у ИП повышения напряжения на входе, по этой микросхеме не помню, но есть БП позволяющие поднять напряжение до 50 вольт, на выходе на 5 вольтах будет 10 ампер, вывод, нахера она тут? любая зарядка 5 вольт даст тебе 1 ампер, для подзарядки лития достаточно
Модуля на TP4056 для часиков достаточно и не надо ничего городить

Для буду, колдун! ))

Как ты смог понять из этого словесного, ну так скажем, описания, что ТС городит бесперебойник? Я даже после публикации “схемы” не сразу врубился ))

3 лайка

Да “схема” зачетная, я только не понял +5 и +3 зачем объединены?
Остального в ней я ваапще не понял))

2 лайка

я так и подумал, зачем ты дерзишь, если сам не разобрался, как он общается, по какому протоколу там всего подключено 2 нонца СС1 и СС2 по ним данные передаются USB двух
форматов: /PD2.0. или /PD3.0, слышал о таких. и согласует уровни данных. А режим питания задается при изготовлении модуля перемычками у меня 5В. Я пометил строки символом "? " подтверждают это. Это перевод с даташита. Конструктора занимаются конструированием изделия, где поместить платы, модули. Как защитить их о внешних воздействий, влаги, грязи и прочих, догадываешься каких. Как удобнее менять источник тока, если есть. и я в этом тоже, или хуже чем в ардуино разбираюсь. Схему я рисовал. потому что просили питание посмотреть, как реализовано. Дай схему и тебе будет счастье.

Поддержка режима TYPEC / PD2.0 /PD3.0 UFP для USB
ТИП входного порта
 Автоматическое определение состояния USB-соединения ???
 Интеграция USB-источника питания (PD2.0/PD3.0) протокола ???
 Интеграция аппаратного двухфазного кодирования меток (БМК) за куб.
 Интегрировать физический уровень ???
 Оборудование CRC защиты целостности данных
 Интегрировать PD2.0/PD3.0 двигатель протокола уфп
 Сайт hardreset поддержку
 Интегрировать протокол USB-TYPEC
 Управления питанием ???
 VBUSG управляет шиной питания с помощью внешнего модуля
NMOS, в зависимости от состояния согласования CC
 IP2721: SEL настраивает максимальное
напряжение, запрашиваемое PD, на 20 В, 15 В или 5 В
 IP2721_MAX12: SEL настраивает максимальное
PD запрашивает напряжение 12 В, 9 В или 5 В
 Поддержка плавного пуска по шине VBUS ???