LSE RTC калибровка

электрический
Пн 19 февраля 2018 г., 21:28
Я добился прогресса с программным обеспечением для калибровки RTC STM32F103C8. Я провел свое первое тестирование сегодня на 3 разных синих таблетках. Если вы посмотрите на приложение ST примечание AN2604, http: // www.ул.com/content/ccc/resource/ ... 167326.PDF Вы увидите, что можно применить Cal -фактор к цепочке разделителей LSE, чтобы компенсировать ошибку частоты в цепи осциллятора. Я начал с изменения библиотеки RTClock, потому что ей не хватало некоторых функций, которые мне нужны (или разыскивались). Метод состоит в том, чтобы применить точный сигнал PPS от GPS -приемника к входному выводу и сравнить с делителем 32 кГц. Что дает точное измерение частоты. Затем подходящее значение компенсации рассчитывается и загружается в реестр калибровки процессора, который находится в домене резервного копирования и останется нетронутой, если аккумулятор подключен. Результатом является то, что RTC может быть автоматически откалиброван до +/- 1PPM. Вот образец пробега: acquired PPS pulse... starting calibration 0: diff = 0 ................................ 32: diff = 1 ................................ 64: diff = 2 ................................ 96: diff = 3 ................................ 128: diff = 5 ................................ 160: diff = 6 ................................ 192: diff = 7 ................................ 224: diff = 8 ................................ *** Calibration completed *** Calibration cycles:8 Calibration time:256 seconds measured divider difference:9 calculated correction factor:1.12 rounded correction factor:1.00 calibration value result:65 Calibration values applied, testing now... 0: diff = 0 ................................ 32: diff = 1 ................................ 64: diff = 1 ................................ 96: diff = 1 ................................ 128: diff = 1 ................................ 160: diff = 1 ................................ 192: diff = 1 ................................ 224: diff = 1 ................................ 256: diff = 1 ................................ 288: diff = 1 ................................ 320: diff = 2 ................................ 352: diff = 2 ................................ 384: diff = 2 ................................ 416: diff = 2 ................................ 448: diff = 2 ................................ 480: diff = 2 ................................ *** Test Cycle completed *** Test time:512 seconds measured divider difference:2 calibrated accuracy:0.131 PPM Calibration test complete... To calibrate again press a key to continue:

Mrburnette
Вт 20 февраля 2018 г. 1:07
Интересная работа. Напоминает мне об использовании RC OSC на Atmel AVR.

Но так как синяя таблетка имеет кристалл 32 тыс? http: // stm32duino.com/viewtopic.PHP?t = 1335

Луча

электрический
Вт 20 февраля 2018 г., 3:29
Я уже использую 32 -километочную схему на синей таблетках для хронометража, которая полностью заполнена и функциональна на всех досках, которые я получил. Дело в том, что вы можете использовать его как есть в библиотеке RTClock, предоставленной в примерах, которые поставляются с ядром. То, что я добавил в это, - это повышение точности в 10 раз раз. Это достигается путем реализации дополнительного калибровочного оборудования, встроенного в чип. Существующая библиотека игнорирует это.

Я назвал File Presentation Slides File HSE вместо LSE. Упс. Исправлена ​​это.

Ахулл
Вт 20 февраля 2018 г. 10:41
Будет ли коррекционный коэффициент, основанный на температуре чипа (считывается с датчика температуры на борту) повысить точность еще больше?

Я думаю о чем -то вроде коррекции в стиле TCO, когда вы помещаете кристалл в тепловой контакт с процессором или даже добавляете небольшой нагреватель резистора и внешний NTC, чтобы сохранить кристалл в узком диапазоне температуры.

Просто предполагая, что температура кристалла будет варьироваться непосредственно в соответствии с температурой процессора, вероятно, является хорошей отправной точкой для экспериментов такого рода.

Интересно, каков лимит теоретической точности.

электрический
Вт 20 февраля 2018 г. 12:57
Да, коррекция температуры может быть применена динамически. Главный улов - это то, что он не ответит, когда устройство будет включено. Это могло поддерживать только значение, которое было измерено до того, как пришла вниз. Если температура не изменяется до восстановления питания, то это почти нормально.

Кристаллические печи зависят от специальных кристаллов, которые имеют номинальную рабочую температуру намного выше комнатной температуры. Tempco - это обратная парабола, поэтому вы действительно хотите, чтобы кристалл работал в верхней части кривой, где дельта самая маленькая. Вот почему кристаллы 32 кГц имеют пик кривой при 25C. Я где -то читал, что действительно выбранные часы кристаллов пика при температуре тела, потому что приступает к часам. Не уверен, что это правда или городская легенда.

На слайд -шоу, которое я опубликовал, я покрываю температурную компенсацию. Но калибровка - большая проблема. Одной из проблем являются различия в фактическом отклике данного кристалла. Для измерения фактического ответа, я думаю, требует измерения в 3 точках, когда разность PPM измеряется при 3 разных температурах. Это потому, что вы не можете сказать, откуда фактический пик только от 2 измерений. Я наблюдал много вариаций от доски к доске - до 8 частей на час. Также имеет значение напряжения подачи. Я заметил огромную разницу с сине -таблетками LSE, в зависимости от того, подключен ли VBB с 3.3v или нет.

Система, которая у меня есть, нацелена на «низкие висящие фрукты». Я разжигаю контакты PC14 и PC15, потому что они OSC32IN и OSC32OUT. Это снижает емкость и связь с внешним оборудованием, без каких -либо существенных модов на плату. Я подключаю диод BAT46 последовательно с VBB и подключаю к нему ячейку монеты.

Мой опыт с калиброванной, комнатной температурой 32 кГц осцилляторов заключается в том, что они будут поддерживать около 1-2 частей на миллион в течение долгого времени. Чтобы улучшить это, на самом деле становится игрой в уменьшающейся доходности (из -за эскалации затрат и сложности). То, что было бы не слишком сложным, чтобы добавить к тому, что у меня уже есть, - это температурная компенсация. Это может быть сделано с датчиком температуры процессора, но я думаю, что это будет работать лучше всего, если бы режимы сна внедрились, так что это не теплее, чем должно быть.

Фактически, температура процессора является проблемой «красного флага» для калибровки, потому что, если она не работает в режимах сна, она значительно повышает температуру кристалла и больше, если он находится в небольшом корпусе. Таким образом, калибровка должна быть выполнена на полностью собранной, нагретой системе.

Мэнни
Вт 20 февраля 2018 г. 15:23
Следующий!

Пито
Вт 20 февраля 2018 г. 15:40
Вы не можете победить DS3231, нет шансов. НЕТ КРИСТАЛЬНЫХ НАСТОЯЩИХ НЕОБХОДИМОСТИ, НЕТ калибровки, около одного тока UA в среднем, несколько Secs/y выключено, не теряя время, когда BPILL вспыхнут..

Ахулл
Вторник 20 февраля 2018 г. 20:55
Вы не можете победить DS3231...

Возможно, нет.. Но это звучит как вызов, который, возможно, стоит изучить.

DS2321 заявляет следующее в техническая спецификация. Accuracy ±2ppm from 0°C to +40°C Accuracy ±3.5ppm from -40°C to +85°C

электрический
Вт 20 февраля 2018 г. 22:03
[Пито - Вт 20 февраля 2018 г., 15:40] - Вы не можете победить DS3231, нет шансов. НЕТ КРИСТАЛЬНЫХ НАСТОЯЩИХ НЕОБХОДИМОСТИ, НЕТ калибровки, около одного тока UA в среднем, несколько Secs/y выключено, не теряя время, когда BPILL вспыхнут..
Ну, я поклонник DS3231. Но сейчас мне нравится идея полной системы на одной плате, не считая периферийных устройств, таких как дисплеи и тому подобное. RTC, который не на борту, является еще одним модулем для борьбы с. Теперь у меня есть рабочие часы, состоящие из одной синей таблетки и одного светодиода TM1637. С четырьмя проводами между ними. Мне нравится простота. Если я хочу добавить ESP8266, я мог бы сделать это, но за пределами трех модулей, и он начинает становиться беспорядком. По той же причине я жду отгрузки некоторых досок STM32, которые имеют встроенные гнезда для таких вещей, даже OLED -дисплей. Так что мне нужна лучшая причина, чтобы использовать его. Также DS не обеспечивает доступа к дробному времени, поскольку ST. Мне не нужны глупые разбитые байтовые подразделения, которые необходимо перевести на правильное время эпохи, которое я использую для всего. DS не обеспечивает резервную копию RAM, у ST есть 20 байтов. Спецификация ствола батареи для DS равен 0.84UA TIP, ST 1.4UA, лишь немного больше.

Каким бы замечательным ни был DS3231, я заметил, что простые схемы могут бросить вызов этим в некоторых ситуациях. Мне было немного повеселиться 2 года назад, применяя триммерные конденсаторы ручной работы на часы в долларах. Лучшие из них могут сохранить время при комнатной температуре примерно в 15 секунд в год. Конечно, если температура изменится, это будет штач. Я экспериментатор. Если вы передадите мне игрушку, я хочу поиграть с ней в той мере, в которой я могу придумать. Мне кажется, что существующая схема RTC на синих таблетках хорошо вписывается в мою многоуровневую стратегию источника времени, которая интегрирует локальные и внешние источники времени, такие как GPS или NTP, фактически упрощает ее, потому что никаких дополнительных компонентов не требуется, и я не буду « T должен зависеть от программного обеспечения для поддержания дробного времени. Это тоже бесплатная игрушка. У каждой синей таблетки, которую я вижу до сих пор, есть цепь. Так что заставлять его правильно работать, у меня нет ничего, в чем я сомневаюсь, тем более что это уже сделано.

Кроме того, я не испытывал никакой потери времени во время мигания. Я мог бы ошибаться, но я думаю, что домен резервного копирования не сброшен, если и VCC, и VB не удалены.

Вы вызвали идею для другого эксперимента - DS3231 имеет выход 32 кГц, который может быть подключен к LSE в качестве внешнего ввода часов. Это может быть интересно играть с. Этот вывод включен по умолчанию при включении питания, поэтому не потребуется никаких соединений I2C.

РЕДАКТИРОВАТЬ - С уважением превышает производительность DS3231 - это было бы почти невозможно. Есть краткосрочная и долгосрочная стабильность, чтобы подумать о. Но, в конце концов, DS - это просто кристаллический генератор с некоторым аппаратным обеспечением, чтобы настроить его. Я думаю, что если бы вы могли калибровать и компенсировать температуру, вы могли бы равняться или даже едва превышать производительность DS. Но, как я указывал ранее, активная компенсация полагается на власть. Как минимум, вам придется спать процессор и периодически просыпаться, чтобы подражать примерно раз в минуту обновления температуры, которые выполняет DS. Таким образом, вам придется найти способ запустить процессор на питание аккумуляторов, если вы не ожидаете длинных перерывов питания. На самом деле, для стола или настенного часа, это обычно имеет место.

Ddrown
Ср 21 февраля 2018 г., 2:17
Интересный проект! У меня есть некоторые данные, которые могут найти интересными. Я собрал график температуры и частоты для одного кристалла 32 кГц на STM32F031:
Изображение

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

Вторым фактором является старение. Этот график предназначен для TCXO вместо кристалла 32 кГц. Его спецификация данных составляет 1ppm/год в течение первого года.

Изображение

И, наконец, вы упоминаете об изменениях частоты с напряжением. У меня нет хорошего графика для этого, но это правда :)

Я использую Dithering, чтобы установить частоту RTC, поэтому я могу получить намного лучше, чем 1PPM, пока CPU и TCXO работают:

Изображение

Это хорошо примерно для 0.047PPM (~ 40 мс за ~ 10 дней), что, вероятно, является пределом моего TCXO:

Изображение

DS3231 имеет большое преимущество в том смысле, что он может продолжать исправлять свою локальную частоту на батареи монетной ячейки. Таким образом, вам нужно рассмотреть «на ячейку монеты» против «монета». Чем больше времени, проведенного на монетной ячейке, тем лучше DS3231 будет.

Дополнительная информация о измерении RTC (раздел «Данные о RTC»)

Дополнительная информация о частоте RTC

Дополнительная информация о старении измерения

электрический
Пт 23 февраля 2018 г., 20:47
Это чрезвычайно полезная информация. Я понял, что дивергинг будет необходим, поэтому я также реализовал его. Это действительно имело значение, конечно. После нескольких тестовых прогонов с Dithering стало очевидно, что изменения температуры будут моей главной проблемой. Я застрял на этом, потому что я не смог понять, как должна использоваться функция библиотеки ADC Readtemp (). Это висит, когда называется. Я попытался адаптировать примеры эскизов, но я даже не буду публиковать то, что я сбросил вместе, потому что это такие догадки.

По крайней мере, сражение работает, вот код: // once per second ISR // fractional dithering of the Calibration Register void fractionalDither() { static int cycleCount = 0; const int COMPENSATIONCYCLE = 32; // defined in clock calibration hardware static int accumulator = FRACTIONALGRANULARITY / 2; if (runISR and fractionalCalibrationConstant != 0) { cycleCount++; if (cycleCount >= COMPENSATIONCYCLE) { cycleCount = 0; accumulator -= fractionalCalibrationConstant; if (accumulator < 0) { accumulator += FRACTIONALGRANULARITY; ditherOn = true; rt.setCalibrationRegister(truncatedCalibrationConstant + 64 + 1); } else { ditherOn = false; rt.setCalibrationRegister(truncatedCalibrationConstant + 64); } } } }

Дэнниф
Пт 23 февраля 2018 г., 21:51
Было бы проще, если бы вы просто обернули нагреватель PTC на кристалл?

Дэнниф
Пт 23 февраля 2018 г., 21:53
how the ADC library function readTemp() is supposed to be used.

Пито
Пт 23 февраля 2018 г. 22:09
Трево времени - хорошая область для экспериментов, конечно :)
За исключением того, что DS измеряет внутреннюю температуру кристалла с определенными интервалами (вы можете установить период), и он соответствует соответствующим образом настройки конденсаторов внутренней настройки, у него есть регистр старения, где вы можете также настроить (изменяющееся) смещение. У него также есть резервный SRAM (DSXX32).
DS'es 2PPM предназначен для 0-40DEGC, при использовании его при температуре окружающей среды (скажем, 23 +/- 3DEGC) вы получаете несколько секунд/у (Mine Cheapo Module сделал 4SEC/6 месяцев, не связываясь со старением).

PS: Cheapo Modules, которые я получил, используют версию «N» с -40 ° C до +85 ° C.
DS претензии "Точность ± 3.5pm от -40 ° C до +85 ° C " -это невероятная точность при условии, что у вас есть идея, что означает от -40 ° C до +85 ° C.. ;) (Ваша монетная батарея перестает работать на -40 и может взорваться на 85)..

Ахулл
Сб 24 февраля 2018 г. 12:05
Интересно, что это также говорит о том, что DS TCO, вероятно, работает при +85 ° C, поскольку он может оставаться стабильным до этой температуры окружающей среды.

Предположительно, поскольку резитивная печь может нагревать кристалл, но не охлаждать его, тогда температура окружающей среды превышает +85 ° C, нет никакого DS, чтобы сохранить регуляцию кристалла.

Кстати Ваша батарея также взрывается, если заряжена при 3V3...

Пито
Сб 24 февраля 2018 г., 11:23
В DS нет обогревателя, DS компенсируется температурой, он не подвергается духовке..
Он измеряет температуру, и на основе калибровочной таблицы он меняет значения конденсаторов.
Сам чип DS является довольно сложной установкой, возможно, более сложной, чем сам 103C8 :)

Вот снимки кремния DS:
https: // блог.Хайпете.com/2017/07/29/a-l ... ime-clock/

Из этого блога: - Справочный сигнал представляет собой сигнал 1PPS от моего Trimble Thunderbolt GPSDO, который имеет точность +/- 20NS или около того. Это подается в мой осциллограф в качестве триггерного сигнала.

- 32.Сигнал 768 кГц от DS3231 подключен к триггеру Schmitt для очистки растущего края (модуль, который у меня есть, имеет 4.7 Кум подтягивание, поэтому подъемный край немного медленно), вывод которого входит в один из каналов на осциллографе.

Я установил осциллограф на 1-2 микросекунд на разделение, затем наблюдаю за тем, как импульсы дрейфовали влево или вправо со временем. Я запускаю таймер, когда один из импульсов достигает одной из знаков на громкой и времени, сколько времени требуется, чтобы импульсы дрейфовали, чтобы другой пульс достигает громкости. Обычно требуется минута или две с неокрашенным генератором, который соответствует 0.25-0.50 ч / млн.
Мое нынешнее понимание таково, что если вы положите DS в коробку из пены с полистиролом толщиной 1 дюйма, со стабилизированным и отфильтрованным питанием 3V, и вы будете отрегулировать рег старения, вы должны достичь <1 сек/y.

гиперион
Пт 23 марта 2018 г., 3:16
Создать PR для калибровки RTC, который позволяет выходить на вывод на PC13
https: // github.com/rogerclarkmelbourne/ ... 2/тяга/467

Чиндуй
Солнце 25 марта 2018 г. 15:26
Я не могу использовать внутреннюю RTC синей таблетки, 3 доски клонов дали мне 3 результата. Первая доска была довольно точной, но 2 других было за 2 часа/день. Итак, я вернулся в DS3231 с его 24C32 EEPROM.

Надеюсь, вы сможете улучшить ситуацию.

гиперион
Пн 26 марта 2018 г. 1:31
Я тестирую Maple Mini с внешним LSE с старой материнской платы. Нет конденсаторов. Только кристалл. Уже бег 2 недели. Точность +1 час \ неделя. Пока нет калибровки

электрический
Сб 31 марта 2018 12:12
[Чиндуй - Солнце 25 марта 2018 г. 15:26] - Я не могу использовать внутреннюю RTC синей таблетки, 3 доски клонов дали мне 3 результата. Первая доска была довольно точной, но 2 других было за 2 часа/день. Итак, я вернулся в DS3231 с его 24C32 EEPROM.

Надеюсь, вы сможете улучшить ситуацию.
Какую схему вы используете, чтобы обеспечить напряжение на VBAT? Я обнаружил, что важно иметь устойчивое внешнее напряжение. Сейчас я использую пару диодов Шоттки, чтобы поставить его из батареи или VCC.

У меня уже есть компенсированные часы на моем столе. Я просто не решал проблему, как поделиться кодом. Например, библиотека RTC в настоящее время не обеспечивает доступа к реестру калибровки постоянной. Мне пришлось модифицировать это, чтобы сделать это.

электрический
Сб 31 марта 2018 12:32
[гиперион - Пт 23 марта 2018 г., 3:16] - Создать PR для калибровки RTC, который позволяет выходить на вывод на PC13
https: // github.com/rogerclarkmelbourne/ ... 2/тяга/467
На самом деле есть три состояния, которые вам нужно, чтобы заставить CAL работать
1) Калиброванная операция отключена
2) Включена калиброванная операция
3) Выполнить калибровку

Я думаю, тебе нужно разделить их лучше. Общие различия будут:
1) Загрузка 7fff, CPU CAL OP отключен, CAL Constrat
2) Загрузка 7ffd, CPU CAL OP включен, CAL Constant-64 +/- N, FAMPER OFF
3) загрузка 7fff, CPU CAL OP отключен, CAL Constrat

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

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

Когда я бросил идею в свою голову, я подумал, что полезная библиотека будет предложить выбор 1) или 2), с 2) загрузкой нейтрального значения Cal 64. Также добавление методов для чтения и записи калифорнийского регистра. Тогда метод калибровки 3) будет соответствовать пользователю. Это может быть так же просто, как ожидание в месяц, чтобы измерить ошибку «по наручным часам» и поиск значения из диаграммы и загрузка ее.

электрический
Пн, 02 апреля 2018 г., 13:35
[гиперион - Пт 23 марта 2018 г., 3:16] - Создать PR для калибровки RTC, который позволяет выходить на вывод на PC13
https: // github.com/rogerclarkmelbourne/ ... 2/тяга/467
Может быть, мне следует попытаться сложить этот запрос в новый запрос на обновление до RTClock, так как я уже реализовал все остальное, что я упомянул в предыдущем посте?

Чиндуй
Вт, 03 апреля 2018 г. 8:23 утра
Какую схему вы используете, чтобы обеспечить напряжение на VBAT? Я обнаружил, что важно иметь устойчивое внешнее напряжение. Сейчас я использую пару диодов Шоттки, чтобы поставить его из батареи или VCC.

У меня уже есть компенсированные часы на моем столе. Я просто не решал проблему, как поделиться кодом. Например, библиотека RTC в настоящее время не обеспечивает доступа к реестру калибровки постоянной. Мне пришлось модифицировать это, чтобы сделать это.
Я просто подключил батарею CR2025 к VBAT.

электрический
Чт, 05 апреля 2018 13:42
[Чиндуй - Вторник 03 апреля 2018 г. 8:23 утра] - Я просто подключил батарею CR2025 к VBAT.
Имейте в виду, что ST документирует небольшой ток на аккумулятор на VBAT во время питания. Некоторым батареям это может не понравиться. Другим недостатком с таким подходом является то, что батарея всегда будет питать домен резервного копирования. С двойными диодами питание поступает от VCC, когда устройство включено (что для моего приложения в основном все время... Не уверен, что вы используете). Это означает, что батарея не продлится так долго. Также в отличие от VCC, напряжение на аккумуляторе со временем падает, что повлияет на время.

Чиндуй
Пт 06 апреля 2018 г. 8:53 утра
Мое приложение - часы в реальном времени, VCC не всегда доступен. Я использовал две новые батареи с 2 новой синей таблеткой, чтобы сравнить. После одного дня первое было поздно 2-3 с по сравнению со временем моего ноутбука, а другой был поздним 3 часам.
И мой продавец локали сказал, что это нормально, RTC STM32F103C8T6 был таким нестабильным, он посоветовал мне использовать модуль DS3231.

Ахулл
Пт 06 апреля 2018 г. 9:33 утра
Я подозреваю, что STM32F103XX не проблема.

Скорее всего, кристалл или связанные конденсаторы являются причиной плохой работы часов.

Таблица DataShing STM очень специфична в отношении того, какой тип кристаллического использования и типа и значения CAPS и планировку платы, но поставщики BluePill полностью игнорируют все это и используют все, что было самым дешевым на рынке Шэньчжэнь в тот день, и в результате , вещи либо работают приемлемо хорошо, либо вообще не. Все доски, которые я пробовал, работал нормально, в том числе тот, который я добавил спасенный кристалл из старого модуля часов. Я не ожидал, что это сработает, но это тоже было хорошо.

Если вы получите доску с приличным кристаллом и правильными крышками, она работает нормально, но это немного лотереи. DS3231 полностью самостоятельно, поэтому дешевым производителям платы трудно испортить вещи. Трудно, но не невозможно, таковы радости использования недорогих досок от неизменных поставщиков. :ржу не могу:

Если у вас есть время, вы можете попробовать заменить кристалл на доске «3 часа в день» и посмотреть, улучшится ли он.

электрический
Вт 10 апреля 2018 г. 16:52
Да, макет бездум. Преступное гранича. Я пробовал только 4 п.н. Есть некоторые следы, которые вы можете разрезать, но это не стоит хлопот. Если бы я увидел тот, который, скажем, 3 часа в выходной. Попробуйте переотестовать их.

Молитесь, скажите - какой тип аккумулятора вы использовали?

Ахулл
Вт 10 апреля 2018 г., 18:20
[Чиндуй - Пт 06 апреля 2018 г. 8:53 утра] - Мое приложение - часы в реальном времени, VCC не всегда доступен. Я использовал две новые батареи с 2 новой синей таблеткой, чтобы сравнить. После одного дня первое было поздно 2-3 с по сравнению со временем моего ноутбука, а другой был поздним 3 часам.
И мой продавец локали сказал, что это нормально, RTC STM32F103C8T6 был таким нестабильным, он посоветовал мне использовать модуль DS3231.
Было несколько других тем о проблемах RTC, и, насколько я помню, они все оказались связанными с кристаллом или плохой пайкой со стороны производителя совета, а не неисправным STM32F103

Например, здесь-> ViewTopic.PHP?f = 3&t = 2421&P = 32443&hilit = ... Бэй#P32443
.. и здесь.. ViewTopic.PHP?f = 15&t = 132 (Хотя эта ветка действительно немного долго, я обвиняю ОП ;) )

Значение Wong, поврежденные или отсутствующие конденсаторы нагрузки, или нагрузочные конденсаторы, неподходящие для кристалла, будут оказывать заметное влияние на точность или могут остановить полное колебание. Аналогично треснутый или стрессовый кристалл будет иметь разные характеристики от хорошего. Повреждение кристалла с плохим обращением во время производства может привести к тому, что он окажется на стрессовых треках из -за агрессивного изгиба своих штифтов или перегрева его при пайке.

Чиндуй
Вт 17 апреля 2018 г. 9:54 утра
Было несколько других тем о проблемах RTC, и, насколько я помню, они все оказались связанными с кристаллом или плохой пайкой со стороны производителя совета, а не неисправным STM32F103 Это должно быть, я не думал, что STM продаст плохой MCU. Blue Bill Board, которую я получил, была дешевым китайским клонами, было приемлемое качество.
DS3231 является хорошим решением для RTC и внешнего EEPROM. Больше не нужно эмулировать eEPROM.