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

 
 
> RTC_B & Backup Supply
NikolyaN
сообщение Jun 25 2015, 09:07
Сообщение #1


Участник
*

Группа: Участник
Сообщений: 20
Регистрация: 28-08-09
Пользователь №: 52 074



Здравствуйте, коллеги MSP-шники!

Столкнулся с тем что RTC_B перестает считать при переключении на питание от Backup батарейки. То есть регистры времени сохраняются, но время не тикает пока не появится основное питание. При этом кварц продолжает генерить (смотрел осциллоскопом).
Чип MSP430F5358, но думаю это проблема не только этого чипа.

Сначала сделал все сам по описаниям. Столкнулся с проблемой. Начал ковырять, ничего найти не смог, уже начал подумывать, что проблема в железе.
Нашел у TI slaa665, скачал пример, подправил программу под свое железо и О ЧУДО!!! Выключаешь питание, а часы продолжают тикать. Начал разбираться чем отличается у меня и у них.
Сначала обнаружил следующее
Код
    if((BAKMEM0 == 0xDEAD) && !(RTCCTL01 & RTCOFIFG) && (RTCCTL2 & RTCCALS)) //backup not lost

В этом условии (RTCCTL2 & RTCCALS) == 0. Хотя более логично было бы увидеть ошибку осцилятора (RTCCTL01 & RTCOFIFG) == 1 т.к часы просто останавливаются.
Затем увидел более интересное, у них при входе в прерывание RTC всегда включен Backup Supply (кстати под JTAG этого не увидишь). Подумал, наверно это PMM у меня неправильно настроен. Повторил все как у них. Получил "Фиг вам". Не включается у меня Backup Supply. Поотключал все что можно, PLL убрал. Эффект = 0.

И тут каким-то чудом наткнулся, что если в slaa665 lpm3 поменять на lpm0 (как у меня), то никакого переключения в Backup Supply не происходит, и при выключении основного питания RTC также перестает тикать. И даже если оставить lpm3, выключить питание когда активная мода (передача по UART) то часы останавливаются.
Как выяснил lpm3, lpm2 включает Backup Supply, а lpm1, lpm0 не включает. То есть если выключить DCO (SCG1=1) то включается Backup Supply.
Сейчас как временную затычку реализовал такой подход при работе с RTC:
Код
  BAKCTL &= ~(BAKSW);
  while(BAKCTL & LOCKBAK)                   // Unlock Backup system for operation
     BAKCTL &= ~(LOCKBAK);
  ...                                                       // Read RTC registers
  BAKCTL |= (BAKSW);                           // Lock Backup system

Понимаю, что это неправильно самому включать Backup Supply, и хоть и небольшой, но шанс попасть на выключение питания когда не в Backup Supply всеже остается. Поэтому хочется всеже разобраться.
1. Почему выключение DCO приводит к включению Backup Supply? В user manual и errata ничего такого не нашел. (но это так для общего развития)
2. Почему PMM не включает Backup Supply при выключении основного питания, хотя вроде все пороги настроены, и судя по описанию должен это делать?

Мож кто с таким сталкивался разбирался, а мож из общих соображений и знания архитектуры чего подскажет.
Заранее спасибо.
Go to the top of the page
 
+Quote Post
 
Start new topic
Ответов
Obam
сообщение Jun 25 2015, 09:59
Сообщение #2


Знающий
****

Группа: Участник
Сообщений: 756
Регистрация: 14-11-14
Пользователь №: 83 663



Из описания (SLAU208M, Chapter 2, стр 99-101) не очень следует, что PMM должен вкдючать "…Backup Supply при выключении основного питания…". Или цитата подразумевает что-то иное?

PS: отставить!
стр 126 "The switch is controlled by the high-side SVS that supervises the primary supply, DVCC."

Сообщение отредактировал Obam - Jun 25 2015, 10:07


--------------------
Пролетарий умственного труда.
Go to the top of the page
 
+Quote Post
NikolyaN
сообщение Jun 25 2015, 10:04
Сообщение #3


Участник
*

Группа: Участник
Сообщений: 20
Регистрация: 28-08-09
Пользователь №: 52 074



Цитата(Obam @ Jun 25 2015, 12:59) *
Из описания (SLAU208M, Chapter 2, стр 99-101) не очень следует, что PMM должен вкдючать "…Backup Supply при выключении основного питания…". Или цитата подразумевает что-то иное?

А из описания slau208n.pdf p. 122 следует
The high-side SVS (SVSH) that is located in the PMM module and supervises the primary supply (DVCC)
controls the switching between primary and secondary supply.
Go to the top of the page
 
+Quote Post
NikolyaN
сообщение Jun 26 2015, 10:03
Сообщение #4


Участник
*

Группа: Участник
Сообщений: 20
Регистрация: 28-08-09
Пользователь №: 52 074



Тут еще подумалось, а может это все же железные проблемы.
Если у кого-то реализован RTC на 5/6 серии и описанных проблем не наблюдается, откликнитесь пожалуйста.

Не нашел как добавить это в первое сообщение.
Go to the top of the page
 
+Quote Post



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

 


RSS Текстовая версия Сейчас: 27th June 2025 - 20:51
Рейтинг@Mail.ru


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