Помощь - Поиск - Пользователи - Календарь
Полная версия этой страницы: AT91SAM7S256 и wigler
Форум разработчиков электроники ELECTRONIX.ru > Микроконтроллеры (MCs) > ARM
VIRt
Помогите разобраться. Не хочет виглер с атмелом нормально работать, хоть с lpc2294 работает прекрасно без збоев. Работаю через ИАР430А с платой от olimex SAM7-MT256. Питание беру с USB.
Некорректная работа заключается в следующем:
- После записи програмы во флеш один цикл отладки проходит нормально
- При повторном входе в отладчик выдает ощибку, типа нет ВИглера
- Помогает только передергивание шлейфа от виглера до платы + снятие питания с контролера

Подскажите пожалуста в чем может быть сия проблема???
Kitsok
Цитата(VIRt @ Dec 14 2006, 17:37) *
Помогите разобраться. Не хочет виглер с атмелом нормально работать, хоть с lpc2294 работает прекрасно без збоев. Работаю через ИАР430А с платой от olimex SAM7-MT256. Питание беру с USB.
Некорректная работа заключается в следующем:
- После записи програмы во флеш один цикл отладки проходит нормально
- При повторном входе в отладчик выдает ощибку, типа нет ВИглера
- Помогает только передергивание шлейфа от виглера до платы + снятие питания с контролера

Подскажите пожалуста в чем может быть сия проблема???


Очень похожая проблема, но при отладке в RAM. Причем на W2K все нормально, а на XP приходится дергать питание платы. Плата - SAM7-P256
Prime
Ребята, у меня вобщем Виглер не коннектится. Сплошные ошибки. Пробовал через H-JTAG - один контроллер определяется, но chip ID - 0x3f0f0f0f, и флешка не шьется. Другой контроллер не определяется, зато если его подсунуть H-Flasher'у после того, как определился первый контроллер - шьется флешь, но небольшие файлы до 700 байт...Больше прошиваются с ошибкой...Также дело обстоит и с командой Erase...Стираются только диапазон в 32 блока...больше не может...А после долгих мучений вобщем H-JTAG и H-Flasher перестали видеть оба контроллера...У меня тоже XP стоит

Ребята, у меня вобщем Виглер не коннектится. Сплошные ошибки. Пробовал через H-JTAG - один контроллер определяется, но chip ID - 0x3f0f0f0f, и флешка не шьется. Другой контроллер не определяется, зато если его подсунуть H-Flasher'у после того, как определился первый контроллер - шьется флешь, но небольшие файлы до 700 байт...Больше прошиваются с ошибкой...Также дело обстоит и с командой Erase...Стираются только диапазон в 32 блока...больше не может...А после долгих мучений вобщем H-JTAG и H-Flasher перестали видеть оба контроллера...У меня тоже XP стоит
VIRt
Цитата(Kitsok @ Dec 14 2006, 18:07) *
Очень похожая проблема, но при отладке в RAM. Причем на W2K все нормально, а на XP приходится дергать питание платы. Плата - SAM7-P256


У меня вообще отладка в RAM не работает. Использую родные атмеловские файлы из BasicIAR-SAM7S256-IAR430A.zip. Пока не поставил загрузчика во флеш из ИАРа, то и отладка во флеше тож не работала. Сейчас чёто работает, только глючит по страшному...
Может я чето неправильно настроил. Подскажите похалуста??? Или скиньте правильные настройки проэкта под IAR + wigler
AlexBoy
Отвечу сначала на счет виглера вообще, почему-то считается, что он всегда глючит и тормозит. Если нормально сделан, то он работает отлично. Привожу схему, которой пользуюсь около года, работает без вопросов на AT91SAM и AT91RM9200. Прошу ничего не упрощать, каждая деталь выстрадана в долгих поисках устойчивой работы. Были проблемы с 3-х метровым удлиннителем LPT, пришлось укоротить его до 1,5м.
На схеме +5 это питание получаемое от LPT порта, +3,3 идет с JTAG разъема. В JP1 все разомкнуто, хотя на некоторых платах может понадобится, JP2 замкнут, JP3 в положении 2-3, оба ресета задействованы и подаются раздельно.
Теперь о драйверах. Во первых в биосе установить режим LPT в normal. Для отладки пользуюсь AXD Debuger из RVDS2.2 через H-JTAG. Кстати вышла новая версия H-JTAG 0.4.2, флешка в SAMах заливается 20кил/сек, так что не очень и тормознутый smile.gif . Отладка в RAM происходит как обычно, отладчик сам заливает, во flash нужно предварительно залить с помощью h-flasher, потом запускать отладчик.
Вобщем пробуйте, должно получиться.
VIRt
Поставил кеил и и прикрутил H-JTAG к нему. Отладка в ОЗУ пошла, все заработало. С Иаром все та же история... Нормально не пашет...
Кеил меня вполне устроит. Вот только ешо один вопрос. Как проводить отладку во флеше? В Иар для этого есть родной загрузчик, который все прописывает. Как же настроить подобное в Кейле через виглер?

Да и кстати ID контролера определяется как 0x3f0f0f0f. И при загрузке файла через H-Flasher выдает ошибу destination adres out of range. Прописываю в формате HEX...
AlexBoy
Цитата(VIRt @ Dec 15 2006, 18:14) *
Поставил кеил и и прикрутил H-JTAG к нему. Отладка в ОЗУ пошла, все заработало. С Иаром все та же история... Нормально не пашет...
Кеил меня вполне устроит. Вот только ешо один вопрос. Как проводить отладку во флеше? В Иар для этого есть родной загрузчик, который все прописывает. Как же настроить подобное в Кейле через виглер?

Да и кстати ID контролера определяется как 0x3f0f0f0f. И при загрузке файла через H-Flasher выдает ошибу destination adres out of range. Прописываю в формате HEX...


У меня ID такой-же, это нормально. Для H-Flashera адрес = 0. Советую скачать свежую версию, с 0.4.0 у меня не работало.
VIRt
laugh.gif

Спасиба вроди заработало. Подправил конфиги у H-Flasherа. Подставил нужный ИД.
Andy Great
Я еще и адрес другой подставлял в конфигурации флешера. А вообще, у Кейла есть свои флеш-загрузчики.
Kitsok
Я у себя проблему победил установкой H-JTAG и привязкой дебаггера IAR через RDI.
В H-JTAG я указал инвертировать и TRST и SRST. Загружается мигом в отличие от родного макгрегора, и вообще, все быстрее работает.
Prime
Цитата(AlexBoy @ Dec 15 2006, 17:43) *
Отвечу сначала на счет виглера вообще, почему-то считается, что он всегда глючит и тормозит. Если нормально сделан, то он работает отлично. Привожу схему, которой пользуюсь около года, работает без вопросов на AT91SAM и AT91RM9200. Прошу ничего не упрощать, каждая деталь выстрадана в долгих поисках устойчивой работы. Были проблемы с 3-х метровым удлиннителем LPT, пришлось укоротить его до 1,5м.
На схеме +5 это питание получаемое от LPT порта, +3,3 идет с JTAG разъема. В JP1 все разомкнуто, хотя на некоторых платах может понадобится, JP2 замкнут, JP3 в положении 2-3, оба ресета задействованы и подаются раздельно.
Теперь о драйверах. Во первых в биосе установить режим LPT в normal. Для отладки пользуюсь AXD Debuger из RVDS2.2 через H-JTAG. Кстати вышла новая версия H-JTAG 0.4.2, флешка в SAMах заливается 20кил/сек, так что не очень и тормознутый smile.gif . Отладка в RAM происходит как обычно, отладчик сам заливает, во flash нужно предварительно залить с помощью h-flasher, потом запускать отладчик.
Вобщем пробуйте, должно получиться.


Вопрос у меня такой - когда подключаешься к AT91SAM7S64, там только один ресет! Какой из них подключать надо?
goodwin
nSRST
Prime
Для AlexBoy:
Как вы думаете, если я вместо 74AC244 поставлю 74HC244, ничего плохого не случится?
Prime
Для AlexBoy
И вместо BAT54 можно, я думаю, поставить обычные диоды???
AlexBoy
Цитата(Prime @ Dec 18 2006, 12:08) *
Для AlexBoy:
Как вы думаете, если я вместо 74AC244 поставлю 74HC244, ничего плохого не случится?


74AC244 нужен для надежного преобразования уровней от 3,3 на 5 и обратно. Если поставить другую будет глючить, кстати серию АС найти на рынке не сложно, а вот LCX пришлось заменить на НС.

Вместо сборки можно поставить диоды с малым падением (германиевые).

Ресет используется nSRST (вывод 15 на 20-и контактном разъеме).
sonycman
Что-то я не пойму, в вышеприведённой схеме 74HC244 питается от 3.3 вольт, макс. допустимое напряжение на входах составляет 3.3+0,5=3.8 вольта, а впереди стоящий буфер AC244 будет подавть все 5 вольт. Ничего не погорит?

И в чём отличие между AC и HC? Только по скорости?

Вероятно, можно поставить вместо 244 245 серию?
sonycman
Спаял Wiggler, установил H-JTAG к Кейлу.
Работает, но есть пара проблем с uVision:
1. Дебаггер Кейла ругается: RDI: System-Reset is not supported. Соответственно, сброс процессора из дебаггера невозможен. Как я понял - это косяк H-JTAG, автор зачем-то отключил эту фичу sad.gif
2. Ещё (при установке кеширования в настройках RDI драйвера) выскакивает AGDI: memory read failed. Без этого кеширования вроде нормально smile.gif
3. Так и не понял, как народ умудряется отлаживать свои проги в RAM. H-Flasher ведь только во флеш грузит?

А какие ещё есть альтернативы H-JTAG? Для виглера, имею ввиду? Что-то вроде говорили про RDI от Segger?
gladov
Цитата(sonycman @ Feb 2 2007, 17:45) *
Что-то я не пойму, в вышеприведённой схеме 74HC244 питается от 3.3 вольт, макс. допустимое напряжение на входах составляет 3.3+0,5=3.8 вольта, а впереди стоящий буфер AC244 будет подавть все 5 вольт. Ничего не погорит?

И в чём отличие между AC и HC? Только по скорости?

Вероятно, можно поставить вместо 244 245 серию?


Насколько я знаю, серия НС как раз обазана корректно работать 5В уровнями на входе при запитке от 3.3В. Она специально была сделана для сопряжения уровней.

Цитата
А какие ещё есть альтернативы H-JTAG? Для виглера, имею ввиду? Что-то вроде говорили про RDI от Segger?


RDI это универсальный драйвер-прослойка, который пишется под конкретное железо отладчика, а для среды предоставляет единый интерфейс. RDI от Segger это драйвер для USB отладчика J-Link (и его клонов). А H-JTAG это RDI для Wiggler.
У меня с H-JTAG в IAR вообще не было проблем. Все отлично работает...
Andreas1
Рекомендую поставить на входе резисторы 100...150 Ом. Без них запросто глючит АС(послед. согласование). Вообще АС не лучший вариант- шустрые, чувств. к наводкам, шумные. Зачем?
Andy Great
Цитата(sonycman @ Feb 6 2007, 01:50) *
Спаял Wiggler, установил H-JTAG к Кейлу.
Работает, но есть пара проблем с uVision:
1. Дебаггер Кейла ругается: RDI: System-Reset is not supported. Соответственно, сброс процессора из дебаггера невозможен. Как я понял - это косяк H-JTAG, автор зачем-то отключил эту фичу sad.gif
2. Ещё (при установке кеширования в настройках RDI драйвера) выскакивает AGDI: memory read failed. Без этого кеширования вроде нормально smile.gif
3. Так и не понял, как народ умудряется отлаживать свои проги в RAM. H-Flasher ведь только во флеш грузит?

А какие ещё есть альтернативы H-JTAG? Для виглера, имею ввиду? Что-то вроде говорили про RDI от Segger?

По порядку отвечаю.
1. Есть такая проблема. В H-JTAG можно установить "сброс при открытии сеанса", но это не решает всех вопросов. Есть проблемы с отладкой стартапа и начала программы. Варианты: можно в начале программы тормознуться в вечном цикле или по переменной какой-нибудь, а потом в отладчике шагнуть дальше. Или эмулировать сброс установкой РС в нужное значение, не очень кузяво, но протрассировать стартап можно.
2. Не помню такого, наверное, не включал кеширование.
3. А в чем вопрос? Главное, правильно слинковать программу, чтоб на нужные адреса ложилась. Плюс, возможно, замапить вектора. В ОЗУ загрузит сам отладчик, они все это умеют делать. Вот флэш прошивать не все умеют.

Альтернативы: Баньян, но я давно за ним не следил. OpenOCD+GDB, но это уже не Кейл. OpenOCD+NoICE, но там денег надо. Или написать свой AGDI драйвер, например, использующий GDB-протокол. smile.gif
У Сеггера, понятно, все для J-Link.
sonycman
По segger`у всё понял, спасибо.
Цитата(gladov @ Feb 6 2007, 12:05) *
Насколько я знаю, серия НС как раз обазана корректно работать 5В уровнями на входе при запитке от 3.3В. Она специально была сделана для сопряжения уровней.

Да вроде нет. В даташите на 74HC244 ясно написано:
DC Input Voltage -0.5 to VCC + 0.5 V
и дальше
RECOMMENDED OPERATING CONDITIONS: Input Voltage 0 to VCC V
То есть в приведённой схеме эти рекомендации не соблюдаются.
Вероятно, это является причиной падения напряжения питания AC244 с 5-ти до 4(!) вольт, так как через защитные диоды HC244 (3.3в + падение на диоде 0.6в = 3.9в) течёт немалый ток и LPT порт просто не тянет 5 вольт.
А вот входы 74LCX244 являются 5V Tolerant Inputs, здесь уже всё в порядке. Только найти её ещё надо sad.gif
Цитата(Andy Great @ Feb 6 2007, 13:19) *
А в чем вопрос? Главное, правильно слинковать программу, чтоб на нужные адреса ложилась. Плюс, возможно, замапить вектора. В ОЗУ загрузит сам отладчик, они все это умеют делать. Вот флэш прошивать не все умеют.

Альтернативы: Баньян, но я давно за ним не следил. OpenOCD+GDB, но это уже не Кейл. OpenOCD+NoICE, но там денег надо. Или написать свой AGDI драйвер, например, использующий GDB-протокол. smile.gif
У Сеггера, понятно, все для J-Link.

А как слинковать программу для загрузки сразу в озу в кейле? Там можно выбрать Startup сегмент только во флеш, то есть по-любому сначала надо прошить флеш, а потом уже __main будет перекидывать программу в озу. Вот это мне не понятно.

А по Баньяну можно подробнее? Где его искать?
Andy Great
Баньян искать не надо, H-JTAG все равно лучше.

Я работал пока только с родным компилером, для RV можно сделать (ИМХО) через скаттер-файлы или прописать в диалоге настройки памяти нужные регионы (часть ОЗУ под RO-секцию отвести). Потом глянуть в МАП, куда легло. За конечное число попыток должно получиться smile.gif
sonycman
Цитата(Andy Great @ Feb 6 2007, 15:13) *
Баньян искать не надо, H-JTAG все равно лучше.

Я работал пока только с родным компилером, для RV можно сделать (ИМХО) через скаттер-файлы или прописать в диалоге настройки памяти нужные регионы (часть ОЗУ под RO-секцию отвести). Потом глянуть в МАП, куда легло. За конечное число попыток должно получиться smile.gif

Спасибо! Буду разбираться smile.gif
Для просмотра полной версии этой страницы, пожалуйста, пройдите по ссылке.
Invision Power Board © 2001-2025 Invision Power Services, Inc.