Jump to content

    

MSP430F5172 XT1

Recommended Posts

visht

пробую на часовом кварце, тот же эффект, но генерация на ногах есть.

И вот почему то становиться сброшен бит XT1HFOFFG а не XT1LFOFFG

если его принять за верный, тогда он как бы стартует на 32768

может что то еще нужно сделать ?

    PMM_setVCore(PMM_CORE_LEVEL_0);
    PJSEL = BIT5 | BIT4;

    UCSCTL6 = 0x00;
    UCSCTL6 = XT2OFF | XCAP_0 | XT1DRIVE_0;
    do {
        UCSCTL7 &= ~(XT1HFOFFG | XT1LFOFFG | DCOFFG);
        SFRIFG1 &= ~OFIFG;
    } while (UCSCTL7 & XT1LFOFFG);

конденсаторы оставил по 16 пик, чтоб не отпаивать.

с выбором регистров тоже как бы все в норме. в CCS это выглядит так.

Spoiler

define.thumb.jpg.f627167ff4730fd3bc93a55b1e2a3c79.jpgtarget.thumb.jpg.6cdf0209d38f9273c95c842bc90dcbd3.jpg

В коде #include <msp430.h>

а в нем уже

#elif defined (__MSP430F5172__)
#include "msp430f5172.h"

Смотрю делителем на 10, как и у всех, на одном побольше синуса, на втором поменьше.

Share this post


Link to post
Share on other sites

k155la3

для 32768, из примера Ti. По флагам XT1HFOFFG надо даташит курить, у меня такого процессора нет, работал с F5438A.

. . . 
  WDTCTL = WDTPW + WDTHOLD;                 // Stop watchdog timer
  Port_Mapping();                           // Port Map port3
  
  // Setup Port Pins 
  . . . 
  PJSEL |= BIT4 + BIT5;                       // Port select XT1
  
  UCSCTL6 &= ~(XT1OFF);                     // XT1 On
  UCSCTL6 |= XCAP_3;                        // Internal load cap
  
  // Loop until XT1 fault flag is cleared
  do
  {
    UCSCTL7 &= ~XT1LFOFFG;                  // Clear XT1 fault flags
  }while (UCSCTL7 & XT1LFOFFG);               // Test XT1 fault flag

  while(1) { }

 

Вот блок примеров на семейство F51xx, это оттуда.  

Если работает на 32768 - Ok, аккуратно подстраивайте под HF кварц. Кстати не увидел ответа, какая частота для него.

Для 12 MHz без включения встроенных емкостей - UCSCTL = 0x0060; 

slac452d.zip

тамже есть настройки map.

 

Share this post


Link to post
Share on other sites

k155la3

ps

2 hours ago, visht said:

Смотрю делителем на 10, как и у всех, на одном побольше синуса, на втором поменьше.

Я так предполагаю делитель осциллографа. Обратите внимание, что щуп, даже с делителем, влияет на работу генератора. К примеру, когда щуп касается кварца, генерация есть. А когда щуп убирается, генерация пропадает. Но мы этого, естественно, не видим.

Выводите MCLK на контрольный пин.

По емкостям на кварце - надо быть уверенным, что установлен требуемый номинал.

 

Share this post


Link to post
Share on other sites

visht

Не знаю что было причиной, скорее совокупность.

На сейчас. генерация есть, на LF при XTS = 0, и на HF при XTS = 1.

Но ... все так же флаги ошибок установлены, что на LF что на HF режимах.

Если их проигнорировать, то оно как бы работает на генерируемой частоте.

Но закрадываются сомнения что режимы LPM могут вести себя неадекватно из за того что процессор считает резонатор неверным.

 

С выводом частот на пины у меня были странные глюки, может я что то не так делаю

    P2SEL = BIT6 | BIT7;
    P2DIR = BIT6 | BIT7;
    PMAPPWD = 0x02D52;                      // Get write-access to port mapping regs
    P2MAP7 = PM_TD0_0SMCLK;
    P2MAP6 = PM_TD0CLKMCLK;
    PMAPPWD = 0;                            // Lock port mapping registers

При этом если я загружаю код через CSS то выводиться только на 2.7 pin, я так понимаю что MSP-FET теряет связь. А если выйти из отладки, то на обоих портах есть 1.015 МГц

тест без запуска внещнего резонатора. Очень странно что отваливается отладка.

 

По плате - все чисто. Промыл. просушил :)

смущает то что даже от внутреннего генератора флаг OFIFG в SFRIFG1 остается в 1.

Вообщем видимо остается пока надеяться на него, и попробовать настроить FLL.

Share this post


Link to post
Share on other sites

k155la3
34 minutes ago, visht said:

. . . .

Но закрадываются сомнения что режимы LPM могут вести себя неадекватно из за того что процессор считает резонатор неверным.

Не, процессора  как правило ведут себя адекватно на 99.9(9), исполняемому на них коду, подключенной внешней периферии и источнику питания. IMHO. Используйте кварц 32768+FLL.

 

Share this post


Link to post
Share on other sites

visht

так ведь и он нормально не работает, тоже флаг не сбрасывает.

В при таком умножении ... насколько будет влиять теспературный уход по частоте ?

Я проверил в качестве иcточника CR2032 (новая, 3.2V) , и ... все так же. на флагах висим. Что может быть лучше ?

Да и кода тут ... пока только инициализация.

 

 

Share this post


Link to post
Share on other sites

k155la3
48 minutes ago, visht said:

так ведь и он нормально не работает, тоже флаг не сбрасывает.

В при таком умножении ... насколько будет влиять теспературный уход по частоте ?

Я проверил в качестве иcточника CR2032 (новая, 3.2V) , и ... все так же. на флагах висим. Что может быть лучше ?

Да и кода тут ... пока только инициализация.

Использовал для USART на 115200, базовое тактирование от 32768 (работал постоянно) и из режима LPM запускался FLL/DCO. Правда питание было 3.3 . . . 3.75 В. Вполне успешно качал блоки данных по 64к (MSP430F5438A)

Флаг ошибки генератора - может надо отладить режим его работы, к примеру он запускается, но из-за неправильного выбора емкостей работает с шумом или на уровне шумов (недостаточная амплитуда). Ну, может еще errata почитать.

Share this post


Link to post
Share on other sites

visht

Errata почитать то можно, но ничего по теме там нет.

Есть упоминание что при изменении делителей эти флаги надо чистить.

По факту работы - на VCore при питании от MSP-FET или от Cr2032 пульсаций нет. Вид сигнала абсолютно идентичен состоянию открытого щупа.

При питании от MSP-FET на VСС наблюдаются некоторые шумы, думаю что от питальника самого MSP-FET но они не критичны, и видны на картинках.

При питании от CR2032 на VСС картина такая же как и на открытом щупе. Т.е. пульсации на уровне природного шума.

Поэтому картинки по данным вариантам даже не прикладывал.

По уровню, есть у меня эволюшн от TI и я на нем протестил сигналы кварца. И соответственно протестил их у себя.

Я не вижу к чему придраться, все одинаково, никаких ... шумов, сбоев ... на глаз невидно.

Смотрите...

Spoiler

RF430F5978EVM_1v1.thumb.jpg.8e03e0647032cae0ee66c2802f8d023d.jpgMSP430F5172.thumb.jpg.4723892097d50c6bc9af9e227d2a9335.jpg

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

Share this post


Link to post
Share on other sites

k155la3

полоса у С1-77 10MHz. Далеко не все можно увидить. 100 mV размах - как-бы маловато. Хотя это скорее всего поддавливает осциллограф.

Принципиальной схемы не выкладывали, PCB тоже. Блокировочные конденсаторы на процессоре, фильтр-дроссель по питанию, электролиты. Их есть ?

Для кварца 32768, возможно, см даташит, внешние конденсаторы не нужны, используются настраиваемые внутренние.

Для ВЧ кварца я бы попробовал подобрать емкости с контролем флага ошибки генератора. Я пользовал для этих целей КПЕ с двумя секциями 12-495 pF

ps Выложите последнюю работающую (без прогр. кода на  флаг ошибки генератора) часть кода для вч или нч кварца.

 

Share this post


Link to post
Share on other sites

visht

тестирую на рабочей плате, свою рисовать пока рано, да и делать негде, пока ... Fedex 23 февраля так и не довез мой заказ.

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

И даже если ... все равно сделано верно, выводы сначала на конденсатор, и уже от него на процессор.

А толщина дорожек уж точно больше чем внутренние соединения к чипу.

Даже Питание от CR2032 не решают проблему, могу конечно к ногам влепить 0402 но ... это не изменит ситуации.

Есть другая платка, но там нет кварца, а цеплять на соплях - опять бездоказательно.

 

Так ... нет такого кода. ошибка по флагам всегда.

Был сброшен флаг HF при работе с LF. Что совсем нелогично, и рассматривается мной в контексте раз настроили LF то флага по HF и быть не должно.

А то что флаг LF есть когда HF настроено, ну типа и не обращайте внимания.. А может должен тоже как бы сбрасываться, но не сбрасывается.

т.о. нет ни одного верного варианта, флаги всегда устойчиво говорят об ошибке.

 

 

 

Share this post


Link to post
Share on other sites

k155la3

? так на этой плате не MSP430F5172. Это фото к обсуждаемой теме не имеет отношения.

Или дайте ссылку-даташит именно на тот процессор MSP430F5172, который на фото.

Share this post


Link to post
Share on other sites

k155la3
31 minutes ago, visht said:

это MSP430F5172 слегка в другом . . . 

Ну, это как 1'000'000р и 1'000'000$, отличие только в одной букфе.

Понятно. Этот девайс сильно -application-специфичен. Поэтому нужнА или однозначно соответствующая ему документация, или это гадание на кофейной гуще. Берите простой-ширпотребный MSP430 как отладочный, делайте прототип железа и софта. "Очень-потом" можно попробовать поработать с тем, что на фото, "миграцию"-перенос.

Share this post


Link to post
Share on other sites

visht

Сейчас что то взять проблематично. Да и суть задачи как раз в этом варианте корпуса.

Это нормально для TI, к примеру RF430F5978 проект выложен, под CCS. Но MSP430Flasher да и они сами используют его как

#include "cc430x613x.h"

и ядро определяется так же. Но это всего лишь означает что с этому СС430Fxxx добавили рядом модуль,

и подключили к ногам. остальные ноги вывели наружу, и дали другое название.

Раньше так вообще выводы наружу делали, но сейчас экономят на выводах :)

Я сравнивал хедеры, там все так же, и по тем же адресам. И выводы на порты говорят о том же.

Попробуем FLL может хоть она заработает.

Share this post


Link to post
Share on other sites

visht

результат тестирования FLL

    UCSCTL3 = SELREF_2 | FLLREFDIV__1;                          // FLLref = REFO
    UCSCTL2 = FLLD__32 | 0x3FF;
    UCSCTL4 = SELM__DCOCLK | SELS__DCOCLKDIV;

значение FLLN имеет смысл только до 0x08 все остальные варианты не увеличивают частоту. От внутреннего 32768Hz можно добиться максимум 4.718592 MHz

режим Vcore = 3.

Попытка раскачать FLL от XT1 - сваливается в дефолтный 32768Hz

В чем я ошибаюсь ?

Share this post


Link to post
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.