1 / 1 / 0
Регистрация: 28.01.2010
Сообщений: 537
1

Proteus. Генерация файла SDI для пошаговой отладки.

02.04.2013, 02:37. Показов 26911. Ответов 34
Метки нет (Все метки)

При отладке проектов на базе 51 серии под Proteus-ом всем хочется чтобы прога выполнялась пошагового, да и еще чтобы исходник был виден.

Пожалуйста. В Proteus-е есть файлик Asemddx.ixi который извлекает отладочную информацию из *.LST файлов созданых компилятором ASEM-51 Version 1.2. Создает файл *.SDI.

Но вот беда. При использовании макросов и инклудов эта тузла генерит "БРЕД", причем полнейший.

Если весь код держать в одном файле и не юзать макросы - "всё пучком". Это конечно возможно.

А если проект не на пару десятков байт, это уже "ГЕМОР".

Может кто спалкивался с такой проблемой?

А кто не хочет с ней встречаться, потесте мою тузлу Ddxasem. Выполняет почти аналогичные действия как и тузла из Proteus-а.
Тестировал с ASEM-51 Version 1.3. Правда патченой.

[7.5 Кб]
__________________
Помощь в написании контрольных, курсовых и дипломных работ здесь
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
02.04.2013, 02:37
Ответы с готовыми решениями:

Какие команды можно использовать для пошаговой отладки программы
Подскажите, пожалуйста, какие команды можно использовать для отладки программы, к примеру, для...

Окошко пошаговой отладки
Окошко, в котором при пошаговой отладке выводятся значения переменных и т.п. куда-то исчезло, а вот...

IAR проблемы пошаговой отладки
Версия 6.70.2 Оптимизация для всего проекта = none// не заходит в некоторые процедуры в...

После пошаговой отладки F11 результат один, а без другой. В чем дело?
Столкнулся со странной проблемой: в учебных целях создал массив строк, который заполняется...

34
0 / 0 / 0
Регистрация: 24.12.2011
Сообщений: 2,752
02.04.2013, 14:10 2
Цитата Сообщение от S_Otyx
...В Proteus-е есть файлик Asemddx.ixi который извлекает отладочную информацию из *.LST файлов созданых компилятором ASEM-51 Version 1.2. Создает файл *.SDI...
Никогда не пользовался SDI, возможно напрасно. Где можно почитать о возможностях отладки с его помощью? Что он дает?
0
1 / 1 / 0
Регистрация: 28.01.2010
Сообщений: 537
02.04.2013, 23:47 3
http://youtu.be/QPbnTYwvLCk
0
0 / 0 / 0
Регистрация: 24.12.2011
Сообщений: 2,752
03.04.2013, 10:15 4
Чего то недопонял. К модели МК прицепляем HEX, в меню указываем исходник ASM, включаем отладку. И также ходим по исходнику без SDI.
0
1 / 1 / 0
Регистрация: 07.02.2106
Сообщений: 4,013
03.04.2013, 15:00 5
Не знаю как с 51ми . Со всем остальным отлично юзается *.cof , *.elf.
Ваша компиль это не генерит ?
0
0 / 0 / 0
Регистрация: 24.12.2011
Сообщений: 2,752
03.04.2013, 16:32 6
Цитата Сообщение от dosykus_2
...Ваша компиль это не генерит ?
Ну если подсунуть Сишный исходник, и указать что именно генерить, то сгенерит. Зачем COF, ELF поверх ASM? ASM и BIN практически тождественны в коде, а HEX это расширенная текстовая ASCII запись BIN с контрольными суммами.
0
1 / 1 / 0
Регистрация: 07.02.2106
Сообщений: 4,013
03.04.2013, 16:42 7
Цитата Сообщение от omokost
Цитата Сообщение от dosykus_2
...Ваша компиль это не генерит ?
Ну если подсунуть Сишный исходник, и указать что именно генерить, то сгенерит. Зачем COF, ELF поверх ASM?

Кто то вам сказал что cof/coff это прерогатива Сишных компиляторов ?
0
0 / 0 / 0
Регистрация: 24.12.2011
Сообщений: 2,752
03.04.2013, 16:54 8
Цитата Сообщение от dosykus_2
...Кто то вам сказал что cof/coff это прерогатива Сишных компиляторов ?
Сам так думаю, зачем файл с отладочной информацией к исходнику на ASM? Прямая кореляция ASM <-> HEX, что еще можно запихать в COF? Все что нужно для ASM есть в LST, MAP.
Вернусь к топику, что это за файл SDI? Что он содержит, где может помочь? Литература есть по этому вопросу?
0
1 / 1 / 0
Регистрация: 28.01.2010
Сообщений: 537
03.04.2013, 22:36 9
Как я понял, то формат простой.

Запись содержит 4 поля:
1 - адрес ячейки памяти
2 - машинный код операции
3 - метка
4 - текст исходной программы
Све поля разделены запятыми.

Например:
1 2 3 4
0003,00,MainLoop,MainLoop: nop

В тех строчках где есть адрес можно ставить бряк.
0
0 / 0 / 0
Регистрация: 24.12.2011
Сообщений: 2,752
15.04.2013, 19:30 10
Наконец понял для чего файл SDI. Этот файл создает сам Proteus для пошаговой отладки. От типа МК его создание не зависит, оно зависит от наличия исходников.
1. Исходников нет, в Proteus загружен HEX. Пошагово походить по программе можно только через окно диззасемблера.
2. Исходники есть, подключены через меню Proteus. Если в этом же меню нажать Build, то вместе с HEX создается и SDI. И если теперь войти в Debug, пошаговая отладка доступна автоматом по исходникам.
Все это делается автоматом, о наличии файла Asemddx.ixi раньше не знал.
0
1 / 1 / 0
Регистрация: 07.02.2106
Сообщений: 4,013
15.04.2013, 20:22 11
omokost, S_Otyx, меня конечно прикалывает ваша упертость , но повторюсь - не судьба *coff юзать ?
0
0 / 0 / 0
Регистрация: 24.12.2011
Сообщений: 2,752
15.04.2013, 21:06 12
Цитата Сообщение от dosykus_2
... меня конечно прикалывает ваша упертость , но повторюсь - не судьба *coff юзать ?
Ну так научите "упертых", как научить ассемблер генерировать *coff файл. Не имеет значения а51 или avrasm2. Что им нужно указать, чтобы они смогли сгенерировать совершенно им ненужный файл?
0
1 / 1 / 0
Регистрация: 07.02.2106
Сообщений: 4,013
15.04.2013, 21:29 13
Цитата Сообщение от omokost
Не имеет значения а51 или avrasm2. Что им нужно указать, чтобы они смогли сгенерировать совершенно им ненужный файл?
Какой то объектный файл генерит же ваше убожество ? А ненужный он только вам...
coff ли это, elf, ubrof ищите . Toodir Proteusa многие грузит .
Winasm например от микрочипа генерит coff .
0
0 / 0 / 0
Регистрация: 18.03.2010
Сообщений: 2,233
15.04.2013, 21:31 14
не обязательно каждый ассемблер умеет генерить объектники.
0
1 / 1 / 0
Регистрация: 07.02.2106
Сообщений: 4,013
15.04.2013, 21:37 15
Цитата Сообщение от Ymk
не обязательно каждый ассемблер умеет генерить объектники.
Убожество , да согласен...
0
0 / 0 / 0
Регистрация: 18.03.2010
Сообщений: 2,233
15.04.2013, 21:43 16
да ладно убожество, это щас все умные стали да привередливые. а раньше часто асмы не генерили ничего кроме бинарника и, изредка, lst файла с адресами меток. юзали и ничего, живы-здоровы.
0
1 / 1 / 0
Регистрация: 07.02.2106
Сообщений: 4,013
15.04.2013, 21:47 17
Цитата Сообщение от Ymk
а раньше часто асмы не генерили ничего кроме бинарника и, изредка, .
Вот и кстати , именно для таких компилей и есть та протеусовская тулза .
Именно для старья . Собственно надо было читать перед юзаньем ...
0
0 / 0 / 0
Регистрация: 24.12.2011
Сообщений: 2,752
15.04.2013, 22:18 18
Цитата Сообщение от dosykus_2
...Какой то объектный файл генерит же ваше убожество ? ...
Мое стандартное "убожество" генерит стандартный файл obj. Файл sdi генерируется дополнительно к нему Proteus для пошаговой отладки.
0
1 / 1 / 0
Регистрация: 07.02.2106
Сообщений: 4,013
15.04.2013, 22:53 19
Цитата Сообщение от omokost
Мое стандартное "убожество" генерит стандартный файл obj.
Какой компилятор ?
0
0 / 0 / 0
Регистрация: 24.12.2011
Сообщений: 2,752
16.04.2013, 07:27 20
Цитата Сообщение от dosykus_2
...Какой компилятор ?
В этом топике речь идет о ассемблере, а говорил об аsm51 или avrasm2.
0
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
16.04.2013, 07:27

Proteus, глюк отладки по коду
Дино: Некая элементарная программа на ассемблере, изготовленная в AVR Studyo. Эленентарная же...

Программа Windows для отладки конфигурационного файла Grub на загрузочной флешке
Отлаживаю конфигурационный файл Grub на загрузочной флешке. Все время приходится перезагружать...

Генерация случайного имени для файла
Подскажите, как генерировать рандомное имя для файла? Текстового, например. Искал в интернете,...

Balun для HD-SDI
Всем привет! Не уверен, что создал тему в нужном разделе, у меня вопрос следующий - можно ли...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
20
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2021, vBulletin Solutions, Inc.