реклама на сайте
подробности

 
 
> TimeStamp в RTC STM32F0, Как его записать программно?
Baser
сообщение Apr 4 2017, 15:47
Сообщение #1


Просто Che
*****

Группа: Свой
Сообщений: 1 567
Регистрация: 22-05-07
Из: ExUSSR
Пользователь №: 27 881



Есть устройство на STM32F072. Домен RTC запитывается от мелкой батарейки.
Нужно при пропадании основного питания запоминать время выключения. А обработка этого времени производится уже после включения. Поскольку в RTC есть встроенные регистры TimeStamp, думал применить их для хранения времени выключения.

Читаю документацию, и не могу найти, можно ли активировать запись времени в TimeStamp программно.
Все натыкаюсь на аппаратные события по ножкам МК
Можно это сделать программно?
Go to the top of the page
 
+Quote Post
 
Start new topic
Ответов
Baser
сообщение Apr 13 2017, 17:35
Сообщение #2


Просто Che
*****

Группа: Свой
Сообщений: 1 567
Регистрация: 22-05-07
Из: ExUSSR
Пользователь №: 27 881



Добрался до проверки на реальном железе.
Тезис "поиграться с PullUp\PullDown на PC13, как входе RTC_TS" не проходит.
Как только взводится бит TSE в RTC_CR, управление PC13 забирается модулем RTC и ножка ни на какие действия по конфигурации её как GPIO, не реагирует:
Цитата
For the additional functions like RTC, WKUPx and oscillators, configure the required function in the related RTC, PWR and RCC registers. These functions have priority over the configuration in the standard GPIO registers.

Зато обнаружил примечание к биту установки фронта записи TimeStamp: TSEDGE в RTC_CR
Цитата
TSE must be reset when TSEDGE is changed to avoid unwanted TSF setting.

И действительно, дерганье TSEDGE туда-сюда при включенном TSE, приводит к срабатыванию записи TimeStramp и установке флага TSF в RTC_ISR. Но нигде в документации не видел указания, что так можно делать, так что только на свой страх и риск.

Однако при отладке обнаружил, что разработчики из STM пожлобились на сохранение в регистрах TimeStamp значения года.
Место есть, а года НЕТ! Экономия на спичках 01.gif
Так что TimeStamp вычеркиваем, все равно значение года нужно читать, проще все прочитать и сохранить.

===========================================================

Еще один вопрос возник по RTC модулю.
У меня к входу VBAT подключена батарейка CR2032 на 3V,
а основное питание VDD = 3.0V отключается до нуля, и при этом идут только часы на внешнем часовом кварце от батарейки.
Часы стабильно идут при передергивании питания в любых вариантах,
но от батарейки все время потребляется ток, в том числе и при наличии главного питания VDD.
Как это возможно?
Go to the top of the page
 
+Quote Post
mantech
сообщение Apr 14 2017, 14:07
Сообщение #3


Гуру
******

Группа: Участник
Сообщений: 2 219
Регистрация: 16-08-12
Из: Киров
Пользователь №: 73 143



Цитата(Baser @ Apr 13 2017, 20:35) *
но от батарейки все время потребляется ток, в том числе и при наличии главного питания VDD.
Как это возможно?


А что тут такого? Батарейка питает домен часов, часы же работают и при подключенном питании, ставьте диод от основного питания и потребления не будет...
Go to the top of the page
 
+Quote Post
Baser
сообщение Apr 14 2017, 14:59
Сообщение #4


Просто Che
*****

Группа: Свой
Сообщений: 1 567
Регистрация: 22-05-07
Из: ExUSSR
Пользователь №: 27 881



Цитата(mantech @ Apr 14 2017, 17:07) *
А что тут такого? Батарейка питает домен часов, часы же работают и при подключенном питании, ставьте диод от основного питания и потребления не будет...

Бррр... Какая-то профанация идеи. Там же внутренний ключ-переключатель питания RTC домена от VDD или VBAT по уровню POR/PDR на линии VDD. И ножка VBAT выделенная. Это должно позволять нормально работать при любой комбинации рабочих напряжений на VDD и VBAT, как ниже, так и выше.

И это, кстати, работает. VDD = 3.0V Подавал напряжение на VBAT с внешнего источника от 2.0V до 3.5V Ток при этом пропорционально меняется от 21 мкА до 36 мкА из-за включенного внутреннего делителя 2х50 кОм для измерения напряжения батареи АЦП. Т.е. домен питается от VBAT, хотя VDD присутствует. Что совсем удивительно, можно отключать батарейку на ходу, тока ессно нет, осциллограф показывает на VBAT "висячку" подтянутую к земле. Часы при этом стабильно идут, не сбиваются, не спешат и не отстают. Подключаешь батарею назад - опять потребляет свои мкА. А снимаешь VDD - паспортное потребление 1.5 мкА.

Такое впечатление, что встроенный ключ подключает домен к VDD только когда пропадает VBAT,
а когда есть и то и то, подключен к VBAT. 01.gif

Сегодня уже давно роюсь в Инете, пока прямых сообщений на эту тему не нашел.
Нашел сообщение на форуме РадиоКот о такой же проблеме, но без ответа на вопрос.

И вот картинка из презентации, где прямо говорится, что при наличии VDD ток от VBAT не потребляется.

Прикрепленное изображение


Может быть там еще какие конфигурационные биты где есть???
Go to the top of the page
 
+Quote Post



Reply to this topicStart new topic
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 


RSS Текстовая версия Сейчас: 24th August 2025 - 09:28
Рейтинг@Mail.ru


Страница сгенерированна за 0.01354 секунд с 7
ELECTRONIX ©2004-2016