Помощь - Поиск - Пользователи - Календарь
Полная версия этой страницы: Не удается запустить микроконтроллер AT91SAM9R64
Форум разработчиков электроники ELECTRONIX.ru > Микроконтроллеры (MCs) > ARM
Atridies
Доброго времени суток!

Мой первый опыт работы с микроконтроллерами ARM пока оказывается неудачным.
Спаяли мне плату нового устройства: включаю - по 5 вольтам идет потребление больше 900мА. Проц не запускается. Короткого замыкания в плате - нету.

Питание организовано следующим образом: стоит импульсный преобразователь 5В->3.3В, а далее LDO в 1.2В. Импульсник работает хорошо (выходное напряжение правда шумноватое, но у меня на питании проца стоит фильтр). Но как только включаешь всю схему: 3.3В превращается в 1.5В. На 1.2В - практически нуль.

Ниже приведена схема включения микроконтроллера на питание и управляющие сигналы (схему включения - взял из схемы на Evalution Board.).

Нажмите для просмотра прикрепленного файла



Выходы портов вряд ли могут быть причиной серьезного потребления - они ведь при включении устанавливаются как входы с pull-up.
Самое интересное, что немного греются катушки L2 и L3. Но перевод LDO (питание 1.2В) в неактивный режим - не решает проблему.

Выключить часть схемы и проверить, не могу - плата 6 слоев и корпус контроллера - BGA.

Вопрос: может я что-то подключил не так на микроконтроллере?

Заранее огромное спасибо!
aaarrr
Цитата(Atridies @ Apr 11 2011, 19:03) *
Питание организовано следующим образом: стоит импульсный преобразователь 5В->3.3В, а далее LDO в 1.2В.

Это не есть гуд: так напряжение IO появится раньше CORE, что недопустимо. Смотрите даташит - 44.7.2 Power-Up Sequence.
kovigor
Цитата(Atridies @ Apr 11 2011, 18:03) *
Вопрос: может я что-то подключил не так на микроконтроллере?


Конечно неправильно ! Кто ж это первое включение осуществляет от штатного БП и при этом без всяких мер предосторожности ? Включать можно только от лабораторного БП с ограничением тока, иначе первое включение любой платы, как правило, становится и последним ее включением ...
Atridies
1. Преобразователи питания работают нормально - перед подачей напруги на микроконтроллер - я их проверил. А само устройство - питаю от лабораторного источника питания - я где-то разве сказал, что это не так? Именно он на 5В и у него стояло ограничение на 900 мА.


2.
Цитата
Switch on the VDDIOM and VDDIOP power supply prior to or at the same time as VDDCORE.
The AT91SAM9RL64 board design must comply with this sequence to guarantee reliable operation
of the device. Any deviation from this sequence may prevent the device from booting.


Как я понимаю - это переводится следующим образом: VDDIOM и VDDIOP - подается ранее или одновременно с VDDCORE.

У меня VDDIOM и VDDIOP - 3,3В. VDDCORE - 1,2В. Т.е. сначала подаем 3.3В, а потом - 1.2В. Все правильно: время запуска моего LDO - 45 мкс. (TPS79912). Кроме того, я предусмотрел замедление еще на несколько сотен микросекунд.
В любом случае - я не гружусь с внешней памяти, я хочу пока попробовать загрузиться с Bootloader-а.
aaarrr
Цитата(Atridies @ Apr 11 2011, 21:45) *
Как я понимаю - это переводится следующим образом: VDDIOM и VDDIOP - подается ранее или одновременно с VDDCORE.

Забавно, а раньше было:
Цитата
VDDIOM and VDDIOP must NOT be powered until VDDCORE has reached a level superior to Vth+.


Цитата(Atridies @ Apr 11 2011, 19:03) *
Самое интересное, что немного греются катушки L2 и L3. Но перевод LDO (питание 1.2В) в неактивный режим - не решает проблему.

А что при этом происходит - продолжает жрать по 3.3?

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

И еще один момент: как тактируется процессор?
Atridies
Хм... хорошо, завтра попробую подать все питания одновременно.

Да, как жрал по 3.3В - так и при отключении 1.2В - жрет.
Я не довожу до сколько-нибудь серьезного нагрева. Просто после включения проверяю участки платы подушечкой безымянного пальца. Некторые как были холодными, так и остались. А некоторые немного потеплели.

Тактирования пока нету - вход сидит на земле через резистор. У меня из-за этой свистопляски даже генератор не может разогнаться - пришлось пока отключить.
aaarrr
Цитата(Atridies @ Apr 12 2011, 02:19) *
Тактирования пока нету - вход сидит на земле через резистор. У меня из-за этой свистопляски даже генератор не может разогнаться - пришлось пока отключить.

Тут есть два момента:
1. Если используете внешний генератор, то не забудьте про согласование уровней (1.2V)
2. На схеме ничего не подключено к 32K. Есть подозрение, что могут последовать проблемы с родным загрузчиком - судя по описанию,
он будет пытаться этот генератор запустить, а у атмеловских программистов традиционно очень кривые руки. Но это только подозрение.
Atridies
Поменял порядок включения питания на плате. Сначала включается 1,2В, потом - 3.3В.
Ничего не изменилось.

Кстати, по 1.2В - потребление правильное и напряжение весьма стабильное и чистое.

Снял катушки, которые грелись (L2, L3) - ничего не поменялось. Снял катушку L4 - опять ничего.


Что касается кварца на 32К - учту, спасибо.
Деление уровня сигнала тактирования у меня есть.

P.S. подумываю о том, что придется брать MCU и вручную подпаявшись к нему - пытаться запитать. Пугает только - пайка BGA.
aaarrr
Цитата(Atridies @ Apr 13 2011, 15:04) *
Снял катушку L4 - опять ничего.

То есть потребление по 1.2В нормальное, 3.3В отключено, а плата все равно потребляет без меры? SDRAM на плате установлена? Практика
показывает, что в случае проблем с питанием она обычно умирает первой и защищает собой остальную часть схемы.

Цитата(Atridies @ Apr 13 2011, 15:04) *
P.S. подумываю о том, что придется брать MCU и вручную подпаявшись к нему - пытаться запитать. Пугает только - пайка BGA.

А смысл этого эксперимента?
Atridies
Питание 3.3В MCU я отключить не могу (подведено во внутреннем слое). Могу отключить только выход преобразователя.
Как я делал - отключаю выход 3.3В и вход 1.2В, соединяю их вместе. Т.е. на плате есть только 1.2В (нормальное, работающее). Включаю питание 3.3В на плату - все как и было: большой ток и просадка питания.

SDRAM на плате нету, есть NAND FLASH.

Конечно, у меня еще есть элементы на плате, но греется больше всех - именно MCU. И поэтому есть сильное подозрение, что либо я что-то неправильно включил, либо где-то КЗ.
Вот и понять - что я неправильно включил, какой вход микроконтроллера сжирает такой ток - и есть смысл моего эксперимента. Просто плата у меня: 6 слоев и чего-то перерезать не получается....
aaarrr
Цитата(Atridies @ Apr 13 2011, 15:58) *
Конечно, у меня еще есть элементы на плате, но греется больше всех - именно MCU. И поэтому есть сильное подозрение, что либо я что-то неправильно включил, либо где-то КЗ.
Вот и понять - что я неправильно включил, какой вход микроконтроллера сжирает такой ток - и есть смысл моего эксперимента. Просто плата у меня: 6 слоев и чего-то перерезать не получается....

Правильность включения устанавливается проверкой схемы и платы, эксперименты ставить необходимости нет. Монтаж посмотрите на предмет поворота/смещения корпуса, плату на предмет правильной интерпретации top и bottom view (и такое бывает). Если все эти проверки не позволят найти проблему и нет явного КЗ, то остается попробовать поменять процессор.
ViKo
Судя по симптомам - банальное замыкание какого-то выхода на землю, питание или двух между собой под BGA корпусом. А ограничивать ток надо было не до 900mA, а до 90, а то и меньше. Можете по разводке попробовать предположить, где это могло случиться.
Например, те же XOUT. TDO?
У вас земли разными символами нарисованы. Они разные?
aaarrr
Цитата(ViKo @ Apr 13 2011, 17:14) *
Судя по симптомам - банальное замыкание какого-то выхода на землю, питание или двух между собой под BGA корпусом.

Выход на земле такой ток не даст. А КЗ, как утверждается, нет.
ViKo
Цитата(aaarrr @ Apr 13 2011, 16:19) *
А КЗ, как утверждается, нет.

Значит, есть. Плохо искали.

Цитата(aaarrr @ Apr 13 2011, 16:19) *
Выход на земле такой ток не даст.

Пока он совсем не сдох от перегрева.
aaarrr
Цитата(ViKo @ Apr 13 2011, 17:23) *
Значит, есть. Плохо искали.

Не факт. Я бы скорее заподозрил (в порядке уменьшения вероятности):
1. Ошибка в схемотехнике или ПП
2. Ошибка монтажа, но не замыкание
3. Замыкание на плате
Процессор, как было замечено, ощутимо греется, что совсем не похоже на КЗ на плате.

Цитата(ViKo @ Apr 13 2011, 17:24) *
Пока он совсем не сдох от перегрева.

Это если и случится, то очень не скоро.
ViKo
Может быть, генерит LDO?
Хотя нет, все-таки по питанию 3.3V что-то не так.
А 3.5 Ohm - это КЗ или не КЗ? Тем более, что работает ограничитель тока. А если б не работал?
Atridies
1. Земли все одинаковые. Просто из-за масштабирования картинки - получилось, что некоторые закрашенные а некоторые - нет.

2. КЗ между 3.3В и землей - нет. Сопротивление в обе стороны не менее 500 Ом. Другие цепи на замыкание не проверял. Обязательно проверю.

3. LDO рабочий. Я с него включал 1.2В на плату - все ОК.

4. Ситуевина непонятная: мне спаяли 5 плат из которых я две включил - у обоих одинаковым образом жрется ток. Вероятность того, что у обоих замыкания - не такая уж и большая.

Вариант с неправильной установкой какого-либо элемента - весьма вероятный. Тоже пока на этот счет не смотрел. Хотя там в основном конденсаторы и резисторы.

Самое первое, что я подумал - это ошибка в схеме. Собственно за этим я и привел часть схемы.
Плата со схемой совпадает по нетлистам. Поэтому вероятность разводки совсем мала.
ViKo
Как уже писал aaarrr, повторю - точно не повернут процессор на 90, 180, 270 градусов?

Вы показали только малую часть схемы.

Цитата(Atridies @ Apr 13 2011, 17:58) *
2. КЗ между 3.3В и землей - нет. Сопротивление в обе стороны не менее 500 Ом. Другие цепи на замыкание не проверял.

Получается, в выключенном состоянии сопротивление 500 Ohm, а во включенном падает до 3.5 Ohm. Можно поставить по цепям питания маленькие резисторы, и смотреть, что творится после них. Где-то вместо дросселей можно. Ом по 10.
Электролитические конденсаторы, неправильно запаянные (наоборот + с -), могут давать такой эффект.
Atridies
Проверил установку микроконтроллера и других микросхем: все правильно стоит. Все компоненты в PCAD-е тоже сделаны правильно.
По замыканиям - пока до конца не проверил, но пока ни одного замыкания не было.

Привожу остатки схемы с At91.

Нажмите для просмотра прикрепленного файла

Справа там стоит NAND Flash. Уходящие вверх и вправо цепи - идут на другую микруху. По даташиту у нее (до настройки) - все пины - как входы.

Электролитов в плате нету - обошелся одной керамикой (уж больно места мало).
Резисторы по питанию - пока не ставил.
aaarrr
Другие платы включать не пробовали? Одинаковость симптомов указывает на системную ошибку.

А что за девайс такой интересный, совсем без ОЗУ? Секретная USB-флешка?
Atridies
Пробовал. Везде все одно и то же.

Самое интересное: использую ARM и еще одну микросхему. У обоих есть стандартная схема включения, приведенная в ref.design (больше собственно ничего нет). Вроде все правильно повторил - но почему-то не работает.

Устройство вы угадали. Это что-то типа ключа для ПО. Мне надо сделать USB2.0 с Flash и поддержать еще некоторые функции.
aaarrr
Цитата(Atridies @ Apr 17 2011, 23:58) *
Пробовал. Везде все одно и то же.

Тогда остается сдувать процессор и/или исследовать пустую плату на предмет возможных неожиданностей. Точно не "отзеркалили" ничего? Просто иных идей даже как-то в голову не приходит. На схеме косяков не видно.
Atridies
Проблема решена.
Дело было не в микроконтроллере. Дело оказалось в генераторе SG-8002CE. Отпаял его - все стало нормально. Запаял обратно - все ок, все работает. Судя по всему - было КЗ по выходу.

Спасибо за помощь!
aaarrr
На всех пяти платах? Лихо же вам их смонтировали.
Atridies
При перемонтаже кварцевых генераторов выяснилась одна деталь: первый вывод генератора маркирован маленьким светлым колечком (сверху корпуса, на металле). Но почему-то в другом углу стояла точка белой краской. Поэтому запаяли наоборот. Самое интересное - это у всей партии так.
Для просмотра полной версии этой страницы, пожалуйста, пройдите по ссылке.
Invision Power Board © 2001-2025 Invision Power Services, Inc.