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

Имеется плата(собственной разработки) с мк LPC2364 на борту. Однако пользовательская программа зашитая в мк не работает.
Прошивку произвожу с помощью программы FlashMagic. Никаких проблем при прошивки не возникает, даже имеется возможность считать записанные данные.

Однако стоит выйти из режима программирования и, и пользовательская программа не начинает работу.
Просадок по напряжению нету, смотрел осцилографом. На плате имеется супервизор. Постоянного reset'a нет. Так же имеется проблема с Jtag'ом, а точнее просто не могу с помощью него прошиться. IAR ругается, на то что не может запустить процессор. Разводку платы проверял, всё верно, косяков нет.

Бьюсь третий день, делать что не знаю.
Может у кого то была подобная проблема sm.gif
KRS
P2.10 проверяли?
No_Good
Цитата(KRS @ Nov 7 2012, 21:50) *
P2.10 проверяли?


Так точно. Этот пин подтянут к питанию через резистор.
Lotor
Цитата(No_Good @ Nov 7 2012, 17:16) *
Разводку платы проверял, всё верно, косяков нет.

Чудес не бывает, косяки есть, раз не запускается. =)
Смотрите еще раз внимательно, что с питанием, сбросом, ножкой загрузчика, сигналами jtag, кварцем. желательно осциллографом. wink.gif
No_Good
Цитата(Lotor @ Nov 8 2012, 07:17) *
Чудес не бывает, косяки есть, раз не запускается. =)
Смотрите еще раз внимательно, что с питанием, сбросом, ножкой загрузчика, сигналами jtag, кварцем. желательно осциллографом. wink.gif


Вот кварц не заводится. А не заводится он похоже от того что пользовательская программа не запускается.
Пришёл на работу. Сейчас буду снова ковыряться sm.gif

Lotor
Цитата(No_Good @ Nov 8 2012, 08:44) *
Сейчас буду снова ковыряться sm.gif

Это полезно. Если не наковыряете - опишите схемотехнику ножки ISP, как Вы ей управляете, выведена ли она на RTS ком порта?
No_Good

Вот схема подключения ножки P2.10.

С питанием никаких проблем нет, с ресетом тоже.
Вот только j-tag ведёт себя не очень адекватно.С подсоединённым j-tag'ом уровни на его ножка не 3.3V а 2,3V.
Lotor
Цитата(No_Good @ Nov 8 2012, 10:38) *
Вот схема подключения ножки P2.10.

Ну и как FlashMagic входит в режим ISP, вы замыкаете перемычку JP1 вручную?

Цитата(No_Good @ Nov 8 2012, 10:38) *
Вот только j-tag ведёт себя не очень адекватно.С подсоединённым j-tag'ом уровни на его ножка не 3.3V а 2,3V.

Ээ... Вы представляете как ножки устроены внутри? Про падения напряжения на диодах и т.п....
No_Good
Цитата(Lotor @ Nov 8 2012, 10:02) *
Ну и как FlashMagic входит в режим ISP, вы замыкаете перемычку JP1 вручную?


Ээ... Вы представляете как ножки устроены внутри? Про падения напряжения на диодах и т.п....


Да, вручную. Устройство прошивается ровно 1 раз. Дальше имеется реализация алгоритма прошивки по RS485, без замыкания перемычек и тп. Но пока прошиваюсь вручную.

Про j-tag я наверное не совсем корректно выразился. Объясню:
Есть разъём на плате. Без подключенного j-tag'a уровни там чёрти какие, но это нормально. Брал рабочую плату с другого проекта(с этим же мк) там такие же уровки.
Но как только подключаю j-tag(к нерабочей плате), то на ножках разъёма для j-tag'a(тот что на плате) нету 3.3V, а есть 2,3V. Опять же, взял рабочую плату, решил проверить. Так же подключил, но там все уровни красивые, чистые 3,3V.
yurmala
уверены что программа именно не запускается? т.е. управление по 0 адресу не происходит?
схемотехника подключения JTAG типовая?
Lotor
Цитата(yurmala @ Nov 8 2012, 12:42) *
уверены что программа именно не запускается? т.е. управление по 0 адресу не происходит?
схемотехника подключения JTAG типовая?

Присоединяюсь. Напишите простую тестовую программу дерганья ножкой например.
No_Good
Цитата(yurmala @ Nov 8 2012, 11:42) *
уверены что программа именно не запускается? т.е. управление по 0 адресу не происходит?
схемотехника подключения JTAG типовая?


Да, управление по 0 адресу не происходит.
Схема включения типовая, до этого она работа в пяти серийных устройствах.

yurmala
Цитата(No_Good @ Nov 8 2012, 10:44) *
Вот кварц не заводится. А не заводится он похоже от того что пользовательская программа не запускается.

в моем понимание вначале кварц а уже потом программа.
т.е. без кварца программа не запустится. А не наоборот.
разве нет?
No_Good
Цитата(yurmala @ Nov 8 2012, 12:28) *
в моем понимание вначале кварц а уже потом программа. разве нет?


Кварц вроде как резонатор работает, и ему что то надо подать на вход для начала.
Изначально вроде как от внутреннего генератора запускается.
При сбросе источником тактовой частоты выбран внутрений генератор, а вот уже в пользовательской программе мы указываем внешний источник. Хотя я могу что то путать))
Теперь по теме:
Программу мигания светодиодами записывал, толку 0. Даже делал источником внутренний генератор, так же 0 эмоций.
Lotor
Цитата(No_Good @ Nov 8 2012, 13:35) *
Кварц вроде как резонатор работает, и ему что то надо подать на вход для начала.
Изначально вроде как от внутреннего генератора запускается.
При сбросе источником тактовой частоты выбран внутрений генератор, а вот уже в пользовательской программе мы указываем внешний источник. Хотя я могу что то путать))
Теперь по теме:
Программу мигания светодиодами записывал, толку 0. Даже делал источником внутренний генератор, так же 0 эмоций.

Про кварц рассуждаете верно, внешний подключится при программной настройки уже.
А то, что даже простейшая программа не запускается (а Вы утверждаете, что записывается без проблем и флэшмаджик не ругается) говорит, что процессор или в постоянном сбросе, или постоянно сидит в ISP.

Ну или мк мертвый или непропай. Попробуйте под микроскопом посмотреть на пины, может чего увидите. =)

PS:
Цитата(No_Good @ Nov 8 2012, 13:35) *
Да, управление по 0 адресу не происходит..

Кстати как Вы это определяете?
No_Good
Цитата(Lotor @ Nov 8 2012, 12:59) *
Кстати как Вы это определяете?


Ну программа же с 0 адреса начинает работу. Вектора прописывает и тд, вообщем в startup'e тусит. Но jtag даже туда не заходит.

Перепаял вообще на другой процессор. Толку тоже нету, поставил LPC2368...

Ладно, как будут новости отпишусь))

Всем спасибо за помощь)
Lotor
Цитата(No_Good @ Nov 8 2012, 15:17) *
Ну программа же с 0 адреса начинает работу. Вектора прописывает и тд, вообщем в startup'e тусит. Но jtag даже туда не заходит.

Таки может программа в стартап заходит, а потом улетает в астрал. Из-за этого jtag и не может подключиться. Вы не можете утверждать, что
Цитата
Да, управление по 0 адресу не происходит..
Сергей Борщ
QUOTE (Lotor @ Nov 8 2012, 13:59) *
Из-за этого jtag и не может подключиться.
P2.10 на землю и программа попадет в загрузчик. При этом JTAG сможет подключиться 100%.
No_Good
Цитата(Сергей Борщ @ Nov 8 2012, 17:26) *
P2.10 на землю и программа попадет в загрузчик. При этом JTAG сможет подключиться 100%.


Проверял это сегодня. Всё верно.
Замечено:
Что при наличии низкого уровня на P2.10 мк потребляет 30-40мА. Значит загрузчик действительно работает.
Стоит войти в обычный режим, потребление 10мА...
Сергей Борщ
QUOTE (No_Good @ Nov 8 2012, 16:35) *
Стоит войти в обычный режим, потребление 10мА...
Это вы что-то в инициализации намудрили. Вставьте в начало стартапа бесконечный цикл и перемещая его по коду и смотря отладчиком - доходит до него программа или нет, найдите проблемное место.
No_Good
Цитата(Сергей Борщ @ Nov 8 2012, 21:24) *
Это вы что-то в инициализации намудрили. Вставьте в начало стартапа бесконечный цикл и перемещая его по коду и смотря отладчиком - доходит до него программа или нет, найдите проблемное место.


Все было бы замечательно, если бы у меня отладчик входил хотя бы в startup... А он отказывается это делать.
На счёт правильности: рядом лежала плата от недавнего проекта с этим же мк, прошиваюсь и отлаживаюсь в ней на ура.
Lotor
Цитата(No_Good @ Nov 8 2012, 22:50) *
Все было бы замечательно, если бы у меня отладчик входил хотя бы в startup... А он отказывается это делать.
На счёт правильности: рядом лежала плата от недавнего проекта с этим же мк, прошиваюсь и отлаживаюсь в ней на ура.

Отлаживаться можно и осциллографом, если что. А так сравните настройки проектов, стартапы - чудес не бывает.
No_Good
Цитата(Lotor @ Nov 9 2012, 07:42) *
Отлаживаться можно и осциллографом, если что. А так сравните настройки проектов, стартапы - чудес не бывает.


Да я понимаю, что чудес не бывает. Но что это за чудо такое свершилось ума не приложу.
Ладно, будем дальше разбираться sm.gif Добьётся в итоге всё равно))
kostyan
Как вариант: пробовали кварц сменить поставить с работающей платы?
Ну и убер вариант - поменять сам камень, ибо бывает что и камни таво... Тем более lpc...
Lotor
Цитата(kostyan @ Nov 9 2012, 11:20) *
Как вариант: пробовали кварц сменить поставить с работающей платы?

Автор не может и на внутреннем генераторе запуститься, зачем ему менять кварц?
Цитата(kostyan @ Nov 9 2012, 11:20) *
ибо бывает что и камни таво... Тем более lpc...

Обоснуйте, что не так с lpc, пожалуйста.
kostyan
Не буду конечно однозначно про весь lpc утверждать. Но пробовали 1788. Вроде и ривизия свежая... Сгорело 4-5 камней при разных условиях. Особенно от последнего "условия" был в шоке - вытащил жэтаг "на горячую". Часть сгорела - на ацп внешнем было подано напряжение, а на камне - нет. В общем чего тока не делал на аналогичной плате с SAM3U - ни ОДНОГО камня не сгорело. Но вполне возможно что сам дурак, или камни какие пиленые... Но неприятный осадок астался... Тем более атмелы 3Х серию выпустили вроде уже...
Lotor
Цитата(kostyan @ Nov 9 2012, 11:34) *
Сгорело 4-5 камней при разных условиях. Особенно от последнего "условия" был в шоке - вытащил жэтаг "на горячую". Часть сгорела - на ацп внешнем было подано напряжение, а на камне - нет.

Ох, даже боюсь предположить что за остальные "условия". =)
No_Good
МК менял и не раз, замена не помогала. Та же история с кварцем.
В надёжности контроллеров от nxp никогда не сомневался. Температуру, помехи и тп воздействия выдерживает на ура, в то время как остальные, stm'ы, msp глохнут.
А теперь к делу.
Есть новости:D Поковырялся в настройках IAR'a, а точнее переписал адреса RAM и ROM. Кварц стал генерить 12 MHz, что радует. Хотя на другой плате на старых настройках всё работало на ура, в чем прикол так и не понял.
Только j-tag всё равно не работает, пины так же не дёргаются.
Смущает тот факт что уровни всё равно подсаженные, даже минимальных 2,8В нету заявленых в даташите.
Разбираюсь дальшеsm.gif
Lotor
Генерация кварца говорит, что в стартап уже попадаете. Теперь смотрите настройки jtag/jlink - тип сброса, скорость и т.п..

PS: хотя я таки продолжаю думаю, что Вы уходите в астрал раньше, чем jtag успевает приконектиться.
Возьмите готовый пример у IAR аля "arm\examples\NXP\LPC23xx\IAR-LPC-2378-SK\simple\GPIO" и попробуйте адаптировать и запустить.
kostyan
А где покупали, надежность поставщика, может партия всетаки пиленная?

Теже китайцы днем работают на npx а вечером на себя sm.gif

Полыхать от любого пука - это я надежностью ну никак не назову. SAM3U у меня при тех же равных - вообще ниадин никак не сгорел.
No_Good
Цитата(kostyan @ Nov 12 2012, 06:43) *
А где покупали, надежность поставщика, может партия всетаки пиленная?

Теже китайцы днем работают на npx а вечером на себя sm.gif

Полыхать от любого пука - это я надежностью ну никак не назову. SAM3U у меня при тех же равных - вообще ниадин никак не сгорел.


Наговариваете Товарищ! sm.gif

NXP выдерживал у меня много чего и не разу не отвалился, и фен с 250 градусами, и специально сделанный источник помех)

Ну а вообще всё оказалось куда проще. Во всём виноваты мои кривые руки. Разъём j-tag'a стоял зеркально.
Всем больше спасибо за помощь! Тему можно закрывать sm.gif
Для просмотра полной версии этой страницы, пожалуйста, пройдите по ссылке.
Invision Power Board © 2001-2025 Invision Power Services, Inc.