Jump to content

    

AT91RM9200

Прошу помощи советом, идеей.

Есть плата собственной разработки на базе процессора AT91RM9200 (TQFP корпус). Плата запущена в небольшую серию, выпущено несколько десятков штук - всё было ОК. Сейчас пришла новая партия с производства - и у 90% плат одинаковая проблема - процессор не стартует. Топология платы не менялась, контрактный производитель тот же, монтаж автоматический.

Что проверено - питания 3.3 и 1.8 вольт в порядке, кварц 32768 Гц генерирует, а вот "большой" кварц 12 МГц молчит. На линии RESET# есть супервайзер питания на 3,15 в , который при включении питания около 350 мс удерживает RESET в нуле. Конечно, надо бы по даташиту держать RESET 900 мс, это я понимаю, но не нашел такого супервайзера, да и дело, похоже, не в этом, так как, если удерживать рукой кнопку RESET нажатой при включении питания - это нисколько не улучшает ситуацию ... :05:

Интересно ведёт себя ток, потребляемый платой. Обычно, когда всё хорошо, при удержании RESET ток существенно меньше, а затем, когда стартует основной кварц, ток возрастает. А вот на этих платах при включении питания ток потребления даже ниже, чем при удержании RESET-a.

Как ещё можно продиагностировать плату, в чём причина нестарта процессора ?

Share this post


Link to post
Share on other sites

Подключиться к плате при помощи JTAG, посмотреть "где сидит" процессор.

Share this post


Link to post
Share on other sites
Подключиться к плате при помощи JTAG, посмотреть "где сидит" процессор.

JTAG-а на плате не разведено, но если и подключиться - что это даст ? Я примерно и так знаю, где он "сидит" - где-то в начале ROM, до инициализации основного кварца. Ждёт готовности PLL или ещё что. Ибо обмен с SPI-флэшкой для загрузки bootloader даже не начинается. И букв CCC в терминале нет, и по USB виден как "неизвестное устройтво".

Неужели кондёры из фильтра PLL придётся выпаивать и проверять номиналы ?

Share this post


Link to post
Share on other sites
JTAG-а на плате не разведено, но если и подключиться - что это даст ? Я примерно и так знаю, где он "сидит" - где-то в начале ROM, до инициализации основного кварца. Ждёт готовности PLL или ещё что. Ибо обмен с SPI-флэшкой для загрузки bootloader даже не начинается. И букв CCC в терминале нет, и по USB виден как "неизвестное устройтво".

Неужели кондёры из фильтра PLL придётся выпаивать и проверять номиналы ?

 

Больше вариантов я не вижу, фильтр PLL и емкости кварца.

Share this post


Link to post
Share on other sites

Ещё такая подробность - ряд плат всё же удается запустить (стартует осн. кварц, буквы ССС в терминале, всё ОК), если включать питание не сетевой кнопкой на блоке питания, а включив сначала БП, затем замкнув непосредственно провод питания 5 вольт.

БП лабораторный, хорошего качества.

Получается какая-то зависимость от скорости нарастания питания ... Но как раз от этого призван страховать супервайзер, который есть ... ничего пока непонятно. :wacko:

Share this post


Link to post
Share on other sites

Спасибо, дело оказалось именно в этом - у меня сигнал NTRST был просто подтянут резистором к 3.3 в, и это приводило на ряде плат к зависанию процессора (а точнее, как я понял, либо к попаданию процессора в режим отладки при старте, либо к подвисанию JTAG-подсистемы). Отладка JTAG мне не нужна, поэтому сажание NTRST на "землю" решает проблему.

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
Sign in to follow this