Jump to content

    

MSP430F5172 XT1

Recommended Posts

visht

этот момент тоже подверял

в CCS он объявлен как

#define XTS_L                  (0x0020)       /* 1: Selects high-freq. oscillator */

мои кварцы с 3 выводами, кондеры как бы внутри.

Share this post


Link to post
Share on other sites

visht

есть еще один непонятный момент

при попытке вывесли частоты на ноги

    P2MAP7 = PM_TD0_0SMCLK;
    P2MAP6 = PM_TD0CLKMCLK;

Естественно пока от внутреннего по умолчанию, вижу на ногах по 1MHz но вот отладчик при этом висит, по шагам не походить, не остановить. может оно что то означает ?

Share this post


Link to post
Share on other sites

k155la3
3 hours ago, visht said:

 

. . . 
    UCSCTL6 &= ~(XT1OFF + XT1BYPASS);        // XT1 On
    UCSCTL6 |= XCAP_3 + XTS_L + XT1DRIVE_2;  // XT1 Selects high-freq. oscillator 12MHz
. . .

 

1. UCSCTL6 инициализирован "по-умолчанию", не факт, и это факт, что там изначально все нули.

Поэтому для поля XT1DRIVE операция "или" не подходит, тк там по ресет 11.

2. итд в томже духе. Уберите все макро-биты, пропишите биты константами, как сделано у ТС, и (надеюсь) будет нам (Вам) счастье

Share this post


Link to post
Share on other sites

visht

Да, согласен.

Исправление результата не изменило. код на данный момент приводящий к зависанию.

    PMM_setVCore(PMM_CORE_LEVEL_2); // Vcore setting of at max 3 for 24MHz MCLK
    //XT1
    PJSEL = BIT5 | BIT4;                           // Port select XT1
    UCSCTL6 = XT2OFF | XCAP_0 | XTS_L | XT1DRIVE_2;  // XT1 Selects high-freq. oscillator 12MHz
    // Loop until XT1 fault flag is cleared
    do {
        UCSCTL7 &= ~(XT1HFOFFG | XT1LFOFFG | DCOFFG);   // Clear XT1, DCO fault flags
        SFRIFG1 &= ~OFIFG;                              // Clear fault flags
    } while (UCSCTL7 & XT1HFOFFG);             // Test XT1 fault flag

протестированные кварцы на фото.

самый мелкий 3-х выводной был на рабочей плате, с точно таким процом, который был заменен на исследуемый образец.

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

к 4-х выводному добавил 2 конденсатора, по 16 пик. 2 остальные ноги пошли на GND.

 

который раз убеждаюсь что TI это постоянные пасхалки, с наступающей пасхой всех кстати :)

В поддержке ответили что специалист по тех вопросам будет на следующей недели, так что ориентировочно через месяц может что и посоветуют.

Хотя по опыту общения с support ответ, скорее всего, будет в стиле "мы не знаем, у нас работает ..."

 

Spoiler

qurts.thumb.jpg.acc22032ad5f32183153c762cf693b81.jpg

 

Share this post


Link to post
Share on other sites

k155la3
1 hour ago, visht said:

 

    PMM_setVCore(PMM_CORE_LEVEL_2); // Vcore setting of at max 3 for 24MHz MCLK
    //XT1
    PJSEL = BIT5 | BIT4;                           // Port select XT1
    UCSCTL6 = XT2OFF | XCAP_0 | XTS_L | XT1DRIVE_2;  // XT1 Selects high-freq. oscillator 12MHz
    // Loop until XT1 fault flag is cleared
    do {
        UCSCTL7 &= ~(XT1HFOFFG | XT1LFOFFG | DCOFFG);   // Clear XT1, DCO fault flags
        SFRIFG1 &= ~OFIFG;                              // Clear fault flags
    } while (UCSCTL7 & XT1HFOFFG);             // Test XT1 fault flag

 

тогда уже так

UCSCTL6 = 0x00; // Если этого не сделать, в поле XT1DRIVE остается 11, те 24...32 MHz
UCSCTL6 = XT2OFF | XCAP_0 | XTS_L | XT1DRIVE_2; 

потомукак 

image.thumb.png.6061adf8d619c4b108fa2ea2a5a6d5bc.png


 

 

Share this post


Link to post
Share on other sites

k155la3

Сколько работал с Ti, так только плюсы. Что железо, что документация. Единственный минус - компоузер ихний "не зашел".

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

Мелочь, которая в Вашем фото, могла быть повреждена при выпайке с плат, остобенно если припой тугоплавкий.

1. Принципиальная схема включения кварца. (какая частота, 12 MHz ?)

2. Проверить, что ф-я установки питания отработала правильно.

ps 

PJSEL = 0x30; // 4,5 - Quartz.

 

Share this post


Link to post
Share on other sites

visht

4-х пиновый новый, при заказе всегда 5 шт на убой потерю оставляю. Да и перепаивал я их феном без проблем по несколько раз.

поищу лодочку.

Share this post


Link to post
Share on other sites

visht

проверил с этим

UCSCTL6 = 0x0060;

и с этим

UCSCTL6 = 0x00;
UCSCTL6 = XT2OFF | XCAP_0 | XTS_L | XT1DRIVE_2; 

 

И ... вообщем никак.

Видимо у вас какой-то другой TI :)

Мой опыт пока только негативный.  Речь не только о процессорах а об микросхемах TI впринципе.

По документации пишут одно, по факту все не так. И это еще хорошо если она вообще есть.

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

А некоторые они вообще признавать не хотят, их упоминания даже на сайте TI нет.

Насчет "компостера" недавний пример,

Функция на входе массив, прерывания выключил, на выходе парсер.

В отладке смотрю, фигню делает, откровенную, по шагам. и если по шагам дойти до конца фигня выходит. но если просто пройти без входа в функцию - все нормально.

Второй пример, качаю MSP430.dll пакет, ну как бы должны же демо программы работать, а "фигвам", не работает.

В итоге подменил входящую DLL той что из инсталла MSP430lasher.exe - заработало.

А разрекламированный UniFlasher готовит архив под проц с MSP430lasher.exe и DLL но они не работают даже вместе... последняя версия, как вам такой TI?

 

 

Spoiler

qurts2.jpgqurts1.jpg

Share this post


Link to post
Share on other sites

k155la3

Проверьте на выводе VCORE напряжение

ps

вот из ТТХ

fOSC = 4 MHz,    XTS = 1, XOSCOFF = 0, XT1BYPASS = 0, XT1DRIVEx = 0
fOSC = 12 MHz,  XTS = 1, XOSCOFF = 0, XT1BYPASS = 0, XT1DRIVEx = 1
fOSC = 20 MHz,  XTS = 1, XOSCOFF = 0, XT1BYPASS = 0, XT1DRIVEx = 2
fOSC = 32 MHz,  XTS = 1, XOSCOFF = 0, XT1BYPASS = 0, XT1DRIVEx = 3
Для упрощения можно взять 4 MHz, нужно будет установить только бит XTS

 

psps надо еще учитывать, что вч кварц выходит на режим не мгновенно, а с достаточно большой задержкой (несколько мс).

Попробуйте вообще убрать контроль правильности работы кварца, завершите работу while(1)

 

Share this post


Link to post
Share on other sites

k155la3
4 minutes ago, visht said:

1.408V. На плате конденсатор стоит. пульсаций нет.

для вч это вроде маловато, посмотрите в ds, там есть график зависимости рабочей частоты от этого напряжения.

image.thumb.png.f0f18d47bb35b2808a7f9b3c2f817366.png

 

Share this post


Link to post
Share on other sites

visht

Прошу прощения, мерял до нажатия на "поехали" в отладке.

1V4 1V6 1V8 1V9 соответсвенно уровням от 0 по 3

вроде как тут все по даташиту.

Share this post


Link to post
Share on other sites

k155la3
28 minutes ago, visht said:

. . . питаю от MSP-FET 3V.

не есть гут.

Проверьте соединения, "сопли", шарики, непропаи итд. Надо промониторить осциллографом что происходит на XOUT, на выводе кварца.

Процессор работал с кварцем на 32768 подключенным к этим выводам ?

Есть еще вероятность что проблема в неверной настройке софта, наподобие неправильно  подключенного h-файла или чего-то подобного.

(тип процессора указан правильно, а в одном из модулей проекта "завалялся" файл от другого)

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.