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

 
 
 
Reply to this topicStart new topic
> SAM debug monitor, нужен образец
SpiritDance
сообщение Jul 11 2006, 11:25
Сообщение #1


Дух погибшего транзистора
****

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



Кто-нибудь пробовал написать?
Есть мысль заделать себе мониторчик, совмещенный с загрузчиком, потому как jtag будет доступен не всегда.
Вот думаю насчет того что этот монитор должен уметь делать + хотелось бы посмотреть на удачные примеры мониторов пусть даже не для СЁМы.


--------------------
Yes, there are two paths you can go by But in the long run Theres still time to change the road youre on.
Go to the top of the page
 
+Quote Post
goodwin
сообщение Jul 11 2006, 11:43
Сообщение #2


Местный
***

Группа: Свой
Сообщений: 481
Регистрация: 1-08-05
Пользователь №: 7 267



Монитор нужен стандартизированный, чтобы поддерживался отладчиками.
Я тут как раз изучаю этот вопрос применительно к MIPS. А для ARM вроде стандартом является "Angel". Он и в IAR есть в установках отладчика...
Go to the top of the page
 
+Quote Post
makc
сообщение Jul 11 2006, 11:53
Сообщение #3


Гуру
******

Группа: Админы
Сообщений: 3 621
Регистрация: 18-10-04
Из: Москва
Пользователь №: 904



Мне интересно другое - есть-ли для ARM мониторы, позволяющие отлаживать код, исполнящийся не из RAM, а из Flash? И если есть, то как они работают?


--------------------
BR, Makc
В недуге рождены, вскормлены тленом, подлежим распаду. (с) У.Фолкнер.
Go to the top of the page
 
+Quote Post
SpiritDance
сообщение Jul 11 2006, 13:23
Сообщение #4


Дух погибшего транзистора
****

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



И где достать этого ангела? Интересует скорее документация чем сама прога.
Мне тоже интересно поиметь монитор работающий именно из флеш. И не для армов вообще и именно для SAM через DBGU. Это невозможно?


--------------------
Yes, there are two paths you can go by But in the long run Theres still time to change the road youre on.
Go to the top of the page
 
+Quote Post
aaarrr
сообщение Jul 11 2006, 14:04
Сообщение #5


Гуру
******

Группа: Свой
Сообщений: 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) *
И где достать этого ангела? Интересует скорее документация чем сама прога.


Документация есть здесь.
Но связываться не советую...
Go to the top of the page
 
+Quote Post
ig_z
сообщение Jul 11 2006, 14:09
Сообщение #6


Местный
***

Группа: Свой
Сообщений: 437
Регистрация: 27-08-04
Пользователь №: 551



Цитата(makc @ Jul 11 2006, 14:53) *
Мне интересно другое - есть-ли для ARM мониторы, позволяющие отлаживать код, исполнящийся не из RAM, а из Flash? И если есть, то как они работают?


Можно предположить, что если монитор способен перешивать флеш, то с помощью записи сви в нужный адрес. Наверное так можно построить сколь угодно наверченный дебагер.
Другой вопрос, удобно ли будет дебажить релизную прошивку?
Имхо модуль монитора более пригоден для добавления в готовый девайс "трассировочного модуля". Когда в нужный момент прибор начинает "трассироваться" хостом по какому либо из доступных транспортов - уарт юсб езернет.
Go to the top of the page
 
+Quote Post
goodwin
сообщение Jul 11 2006, 15:40
Сообщение #7


Местный
***

Группа: Свой
Сообщений: 481
Регистрация: 1-08-05
Пользователь №: 7 267



Цитата(aaarrr @ Jul 11 2006, 17:04) *
Но связываться не советую...


А и верно. Это, имхо, абсолютно ни к чему, ибо для ARM сейчас есть быстрый и недорогой jtag отладчик. И уж тем более для отладки кода из Flash. Разве что действительно - для трассировки.
Go to the top of the page
 
+Quote Post
SpiritDance
сообщение Jul 11 2006, 18:38
Сообщение #8


Дух погибшего транзистора
****

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



Цитата(goodwin @ Jul 11 2006, 19:40) *
Разве что действительно - для трассировки.

Да. трассировка нужна + наверно еще какие-то фичи из отладки, которые могут понадобится в полевых условиях(осталось только определиться какие smile.gif ) + возможность выдавать dump RAM и отображать эхом посылаемые-принимаемые данные по другим интерфейсам(надо крепко подумать как это сделать) + загрузчик во флеш конечно же. Для полноценной отладки будет использоватся jtag. У кого нибудь есть еще идеи чего не хватает при использовании внутрисхемного отладчика?
angel действительно что-то грузноват smile.gif , да и не нужен вобщем-то.

PS
Неужели никто не писал своего монитора?


--------------------
Yes, there are two paths you can go by But in the long run Theres still time to change the road youre on.
Go to the top of the page
 
+Quote Post
DimaM
сообщение Jun 14 2007, 07:03
Сообщение #9


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

Группа: Участник
Сообщений: 103
Регистрация: 17-12-06
Из: село
Пользователь №: 23 615



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

PS
Неужели никто не писал своего монитора?

я собираюсь, сейчас как раз информацию искал. однако может я хочу сделать немного проще -
хочу иметь только 2 функции которые дают доступ к переменным. список переменных собираюсь брать из *.lst файла
программу на компьютере сделать тоже самому. ищу может что готовое есть
Go to the top of the page
 
+Quote Post
vmp
сообщение Jun 14 2007, 07:59
Сообщение #10


Местный
***

Группа: Свой
Сообщений: 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.
Go to the top of the page
 
+Quote Post
klop
сообщение Jun 22 2007, 06:08
Сообщение #11


Местный
***

Группа: Свой
Сообщений: 433
Регистрация: 28-02-06
Пользователь №: 14 788



А где найти исходники этого чуда (Angel)?
Заранее спасибо.

Вопрос снят.
Go to the top of the page
 
+Quote Post
d__
сообщение Jun 22 2007, 18:09
Сообщение #12


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

Группа: Свой
Сообщений: 197
Регистрация: 26-08-04
Пользователь №: 548



Цитата(klop @ Jun 22 2007, 09:08) *
А где найти исходники этого чуда (Angel)?
Заранее спасибо.

Вопрос снят.

Это только начало, я делал несколько подходов к снаряду, пробовал кряхтя его поднять, но потратив 4-5 раб дней плюнул и ушел. Уж очень много буков в армовских ассемблерных макросах...
Go to the top of the page
 
+Quote Post

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

 


RSS Текстовая версия Сейчас: 21st July 2025 - 23:48
Рейтинг@Mail.ru


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