Halfback 0 8 сентября, 2023 Опубликовано 8 сентября, 2023 (изменено) · Жалоба всем доброго времени суток. Есть непонятки как реализовать калибровку RTC, конкретно у меня за 1 час время уходит на 1-2 минуты. в МК есть регистр RTC calibration register (RTC_CALR) где есть возможность добавить тиков или пропустить. В кубике на это счет даже есть функция HAL_RTCEx_SetCalibrationOutPut(...). Вопрос вот в чем - как понять сколько тиков надо добавить или пропустить? Нигде не могу найти соотв. exampe как всем этим механизмом пользоваться. Хочется иметь возможность подстраивать RTC без внешнего участия и подключений частотомеров. MK семейства F4 и L4 Изменено 8 сентября, 2023 пользователем Halfback Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Vasil_Riabko 1 8 сентября, 2023 Опубликовано 8 сентября, 2023 · Жалоба https://www.st.com/en/embedded-software/x-cube-rtc.html Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
jcxz 242 8 сентября, 2023 Опубликовано 8 сентября, 2023 · Жалоба 2 часа назад, Halfback сказал: всем доброго времени суток. Есть непонятки как реализовать калибровку RTC, конкретно у меня за 1 час время уходит на 1-2 минуты. ... Хочется иметь возможность подстраивать RTC без внешнего участия и подключений частотомеров. Подстраивать от чего? Источник эталонного сигнала? И почему у вас такой большой уход RTC? От чего его тактируете? Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Halfback 0 8 сентября, 2023 Опубликовано 8 сентября, 2023 (изменено) · Жалоба В 08.09.2023 в 15:57, jcxz сказал: И почему у вас такой большой уход RTC? От чего его тактируете? тактирую от внешнего кварцевого резонатора на 32768 https://www.chipdip.ru/product0/8001797043 у него 20ppm, мой уход больше этой цифры. Частотомера хорошего у меня нет но осцилл RIGOL показал с предварительно настроенного выхода MCO импульсы частотой 32765...32771 Гц (в течение часа). В 08.09.2023 в 15:57, jcxz сказал: Подстраивать от чего? Источник эталонного сигнала? STM пишет в том ключе, что мол подавая более высокую частоту аля HSE и считая кол-во импульсов LSE за определенную длительность в секундах, можно понять смещение LSE от нужной 32768. Ну о потом это смещение в регистре RTC_CALR учесть. Но до конца в этот процесс не смог вникнуть. Изменено 8 сентября, 2023 пользователем Halfback Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
EdgeAligned 85 8 сентября, 2023 Опубликовано 8 сентября, 2023 · Жалоба По частотометру особо не выстроите, поскольку нужно подстраивать с точностью до нескольких долей на миллион. Например, среднестатистический уход в 15 сек за месяц вызывается отклонением частоты на 6 ppm (0,0006%). Поэтому подстройка выполняется по замеру ухода часов на некоторый интервал времени, например 1 день. А если у вас получилась столь высокая погрешность (около 2%), то проверьте правильность настройки коэфф.делителей и правильность выбора источника частоты (точно ли выбран LSE). Частота генерации кварца может изменяться, когда вы в него тыкаете щупы осциллографа. Так же, надеюсь, вы установили нагрузочные конденсаторы для кварца? И правильно ли выполнили разводку платы в части подключения кварца и этих конденс., правильно ли подвели "землю" к ним? Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
jcxz 242 8 сентября, 2023 Опубликовано 8 сентября, 2023 · Жалоба 40 минут назад, Halfback сказал: тактирую от внешнего кварцевого резонатора на 32768 https://www.chipdip.ru/product0/8001797043 у него 20ppm, мой уход больше этой цифры. У вас вообще какой-то нереально конский уход. Надо искать что не так с кварцем или с его подключением. А не ваять костыли (калибровку). Уход 2/60 = 3.33% это слишком много даже для RC-генератора. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Arlleex 187 8 сентября, 2023 Опубликовано 8 сентября, 2023 · Жалоба Советую очень тщательно подойти к выбору конденсаторов кварца и для начала установить правильную емкость. 1 Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
AndyBig 8 8 сентября, 2023 Опубликовано 8 сентября, 2023 · Жалоба 3 hours ago, Halfback said: STM пишет в том ключе, что мол подавая более высокую частоту аля HSE и считая кол-во импульсов LSE за определенную длительность в секундах, можно понять смещение LSE от нужной 32768. Для этого у Вас на HSE должен стоять кварц с точностью в пару ppm 🙂 Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
RDutch 0 11 января Опубликовано 11 января · Жалоба У меня аналогичная проблема на STM32F427ZI. RTC тактируется от внешнего осциллятора Q-0,032768-MMTF32-6-10 32,768 кГц, frequency tolerance at 25 °C ± 5 °C ±: 10 ppm / ±20 ppm (указано тут). Отставание составляет от 1,7 сек до 3,0 сек в сутки. Тестировал на 5 экземплярах одного и того же устройства. Устройство несколько лет находится в производстве и схемотехнические изменения вносить в него запрещено. Необходимо откалибровать RTC устройства. Как я понимаю ситуацию: на каждом устройстве, в процессе его работы, необходимо периодически калибровать RTC. Т.е.: 1 измерить частоту RTC_CALIB 1.1 RTC_CALIB, которая в идеале должна быть 512 Гц, находится на висящем в воздухе PC13 1.2 Не понятно - как измерить частоту? Физически соединить PC13 с какой либо ножкой микроконтроллера нельзя, т.к. схемотехнические изменения вносить запрещено 2 выполнить калибровку. С этим всё понятно - в сети масса примеров Временное решение было таким: основываясь на 10 экземплярах устройства, был вычислен калибровочный коэффициент. Его гвоздями прибили в прошивке. Но это плохо, т.к. завтра параметры каких то элементов схемы немного изменятся, и часы начнут опять брехать. Необходимо сделать адекватную калибровку. Подскажите в какую сторону копать? Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
RDutch 0 11 января Опубликовано 11 января · Жалоба В 08.09.2023 в 16:40, Halfback сказал: подавая более высокую частоту аля HSE и считая кол-во импульсов LSE за определенную длительность в секундах, можно понять смещение LSE от нужной 32768. Думаю это единственный выход. Так ли это? Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
HardEgor 87 11 января Опубликовано 11 января · Жалоба 1 час назад, RDutch сказал: 1.2 Не понятно - как измерить частоту? Физически соединить PC13 с какой либо ножкой микроконтроллера нельзя, т.к. схемотехнические изменения вносить запрещено Поставить щуп на ножку PC13 и измерить. А если у вас реально производство, то делается оснастка для контактирования, никаких проблем. 1 Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
RDutch 0 11 января Опубликовано 11 января (изменено) · Жалоба 22 минуты назад, HardEgor сказал: Поставить щуп на ножку PC13 и измерить. Устройства, в процессе своей работы, находятся в разных концах страны. Щуп ставить или использовать оснастку в таких условиях некому. Поэтому устройства должны сами себя калибровать в процессе работы Изменено 11 января пользователем RDutch Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Сергей Борщ 143 11 января Опубликовано 11 января · Жалоба 2 часа назад, RDutch сказал: .2 Не понятно - как измерить частоту? Физически соединить PC13 с какой либо ножкой микроконтроллера нельзя, т.к. схемотехнические изменения вносить запрещено Включите EXTI на этой ножке. На более других STM32 этот сигнал часов уже заведен на один из входов какого-либо таймера. Тут такого, увы, нет. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
SapegoAL 0 11 января Опубликовано 11 января · Жалоба У меня 407. Выпускается долго. Конденсаторы и кварц вполне бытовые. Уход незначителен. При запуске партии видно, что зависит от партии кварцев.. То есть никаких подводных камней не встречал. Если кварц SMD, то надо по доку на него посмотреть какой кондёр ставить. Бывает 15, 22, 7 - поэтому смотреть. Кварцы ставим Jauch. Китайские не применяем. Для того, чтобы устр-во калибровало само себя, у вас должен быть источник опорного сигнала. То есть либо образцовая частота, либо точное время. По-моему это понятно даже необразованному... )) Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
RDutch 0 11 января Опубликовано 11 января (изменено) · Жалоба 29 минут назад, SapegoAL сказал: надо по доку на него посмотреть какой кондёр ставить Было принято решение решать проблему программным путём и не зависеть от партии тех или иных элементов. 29 минут назад, SapegoAL сказал: у вас должен быть источник опорного сигнала К MCU подключен кварц на 25 МГц 33 минуты назад, Сергей Борщ сказал: Включите EXTI на этой ножке. На более других STM32 этот сигнал часов уже заведен на один из входов какого-либо таймера. Тут такого, увы, нет. На PC13 включил GPIO_EXTI13 - теперь если на этот пин подать сигнал, то его можно обработать. Но у меня задач иная: На PC13 включить RTC_AF1 - теперь на этом пине будет генерироваться RTC_CALIB. Мне необходимо измерить его частоту Изменено 11 января пользователем RDutch Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться