|
|
  |
SAM debug monitor, нужен образец |
|
|
|
Jul 11 2006, 14:04
|
Гуру
     
Группа: Свой
Сообщений: 10 713
Регистрация: 11-12-04
Пользователь №: 1 448

|
Цитата(goodwin @ Jul 11 2006, 15:43)  А для ARM вроде стандартом является "Angel". Он и в IAR есть в установках отладчика... Правильнее сказать являлся, сейчас он практически не поддерживается. Я когда-то думал использовать его для AT91M40800 - бинарник получился около 48к, так что для SAM не проходит по ресурсам. Цитата(SpiritDance @ Jul 11 2006, 17:23)  И где достать этого ангела? Интересует скорее документация чем сама прога. Документация есть здесь. Но связываться не советую...
|
|
|
|
|
Jul 11 2006, 14:09
|
Местный
  
Группа: Свой
Сообщений: 437
Регистрация: 27-08-04
Пользователь №: 551

|
Цитата(makc @ Jul 11 2006, 14:53)  Мне интересно другое - есть-ли для ARM мониторы, позволяющие отлаживать код, исполнящийся не из RAM, а из Flash? И если есть, то как они работают? Можно предположить, что если монитор способен перешивать флеш, то с помощью записи сви в нужный адрес. Наверное так можно построить сколь угодно наверченный дебагер. Другой вопрос, удобно ли будет дебажить релизную прошивку? Имхо модуль монитора более пригоден для добавления в готовый девайс "трассировочного модуля". Когда в нужный момент прибор начинает "трассироваться" хостом по какому либо из доступных транспортов - уарт юсб езернет.
|
|
|
|
|
Jul 11 2006, 18:38
|

Дух погибшего транзистора
   
Группа: Свой
Сообщений: 877
Регистрация: 6-09-05
Из: Москва
Пользователь №: 8 288

|
Цитата(goodwin @ Jul 11 2006, 19:40)  Разве что действительно - для трассировки. Да. трассировка нужна + наверно еще какие-то фичи из отладки, которые могут понадобится в полевых условиях(осталось только определиться какие  ) + возможность выдавать dump RAM и отображать эхом посылаемые-принимаемые данные по другим интерфейсам(надо крепко подумать как это сделать) + загрузчик во флеш конечно же. Для полноценной отладки будет использоватся jtag. У кого нибудь есть еще идеи чего не хватает при использовании внутрисхемного отладчика? angel действительно что-то грузноват  , да и не нужен вобщем-то. PS Неужели никто не писал своего монитора?
--------------------
Yes, there are two paths you can go by But in the long run Theres still time to change the road youre on.
|
|
|
|
|
Jun 14 2007, 07:03
|
Частый гость
 
Группа: Участник
Сообщений: 103
Регистрация: 17-12-06
Из: село
Пользователь №: 23 615

|
Цитата(SpiritDance @ Jul 11 2006, 22:38)  Да. трассировка нужна + наверно еще какие-то фичи из отладки, которые могут понадобится в полевых условиях(осталось только определиться какие  ) + возможность выдавать dump RAM и отображать эхом посылаемые-принимаемые данные по другим интерфейсам(надо крепко подумать как это сделать) + загрузчик во флеш конечно же. Для полноценной отладки будет использоватся jtag. У кого нибудь есть еще идеи чего не хватает при использовании внутрисхемного отладчика? angel действительно что-то грузноват  , да и не нужен вобщем-то. PS Неужели никто не писал своего монитора? я собираюсь, сейчас как раз информацию искал. однако может я хочу сделать немного проще - хочу иметь только 2 функции которые дают доступ к переменным. список переменных собираюсь брать из *.lst файла программу на компьютере сделать тоже самому. ищу может что готовое есть
|
|
|
|
|
Jun 14 2007, 07:59
|

Местный
  
Группа: Свой
Сообщений: 426
Регистрация: 20-01-05
Из: Зеленоград
Пользователь №: 2 070

|
Поделюсь своим опытом отладки достаточно сложных устройств.
Обычно проблемы возникают не в низкоуровневой логике проекта, а в более высоком уровне. JTAG в этом случае малополезен - прохождение программы по шагам долгое утомительное занятие, дающее переизбыток информации. На мой взгляд куда более полезна грамотная отладочная печать, вставленная в критические точки программы. Причем - печатать или нет зависит от установленного уровня: if (PrintLevel > 3) printf("Что-то полезное\n");
Достоинства метода: 1. Требуемое оборудование - всего лишь кабель к ком-порту или USB. 2. Требуемое ПО - только терминал (можно HyperTerminal из виндов, хотя это ещё та гадость). 3. Полученную трассу можно сохранить для последующего анализа. 4. Через тот же кабель можно залить новую версию ПО. 5. Через тот же кабель можно шить дополнительную флеш-память в устройстве (если она есть). 6. Для получения трассы не требуется высокая квалификация оператора.
Недостатки: 1. Чтобы посмотреть то, что не предусмотрено в программе, нужно грузить новую версию ПО. 2. Дополнительные требования к памяти программ. 3. Замедление работы при снятии трассы.
В программе обычно я добавляю также небольшой монитор, воспринимающий текстовые команды, также вводимые с терминала. Идеологию взял у пультовых отладчиков младших моделей PDP-11/LSI-11. С клавиатуры вводится число и команда, например адрес, затем стрелка вправо или '/' - открыть ячейку памяти. Чтобы изменить значение ячейки, нужно ввести новое число и нажать Enter. Стрелки вверх/вниз или +/- - переход по ячейкам. На буквы назначены различные команды, например T - запуск тестов, P - вывод или изменение уровня печати, G - выход из отладчика и продолжение работы.
Короче, JTAG (еслм есть) используется только на начальном уровне освоения нового процессора, затем вся работа по отладке идет через COM-порт. Проверено в тои или ином виде на 51, AVR, MSP430, ARM.
|
|
|
|
|
Jun 22 2007, 18:09
|
Частый гость
 
Группа: Свой
Сообщений: 197
Регистрация: 26-08-04
Пользователь №: 548

|
Цитата(klop @ Jun 22 2007, 09:08)  А где найти исходники этого чуда (Angel)? Заранее спасибо.
Вопрос снят. Это только начало, я делал несколько подходов к снаряду, пробовал кряхтя его поднять, но потратив 4-5 раб дней плюнул и ушел. Уж очень много буков в армовских ассемблерных макросах...
|
|
|
|
|
  |
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0
|
|
|