реклама на сайте
подробности

 
 
2 страниц V   1 2 >  
Reply to this topicStart new topic
> Помогите с отладкой во Flash
wodya
сообщение Apr 13 2007, 11:29
Сообщение #1


Частый гость
**

Группа: Свой
Сообщений: 112
Регистрация: 27-03-07
Пользователь №: 26 549



Микросхема AT91SAM7S32 c IAR
Отладка в RAM работает нормально.
Пытаюсь отладить во FLASH - полный бред. Вылетает черт знает куда.
Поменял конфиг линковщика на at91SAM7S32_FLASH.xcl,
файл отладчика на SAM7_FLASH.mac (оба файла скачал с Atmel)
поставил use flash loader
в настройках линковщика Allow C-spy specific extra output file
в extra outputs - simple code

теперь IAR руграется на невозможность инициализации debug режима или неверности формата файла Flashat91sam7Sx.d79

Пожайлуста, напишите по шагам, что нужно делать для отладки во Flash и, если можно, прикрепите необходимые файлы, а то я где-то прочитал, что и at91SAM7S32_FLASH.xcl надо как-то править

Заранее благодарен.
Go to the top of the page
 
+Quote Post
etoja
сообщение Apr 13 2007, 11:41
Сообщение #2


Профессионал
*****

Группа: Свой
Сообщений: 1 121
Регистрация: 14-01-05
Из: Москва
Пользователь №: 1 952



Две ошибки:
- использование IAR
- использование Atmel

Правильный вариант: KEIL + Philips или ICCV7ARM + Philips.
Go to the top of the page
 
+Quote Post
wodya
сообщение Apr 13 2007, 11:48
Сообщение #3


Частый гость
**

Группа: Свой
Сообщений: 112
Регистрация: 27-03-07
Пользователь №: 26 549



Дельный совет, спасибо. Главное вовремя. cranky.gif


Да, кстати, а как отлаживать c ICC по JTAG?
Go to the top of the page
 
+Quote Post
Сергей Борщ
сообщение Apr 13 2007, 12:29
Сообщение #4


Гуру
******

Группа: Модераторы
Сообщений: 8 455
Регистрация: 15-05-06
Из: Рига, Латвия
Пользователь №: 17 095



Цитата(wodya @ Apr 13 2007, 10:29) *
Пожайлуста, напишите по шагам, что нужно делать для отладки во Flash и, если можно, прикрепите необходимые файлы, а то я где-то прочитал, что и at91SAM7S32_FLASH.xcl надо как-то править

Вот тут посмотрите.


--------------------
На любой вопрос даю любой ответ
"Write code that is guaranteed to work, not code that doesn’t seem to break" (C++ FAQ)
Go to the top of the page
 
+Quote Post
etoja
сообщение Apr 13 2007, 12:47
Сообщение #5


Профессионал
*****

Группа: Свой
Сообщений: 1 121
Регистрация: 14-01-05
Из: Москва
Пользователь №: 1 952



ICCV7 и JTAG
Imagecraft продаёт дополнительную утилиту
$ 159.00 NoICE-ARM Debugger

* Debugger program for use with ICCV7 for ARM. NoICE-ARM is fully compatible with Segger J-Link and other JTAG pods.

http://www.imagecraft.com/purchase_ARM.html?
Go to the top of the page
 
+Quote Post
wodya
сообщение Apr 13 2007, 13:44
Сообщение #6


Частый гость
**

Группа: Свой
Сообщений: 112
Регистрация: 27-03-07
Пользователь №: 26 549



А где можно купить NoICE-ARM?
Go to the top of the page
 
+Quote Post
etoja
сообщение Apr 13 2007, 16:40
Сообщение #7


Профессионал
*****

Группа: Свой
Сообщений: 1 121
Регистрация: 14-01-05
Из: Москва
Пользователь №: 1 952



Купить можно непосредственно на www.imagecraft.com
А бесплатно скачать можно здесь:
http://elmicro.com/files/noice/
но без лицензии она будет работать 30 дней.
Go to the top of the page
 
+Quote Post
IgorKossak
сообщение Apr 14 2007, 22:40
Сообщение #8


Шаман
******

Группа: Модераторы
Сообщений: 3 064
Регистрация: 30-06-04
Из: Киев, Украина
Пользователь №: 221



Цитата(etoja @ Apr 13 2007, 11:41) *
Две ошибки:
- использование IAR
- использование Atmel

Правильный вариант: KEIL + Philips или ICCV7ARM + Philips.

Следующее подобное голословное суждение с нарушением правил форума неизменно повлечёт за собой предупреждение.
Что касается темы, то упомянутая связка IAR, Atmel, отладка во flash работает на ура. Били бы руки прямыми (это не к автору темы). Внимание следует обратить на запуск загрузчика и настройки отладчика. Ссылку уже давали, повторяться не буду.
Go to the top of the page
 
+Quote Post
An@BoLiK
сообщение Apr 25 2007, 18:59
Сообщение #9


Участник
*

Группа: Свой
Сообщений: 69
Регистрация: 24-04-07
Из: Харьков
Пользователь №: 27 289



Цитата(wodya @ Apr 13 2007, 12:29) *
Микросхема AT91SAM7S32 c IAR
Отладка в RAM работает нормально.
Пытаюсь отладить во FLASH - полный бред. Вылетает черт знает куда.
Поменял конфиг линковщика на at91SAM7S32_FLASH.xcl,
файл отладчика на SAM7_FLASH.mac (оба файла скачал с Atmel)
поставил use flash loader
в настройках линковщика Allow C-spy specific extra output file
в extra outputs - simple code

теперь IAR руграется на невозможность инициализации debug режима или неверности формата файла Flashat91sam7Sx.d79

Пожайлуста, напишите по шагам, что нужно делать для отладки во Flash и, если можно, прикрепите необходимые файлы, а то я где-то прочитал, что и at91SAM7S32_FLASH.xcl надо как-то править

Заранее благодарен.



А всетаки ответит кто нибудь на данный вопрос? у меня тоже такая проблемка.
Go to the top of the page
 
+Quote Post
Сергей Борщ
сообщение Apr 25 2007, 20:02
Сообщение #10


Гуру
******

Группа: Модераторы
Сообщений: 8 455
Регистрация: 15-05-06
Из: Рига, Латвия
Пользователь №: 17 095



Цитата(An@BoLiK @ Apr 25 2007, 17:59) *
А всетаки ответит кто нибудь на данный вопрос?
Выше ссылку давал. "Делай раз, делай два, делай три". Сообщение о неверности формата файла Flashat91sam7Sx.d79 получал, но не могу вспомнить какова была причина. Что-то эелементарное, скорее всего пытался отлаживать проект под SAM7 когда к отладчику был подключен LPC. В остальных случаях все работает.


--------------------
На любой вопрос даю любой ответ
"Write code that is guaranteed to work, not code that doesn’t seem to break" (C++ FAQ)
Go to the top of the page
 
+Quote Post
An@BoLiK
сообщение Apr 25 2007, 20:33
Сообщение #11


Участник
*

Группа: Свой
Сообщений: 69
Регистрация: 24-04-07
Из: Харьков
Пользователь №: 27 289



Цитата(Сергей Борщ @ Apr 25 2007, 21:02) *
Выше ссылку давал. "Делай раз, делай два, делай три". Сообщение о неверности формата файла Flashat91sam7Sx.d79 получал, но не могу вспомнить какова была причина. Что-то эелементарное, скорее всего пытался отлаживать проект под SAM7 когда к отладчику был подключен LPC. В остальных случаях все работает.


вроде разобрался немного, отредактировал flasher поставил там $TOOLKIT_DIR$\config\flashloader\Atmel\FlashAT91SAM7Sxx.d79.

Пошло вреде, заливает во флеш но неправильно.... привожу LOG.
Wed Apr 25 20:28:29 2007: Loaded macro file: C:\Program Files\IAR Systems\Embedded Workbench 4.0 Evaluation\ARM\config\flashloader\Atmel\FlashAT91SAM7Sxx.mac
Wed Apr 25 20:28:29 2007: JTAG API v48.32, Wiggler v1.41, ARM ID: 3F0F0F0F
Wed Apr 25 20:28:29 2007: ---------------------------------------- FLASH Download V1.3
Wed Apr 25 20:28:29 2007: ---------------------------------------- 14/November/2005
Wed Apr 25 20:28:29 2007: ---------------------------------------- PLL Enable
Wed Apr 25 20:28:29 2007: -------------------------------Set CPSR ----------------------------------
Wed Apr 25 20:28:29 2007: CPSR 000000D3
Wed Apr 25 20:28:29 2007: ---------------------------------------- PLL Enable
Wed Apr 25 20:28:29 2007: ------------------------------- The Remap is done ----------------------------------------
Wed Apr 25 20:28:29 2007: ---------------------------------------- Chip ID 0x27090540
Wed Apr 25 20:28:29 2007: ---------------------------------------- Extention 0x00000000
Wed Apr 25 20:28:29 2007: ---------------------------------------- Flash Version 0x00000110
Wed Apr 25 20:28:29 2007: -------------------------------Set PC ----------------------------------------
Wed Apr 25 20:28:34 2007: 5096 bytes downloaded and verified (1.09 Kbytes/sec)
Wed Apr 25 20:28:34 2007: Loaded debugee: C:\Program Files\IAR Systems\Embedded Workbench 4.0 Evaluation\ARM\config\flashloader\Atmel\FlashAT91SAM7Sxx.d79
Wed Apr 25 20:28:34 2007: Target reset
Wed Apr 25 20:28:35 2007: Downloader Version 1.31 (04-Dec-2006)
Wed Apr 25 20:28:35 2007: Download1 : AT91SAM7Sxx at: 0x100000
Wed Apr 25 20:28:36 2007: Download : AT91SAM7Sxx Version: 0x110
Wed Apr 25 20:28:39 2007: Download : page 0
Wed Apr 25 20:28:42 2007: Download : page 1
Wed Apr 25 20:28:43 2007: Download : page 2
Wed Apr 25 20:28:45 2007: Program exit reached.
Wed Apr 25 20:28:45 2007: execUserFlashExit
Wed Apr 25 20:28:45 2007: ------------------------------- The Remap is done -----------------------------------------
Wed Apr 25 20:28:45 2007: Loaded macro file: C:\Program Files\IAR Systems\Embedded Workbench 4.0 Evaluation\ARM\config\flashloader\Atmel\FlashAT91SAM7Sxx.mac
Wed Apr 25 20:28:45 2007: -------------------------------Set CPSR ----------------------------------
Wed Apr 25 20:28:45 2007: CPSR 000000D3
Wed Apr 25 20:28:45 2007: ---------------------------------------- PLL Enable
Wed Apr 25 20:28:45 2007: ------------------------------- The Remap is NOT -----------------------------------------
Wed Apr 25 20:28:45 2007: ---------------------------------------- Chip ID 0x27090540
Wed Apr 25 20:28:45 2007: ---------------------------------------- Extention 0x00000000
Wed Apr 25 20:28:45 2007: ---------------------------------------- Flash Version 0x00000110
Wed Apr 25 20:28:46 2007: 546 bytes downloaded into FLASH and verified (0.04 Kbytes/sec)
Wed Apr 25 20:28:46 2007: Warning:
Verify error at address 0x00000110, target byte: 0x01, byte in file: 0x00
Wed Apr 25 20:28:46 2007: Warning:
Verify error at address 0x00000111, target byte: 0xBC, byte in file: 0xB5
Wed Apr 25 20:28:46 2007: Warning:
Verify error at address 0x00000112, target byte: 0x00, byte in file: 0x40
Wed Apr 25 20:28:46 2007: Warning:
Verify error at address 0x00000113, target byte: 0x47, byte in file: 0x1E
Wed Apr 25 20:28:46 2007: Warning:
Verify error at address 0x00000115, target byte: 0xB5, byte in file: 0x28
Wed Apr 25 20:28:46 2007: Warning:
Verify error at address 0x00000116, target byte: 0x9B, byte in file: 0xFC
Wed Apr 25 20:28:46 2007: Warning:
Verify error at address 0x00000117, target byte: 0x21, byte in file: 0xD1
Wed Apr 25 20:28:46 2007: Warning:


и так далее...... не совпадают записанные данные
что может быть?
Go to the top of the page
 
+Quote Post
beer_warrior
сообщение Apr 25 2007, 22:10
Сообщение #12


Профессионал
*****

Группа: Свой
Сообщений: 1 065
Регистрация: 8-10-05
Из: Kiev, UA
Пользователь №: 9 380



Да простит меня господин модератор (який вже не гуморі)

Блин, но я не понимаю зачем губить столько времени шаманя с аппаратной отладкой, если все решается одним шнурком и одним окном терминала?

Все эти игрушки хороши, когда надо изучать работу нового камня. А в практической работе все решается моделированием в голове и трассировкой проги.
В 10% случаев проблемы от непонимания (кривизны) железа. В 90% от кривизны алгоритма.


--------------------
Вони шукають те, чого нема,
Щоб довести, що його не існує.
Go to the top of the page
 
+Quote Post
AlexandrY
сообщение Apr 25 2007, 22:59
Сообщение #13


Ally
******

Группа: Модераторы
Сообщений: 6 232
Регистрация: 19-01-05
Пользователь №: 2 050



Так под терминал надож писать кучу лишних отладочных команд, тормозить ими алгоритм, занимать какой либо порт, а потом еще в том же терминале фильтровать и анализировать полученый лог.
Т.е надо совершать кучу неоправданных и неэффективных действий.
Пока вы пишите assert-ы или debuf_printf-ы , с JTAG 10-ть раз можно прогнать тоже место по шагам и вычистить все ошибки просто на автомате, не прилагая никаких мозговых усилий. Т.е производительность труда вырастает многократно. Первое, потому, что писать можно не сильно думая об ошибках, а второе, потому, что очищать от ошибок тоже можно не сильно напрягаясь.
И код будет чист от кучи макросов зашумляющих исходники.


Цитата(beer_warrior @ Apr 25 2007, 22:40) *
Да простит меня господин модератор (який вже не гуморі)

Блин, но я не понимаю зачем губить столько времени шаманя с аппаратной отладкой, если все решается одним шнурком и одним окном терминала?

Все эти игрушки хороши, когда надо изучать работу нового камня. А в практической работе все решается моделированием в голове и трассировкой проги.
В 10% случаев проблемы от непонимания (кривизны) железа. В 90% от кривизны алгоритма.
Go to the top of the page
 
+Quote Post
beer_warrior
сообщение Apr 25 2007, 23:40
Сообщение #14


Профессионал
*****

Группа: Свой
Сообщений: 1 065
Регистрация: 8-10-05
Из: Kiev, UA
Пользователь №: 9 380



Несколько офтопично, но все же.
Добрая половина обсуждений в АРМах - проблемы с Вигглером, МТ-линком, Хамелеоном итд.итп.

Вот я и не пойму. Нафига столько убиваться с инструментами?
Кстати по той же причине пользуюсь gcc. Никаких проблем с инсталяциями, лекарствами, лицензиями итп. Ну да , требуется больше умения, зато любой комп рабочее место. Зачастую прямо с флэшки. Развернул за 10 минут и в бой. Время -деньги.
Аналогично и с отладчиками - на АРМ нужно одно, на АВР другое, на Ренесас или МСП - третье.
И потом начинается - без ЖТАГА - не могу (точно как Дельфисты не могут без складов компонентов в Инете).
Писать надо не расслаблясь - думая о том, что и как пишешь Тогда приобретается полезная привычка писать рабочий код с первого (на крайняк второго) прохода.
Опять таки подчеркну. Основные проблемы при отладке это не пропущенная запятая, а неправильный алгоритм или непродуманнная архитектура. И при этом нет смысла подглядывать в ядро. Просто по внешним признакам видно, что не пашет - графика не работает, клава не сканится, сеть не пингуется.
А чаще всего ошибки это вообще такая погань, которая вылазит не в лаборатории, а на эксплуатации, когда какую-то комбинацию внешних воздействий не просто не предусмотрел. И опять это отладочная ботва ничем не поможет. В лаборатории ее не смоделируешь. Т.е. опять приходится активизировать серое вещество.



P.S. Байка в тему.
Лет 15 назад я работал в сервисе. Починяли все - от телевизоров до профессиональной видеотехники.
По случаю хронической невыплаты зарплат пришел к нам мужичек из какого-то НИИ.
Мы громоздили на столы телетесты, осциллы с выделением строки, скупали всякие припонтованые приспособы. А у Саши было два инструмента - отвертка с двумя жалами (простое и крест) и тестер(хороший). Успеевал он сделать вдвое больше лучшего из нас.
Вот тогда я понял к чему в работе надо стремится.

P.P.S. Извиняюсьза некоторую сумбурность - и время позднее и "Львовское Премиум Лагер" напиток не детский smile.gif


--------------------
Вони шукають те, чого нема,
Щоб довести, що його не існує.
Go to the top of the page
 
+Quote Post
Сергей Борщ
сообщение Apr 25 2007, 23:56
Сообщение #15


Гуру
******

Группа: Модераторы
Сообщений: 8 455
Регистрация: 15-05-06
Из: Рига, Латвия
Пользователь №: 17 095



Цитата(An@BoLiK @ Apr 25 2007, 19:33) *
и так далее...... не совпадают записанные данные
что может быть?
Смущает строчка Download1 : AT91SAM7Sxx at: 0x100000, а дальше идут ошибки на адресах 0x00000110. Посмотрите, в какие адреса слинкована программа. И не висит ли у вас неправильный уровень на ноге, отвечающей за восстановление самбы.

Хм... посмотрел, что пишет у меня - то же самое, Download1 : AT91SAM7Sx at: 0x100000. Может самба восстанавливается?
И какой кристалл отлаживаете? AT91SAM7Sxx.d79 для 128 и 256, AT91SAM7Sx.d79 для 32 и 64


--------------------
На любой вопрос даю любой ответ
"Write code that is guaranteed to work, not code that doesn’t seem to break" (C++ FAQ)
Go to the top of the page
 
+Quote Post

2 страниц V   1 2 >
Reply to this topicStart new topic
2 чел. читают эту тему (гостей: 2, скрытых пользователей: 0)
Пользователей: 0

 


RSS Текстовая версия Сейчас: 18th June 2025 - 16:01
Рейтинг@Mail.ru


Страница сгенерированна за 0.01493 секунд с 7
ELECTRONIX ©2004-2016