|
|
|
Переключение XT1 <-> DCO Как сделать?, в режиме XT1 точность, а в режиме DCO микропотребление |
|
|
|
Jul 14 2018, 08:27
|
Знающий
Группа: Свой
Сообщений: 779
Регистрация: 9-10-04
Из: Россия, Пермь
Пользователь №: 828
|
Цитата(Сергей Борщ @ Jul 12 2018, 23:49) Уже давно с ними не работаю, но, помнится, бла возможность запитать от XT1 какой-нибудь из таймеров и сделать на нем периодическую калибровку DCO. В остальное время XT1 глушить. Тактироваться всегда от DCO. 1) Как его правильно калибровать? Сколько получается погрешность после калибровки (у меня 8МГц точно надо). 2) И тут же: как правильно сделать уходить в LPM режим и просыпаться по таймеру? 3) Как сделать на таймере A системные тики и программный таймер? Прошу прощения за кучу вопросов, я раньше не работал с MSP430/
|
|
|
|
|
Jul 15 2018, 05:09
|
Знающий
Группа: Свой
Сообщений: 779
Регистрация: 9-10-04
Из: Россия, Пермь
Пользователь №: 828
|
Цитата(Сергей Борщ @ Jul 14 2018, 23:35) Вам поможет поиск примера применения (application note) на сайте производителя по ключевому слову "DCO". Да, спасибо Сергей, я там смотрел примеры, но не нашел касательно моего применения, мне нужно установить точно DCO по таймеру от кварца 8МГц. Еще я спросил еще у вас, какая точность установки частоты DCO обеспечивается после калибровки - мне надо не хуже 0.5%. В документации я не нашел этой информации. Цитата(controller_m30 @ Jul 14 2018, 17:10) Переключение с какой частоты на какую вам нужно? Я понял только, что XT1 тактируется 8МГц кварцем, и используется в активном режиме. А какая частота нужна для энергосбережения? Можно любую, лишь бы потребление тока было поменьше? Или, всё-таки, нужна определённая частота? Если определённая, то какая? Да, XT1 8MHz, но он не основной, а только для формирования точных временных сигналов от Timer B. Основной калиброванный DCO с частотой 1MHz в основном режиме работы и ~100КHz в режиме низкого потребления. И тут же - Я в принципе могу использовать XT1 8MHz в основном режиме, но тогда нужно уходить в спячку и по таймеру просыпаться. Как лучше это сделать?
|
|
|
|
|
Jul 15 2018, 07:09
|
Гуру
Группа: Модераторы
Сообщений: 8 455
Регистрация: 15-05-06
Из: Рига, Латвия
Пользователь №: 17 095
|
QUOTE (Make_Pic @ Jul 15 2018, 08:09) Еще я спросил еще у вас, А я сразу написал, что уже давно не работаю с этим семейством. Могу добавить, что не имею ни времени, ни желания скачивать и читать документацию за вас. QUOTE (Make_Pic @ Jul 15 2018, 08:09) какая точность установки частоты DCO обеспечивается после калибровки Смею предположить, что она определяется шагом перестройки частоты DCO. Этот шаг есть в документации (или его можно высчитать из имеющейся там информации).
--------------------
На любой вопрос даю любой ответ"Write code that is guaranteed to work, not code that doesn’t seem to break" ( C++ FAQ)
|
|
|
|
|
Jul 15 2018, 11:45
|
Местный
Группа: Участник
Сообщений: 356
Регистрация: 24-02-09
Пользователь №: 45 309
|
Цитата(Make_Pic @ Jul 15 2018, 08:09) Да, XT1 8MHz, но он не основной, а только для формирования точных временных сигналов от Timer B. Основной калиброванный DCO с частотой 1MHz в основном режиме работы и ~100КHz в режиме низкого потребления. Если не ошибаюсь, DCO и так калиброван на заводе на частоту 1МГц. Контроллер стартует на этой частоте сразу после сброса. Но насколько она стабильная, надо смотреть в даташите на контроллер. Частота DCO зависит от температуры и напряжения питания, и поэтому может "уплыть" в процессе работы. Чтоб перевести DCO на другую частоту, нужно сначала переключить MCLK на другой источник тактирования (например на XT1 или VLO), изменить настройки DCO, дождаться стабилизации частоты, а только потом снова переключить MCLK на тактирование от DCO. Цитата(Make_Pic @ Jul 15 2018, 08:09) И тут же - Я в принципе могу использовать XT1 8MHz в основном режиме, но тогда нужно уходить в спячку и по таймеру просыпаться. Как лучше это сделать? Для перехода в режим LPMx у MSP430 есть удобное управление из регистра статуса SR. Там аж четыре бита для отключения тактовых генераторов и самого процессора. Удобство в том, что при пробуждении процессора ото сна по прерыванию, регистр SR сохраняется в стеке вместе со всеми установками режима LPMx, а при возврате из прерывания (по команде RETI) значение SR восстанавливается из стека, и контроллер снова погружается в сон, без лишних программных усилий.
|
|
|
|
|
Jul 15 2018, 15:36
|
Профессионал
Группа: Свой
Сообщений: 1 123
Регистрация: 8-03-09
Из: Днепр
Пользователь №: 45 848
|
Цитата(Make_Pic @ Jul 12 2018, 19:48) . . . для низкого потребления тока . . . если принципиально потребление, может использовать VLO ? DCO включается быстро, чего нельзя сказать о внешнем кварце на 8 MHz (раскачка и выход "на режим" порядка несколькизх миллисекунд). Относительную стабильность генератора возможно получить при использовании внешнего кварца 32 кГц и непрерывном режиме. Для "форсажа" переводить на тактирование от DCO. --- Конкретный код управления этим контроллером, для узла тактирования и LPM, можете посмотреть в пакете примеров или в DriverLib на это F2xx семейство. mspware (здесь "все в одном", но есть и "персональный" пакет только для F2xx 100-200 кБ) --- Если вопрос стоимости контроллера не принципиален, более гибкие и удобные режимы LPM возможно реализовывать на F5xx. Мы используем LPM4, один кварц на 32 кГц + DCO/FLL (от 32 кГц), за счет этого из схемы был исключен ВЧ-кварц. MSP430F5438A --- ps - калибровка DCO Если процесс калибровки в этом процессоре аналогичен F2618, то эта процедура базируется на LF кварце 32 кГц и длиться 10-20 секунд (уже не помню точно). Процедура калибровки приведена в качестве примера в "пакете" для F26XX (наверное и для F22xx тоже). Уход частоты - см. таблицы в даташите на конкретный чип, F2274. Короче, это "костыль", и частота будет гулять от температуры и напряжения в любом случае для RC. Надеяться на стабильность в этом режиме я бы не стал.
|
|
|
|
|
Jul 15 2018, 20:24
|
Знающий
Группа: Свой
Сообщений: 779
Регистрация: 9-10-04
Из: Россия, Пермь
Пользователь №: 828
|
Цитата(k155la3 @ Jul 15 2018, 19:36) если принципиально потребление, может использовать VLO ? DCO включается быстро, чего нельзя сказать о внешнем кварце на 8 MHz (раскачка и выход "на режим" порядка несколькизх миллисекунд). Относительную стабильность генератора возможно получить при использовании внешнего кварца 32 кГц и непрерывном режиме. Для "форсажа" переводить на тактирование от DCO. --- ... Мы используем LPM4, один кварц на 32 кГц + DCO/FLL (от 32 кГц), за счет этого из схемы был исключен ВЧ-кварц. MSP430F5438A --- ps - калибровка DCO Если процесс калибровки в этом процессоре аналогичен F2618, то эта процедура базируется на LF кварце 32 кГц и длиться 10-20 секунд (уже не помню точно). Процедура калибровки приведена в качестве примера в "пакете" для F26XX (наверное и для F22xx тоже). Уход частоты - см. таблицы в даташите на конкретный чип, F2274. Короче, это "костыль", и частота будет гулять от температуры и напряжения в любом случае для RC. Надеяться на стабильность в этом режиме я бы не стал. Уже схема и плата в производстве - выбора нет, есть резонатор 8МГц на XT1. выход на режим единицы мс терпимо, а вот калибровка в 10-20 секунд это не пойдет. Тогда может мерить частоту DCO в режиме XT1 8МГц и потом уже при использовании DCO менять значения таймера с учетом ухода частоты для формирования более менее точных временных интервалов? Этот 2274 выбран только из за операциоников и возможности работы на -55 град. С
|
|
|
|
|
|
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0
|
|
|