Помощь - Поиск - Пользователи - Календарь
Полная версия этой страницы: Восстановление калибровочных констант в 430F2002
Форум разработчиков электроники ELECTRONIX.ru > Микроконтроллеры (MCs) > MSP430
SZ0
Баловался с процем и стёр Lite FETPro430 ему калибровочные константы. Можно ли их как-то восстановить, т.е. путём каких то расчётов или с другого кристалла? Интересует восстановление констант для калибровки внутреннего генератора.
diper
Скачай с техсаса примеры, один из примеров делает как раз то что надо, тока нужно чтоб был кварц к процу подключен.
CAHTA_1939
Цитата(SZ0 @ Mar 29 2008, 22:41) *
Баловался с процем и стёр Lite FETPro430 ему калибровочные константы. Можно ли их как-то восстановить, т.е. путём каких то расчётов или с другого кристалла? Интересует восстановление констант для калибровки внутреннего генератора.


врятли для каждого кристала свои калибровочные константы. так что берите аналогичный камень и копируйте данные
SZ0
Цитата(CAHTA_1939 @ Mar 30 2008, 00:57) *
так что берите аналогичный камень и копируйте данные


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

Цитата(diper @ Mar 30 2008, 00:55) *
Скачай с техсаса примеры, один из примеров делает как раз то что надо, тока нужно чтоб был кварц к процу подключен.


А не укажите конкретный файл с примером? А то поиск по их сайту ничего не дал sad.gif
diper
Цитата(SZ0 @ Mar 29 2008, 23:54) *
А не укажите конкретный файл с примером? А то поиск по их сайту ничего не дал sad.gif
а вот не укажу sad.gif
ti.com -> Microcontrollers -> MSP430 -> Code Examples

Код
//******************************************************************************
//  MSP430F20xx Demo - DCO Calibration Constants Programmer
//
//  NOTE: THIS CODE REPLACES THE TI FACTORY-PROGRAMMED DCO CALIBRATION
//  CONSTANTS LOCATED IN INFOA WITH NEW VALUES. USE ONLY IF THE ORIGINAL
//  CONSTANTS ACCIDENTALLY GOT CORRUPTED OR ERASED.
//
//  Description: This code re-programs the F2xx DCO calibration constants.
//  A software FLL mechanism is used to set the DCO based on an external
//  32kHz reference clock. After each calibration, the values from the
//  clock system are read out and stored in a temporary variable. The final
//  frequency the DCO is set to is 1MHz, and this frequency is also used
//  during Flash programming of the constants. The program end is indicated
//  by the blinking LED.
//  ACLK = LFXT1/8 = 32768/8, MCLK = SMCLK = target DCO
//  //* External watch crystal installed on XIN XOUT is required for ACLK *//
//
//           MSP430F20xx
//         ---------------
//     /|\|            XIN|-
//      | |               | 32kHz
//      --|RST        XOUT|-
//        |               |
//        |           P1.0|--> LED
//        |           P1.4|--> SMLCK = target DCO
//
//  P. Thanigai
//  Texas Instruments Inc.
//  May 2007
//  Built with Code Composer Essentials Version: 2.0
//******************************************************************************
rx3apf
Цитата(CAHTA_1939 @ Mar 29 2008, 23:57) *
врятли для каждого кристала свои калибровочные константы. так что берите аналогичный камень и копируйте данные

В таком случае в калибровочных константах не было бы никакого смысла - характеристики генератора меняются от экземпляра к экземпляру. Что у PIC, что у AVR, что у MSP430. Особая подлость у MSP430 при загрузке через BSL: пишешь в новый - давай пароль с FF, второй раз - обязательно давай тот, что получился. Перепутал - потерял калибровки. Уроды - уж на кристалле со стертой памятью программы могли бы и не тереть данные принесовпадении...

Возвращаясь к вопросу - восстановить можно только индивидуальной калибровкой, имея внешний опорный сигнал (генератор или резонатор на ногах).
rezident
Восстановить калибровочные константы не составляет труда. Вам уже дали направление поиска. В серии MSP430x1xx где нет заводских калибровочных констант, я применял калибровку DCO по часовому кварцу при старте системы.
Принцип там весьма простой. Увеличивая или уменьшая значения DCOx, MODx и RSELx добиваются заданного отношения между DCO и опорной частотой (у меня ей была частота часового кварца). Измеряется это отношение с помощью таймера TimerA, работающего в режиме "захвата". TimerA должен тактироваться от SMCLK, который в свою очередь от DCO. Опорная частота должны являться источником тактирования ACLK. Во всех кристаллах MSP430 ACLK можно внутренне скоммутировать так, чтобы он был входным сигналом CCI2B для 3-его канала TimerA (CCR2). Так что, если TimerA настроен в режим захвата от CCI2B, то разница между двумя последовательно полученными (захваченными) значениями CCR2 даст искомое отношение SMCLK и ACLK (с учетом всех предделителей конечно). Получается DCO=SMCLK=(CCR2(n)-CCR2(n-1))*ACLK таким образом можно подстроить DCO, являющийся источником SMCLK.
Только если вы хотите полностью восстановить калибровочные константы, то посмотрите описание TLV-структуры в datasheet конкретного кристалла. Там кроме значений CAL_DCO и CAL_ВС1 еще и TAG-и должны быть прописаны.
Alechin
Сравнивал на 5 штуках F2274. Калибровки различны, но не намного (плюс минус два-три). Поэтому когджа в одном случайно их затер - просто скопировал из другого. Мне, правда, высокая точноность была не нужна - все время-зависимое синхронизируется часовым кварцем, а DCO - так, для ядра.
ih_
Цитата(rezident @ Mar 30 2008, 19:38) *
Во всех кристаллах MSP430 ACLK можно внутренне скоммутировать так, чтобы он был входным сигналом CCI2B для 3-его канала TimerA (CCR2).
Проясните пожалуйста этот момент
rezident
Цитата(ih_ @ Apr 21 2008, 22:27) *
Проясните пожалуйста этот момент
Дык чего пояснить? Ну для серии MSP430F200x в которой нет третьего регистра capture/compare (CCR2) модуля TimerA сигнал ACLK (внутренне) подается на CCI0B первого (CCR0), вот и вся разница. См. таблицу Timer_A2 Signal Connections в даташите конкретного кристалла (например, MSP430F2002), а не в User's Guide всей серии. В указанном даташите на стр. 17 находится эта таблица. О том, как сконфигурировать таймер в режиме "захвата" написано в разделе 12.2.4 Capture/Compare Blocks MSP430x2xx Family User's Guide.
ih_
Цитата(rezident @ Apr 21 2008, 22:06) *
См. таблицу Timer_A2 Signal Connections
Спасибо. Все понятно. )
Для просмотра полной версии этой страницы, пожалуйста, пройдите по ссылке.
Invision Power Board © 2001-2025 Invision Power Services, Inc.