Easyelectronics.ru

Электроника для всех
Текущее время: 29 апр 2017, 08:48

Часовой пояс: UTC + 5 часов



    • Изготовление печатных плат. Примерные цены: 10 штук 2-слоя 100*100mm 8.21$ или около ~470 рублей
    • Создание принципиальных схем и проектирование печатных плат
    • Симуляция работы на spice моделях
    • Просмотр GERBER файлов

Начать новую тему Ответить на тему  [ Сообщений: 16 ] 
Автор Сообщение
 Заголовок сообщения: Новую версию программы AVRDUDESHELL
СообщениеДобавлено: 25 янв 2015, 00:41 
Старожил

Зарегистрирован: 16 сен 2011, 20:11
Сообщения: 228
Откуда: Брест
Разработал новую версию программы AVRDUDESELL - программы для программирования микроконтроллеров семейства AVR (про "старую" можно почитать ветку http://forum.easyelectronics.ru/viewtopic.php?f=16&t=8498.

Новое в программе:
    Качественно новая версия программы.
    Переезд на новую площадку.
    Новый дизайн.
    Возможность сохранять и восстанавливать настройки фьюзов.
    Теперь все формы можно растягивать.
    Автоматическое открытие файлов проекта.
    Строка адресов для дампов FLASH и EEPROM.
    Строка адресов может расчитыватся автоматически.
    Возможность связи *.hex, *.eep, *.fus файлов с приложением.
    Загрузка файлов *.hex, *.eep, *.fus из командной строки.
    Альфа 0.98 версия дизассемблера.
    Устранена ошибка прописных и строчных символов при задании порта подключения программатора.
    Устранена ошибка сохранения первого байта в файлы *.hex, *.eep.
    Устранена ошибка размера дампа при автоматическом обновлении файлов проекта.

Подробнее на http://matrex-notes.blogspot.com/2015/01/avrdudeshell_21.html
Прямая ссылка для скачивания https://drive.google.com/file/d/0B-w91VnLIamzbFo1Zl92d25UNWM/view?usp=sharing

Разумная критика приветствуется.

Пара картинок:
Изображение

Изображение

Изображение


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Новую версию программы AVRDUDESHELL
СообщениеДобавлено: 25 янв 2015, 01:08 
Старожил

Зарегистрирован: 02 дек 2010, 13:52
Сообщения: 3805
Откуда: п. Борок, Ярославская область
А чего дизассемблер не показывает номера регистров и адреса ссылок? А только Rd, k и прочее-прочее. Да и если так, то надо еще одной колонкой (между колонкой адреса и колонкой мнемоник) написать HEX код команды.

И вопрос: на какой платформе создано? Интерес сугубо пользовательский: ибо предпочитаю Linux, а потому если написано на C/C++/Python/Java - хотелось бы компильнуть разок для пробы... :-)

_________________
Ёж птица гордая, пока не пнешь - не полетит.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Новую версию программы AVRDUDESHELL
СообщениеДобавлено: 25 янв 2015, 01:21 
Старожил

Зарегистрирован: 16 сен 2011, 20:11
Сообщения: 228
Откуда: Брест
VivalzarD писал(а):
А чего дизассемблер не показывает номера регистров и адреса ссылок? А
А потому что версия "Альфа 0.98"... А по существу - не реализовал, надеясь на подобный диалог т.к. есть некоторые пробелы в знаниях... Завтра на свежею голову сформулирую, может кто подскажет...

VivalzarD писал(а):
на какой платформе создано
Windows 7, Delphi XE5. Была идея переписать на Lazarus, для кросплатформенности, но не нашел подходящего компанента для вывода дампов... Так что пока только так...


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Новую версию программы AVRDUDESHELL
СообщениеДобавлено: 25 янв 2015, 09:23 
Старожил
Аватара пользователя

Зарегистрирован: 06 май 2010, 11:00
Сообщения: 2810
Откуда: Н. Новгород
Во, Matrex, молодец спасибо!
Пользуюсь AVRDUDESHELL уже несколько лет, хватает выше крыши.
Порадовал сам факт развития проекта.

..... по Alt+F4 вылезает: :)
Show


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Новую версию программы AVRDUDESHELL
СообщениеДобавлено: 25 янв 2015, 12:10 
Старожил

Зарегистрирован: 16 сен 2011, 20:11
Сообщения: 228
Откуда: Брест
Lyon за поддержку спасибо.

Цитата:
по Alt+F4 вылезает

В настройках программы "файлы и папки" необходимо "блокнот" заменить на что нибудь посерьезнее т.к. он не понимает кодировку этого файла.

Вот те вопросы которые хотел задать компетентным в ассемблере для AVR товарищам:

1. Какие “представления” дизассемблера могут быть полезны разработчикам. Например: адрес, код, мемоника,описание инструкции - одно представление; ссылки, мемоника - другое и т.п.

2. Какие функции в принципе желательны для дизассемблера.

3. Хочу сделать такой дизассемблер, что бы код можно было закопийпастить, воткнуть в AVRStudio и без доработок скомпилировать поэтому:
- какая общая структура asm фала в avrstudio
- какой инструкцией “положить” байт, слово, чар по определенному адресу
- какой инструкцией записать байт в eeprom
- как оформляется переход jmp внутри одной функции
- какой функцией положить мемонику по определенному адресу


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Новую версию программы AVRDUDESHELL
СообщениеДобавлено: 25 янв 2015, 16:22 
Старожил

Зарегистрирован: 02 дек 2010, 13:52
Сообщения: 3805
Откуда: п. Борок, Ярославская область
По дизасму хотелось бы в таком виде:
первая колонка - адрес от начала
вторая колонка - код команды в HEX
третья колонка - метка (если для данного адреса она есть)
четвертая колонка - мнемоника

Метки определять какими нибудь универсальными именами, например М1, М2, М3... М435 и так далее. Ну а дешифровку команд - по AVR Instruction Set - есть на сайте атмел и гуглом выдается на раз-два.

Вот дизассемблировать сам код - это простая задача. Гораздо сложнее определить тип данных, с которыми эта программа работает. Т.к. во флеши что строка текста, что массив байт/слов/двойных слов и т.д. выглядит одинаково. А обращение к этим данным идет чаще всего с косвенной адресацией и понять по какому адресу что лежит можно порой только в процессе трассировки программы. Как-то так...

По этому сделать так чтобы раз - и копипаста в студию: это очень сложная задача. Надо помимо дизассемблера писать автоматический трассировщик, чтобы можно было понять: в каких местах лежит программа, а в каких - данные. К тому же если код запутанный да еще и сподменой адресов возврата из подпрограмм в стеке - то тут уже никакой трассировщик не спасет: только полноценная эмуляция МК. Как работает трассировка - можно заценить в IDA (interactive disassembler).

_________________
Ёж птица гордая, пока не пнешь - не полетит.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Новую версию программы AVRDUDESHELL
СообщениеДобавлено: 25 янв 2015, 17:46 
Старожил

Зарегистрирован: 16 сен 2011, 20:11
Сообщения: 228
Откуда: Брест
VivalzarD писал(а):
первая колонка - адрес от начала
вторая колонка - код команды в HEX
третья колонка - метка (если для данного адреса она есть)
четвертая колонка - мнемоника

Походу надо тогда делать 4 кнопки под каждый из видов - какие натыкал - так и будет выводить...
VivalzarD писал(а):
Ну а дешифровку команд - по AVR Instruction Set

Можно и так. Если прикрутить ссылки на конкретную страницу по операции - будет супер.
VivalzarD писал(а):
Гораздо сложнее определить тип данных, с которыми эта программа работает.

Это да, я понимаю... Я думал над этим вопросом. Идея состоит в том, что бы собирать информацию по адресам переходов с операций типа типа jmp, call и, соответственно, с этих адресов будет идти точно код - значит будем дизассемблировать, если ссылка в память и загрузка в регистр - значит данные - просто байтовый поток. Это, конечно, не идиальный вариант, но уже кое что - с этого можно начать. Разумеется это будет отключаемая опция.
matrex писал(а):
Как работает трассировка - можно заценить в IDA (interactive disassembler).

Видел иду. Одно время даже думал прикрутить ее сюда, но честно говоря, не разобрался как она работает, да и условно-бесплатная она... Самому подобный тассировщик не потянуть, поэтому буду ограничиваться как можно более качественным дизассемблированием...
matrex писал(а):
и копипаста в студию

На самом деле не все так страшно, на мой взгляд, как кажется. Самый простой вариант - записать word(byte)-поток с определенного адреса. Чуть посложнее - по адресам записать дизассемблированные мемоники. И самый сложный - полное дизассемблирование... Из этих соображений и все вышеперечисленные вопросы.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Новую версию программы AVRDUDESHELL
СообщениеДобавлено: 25 янв 2015, 21:54 
Старожил
Аватара пользователя

Зарегистрирован: 08 апр 2010, 20:45
Сообщения: 720
Присоединяюсь - работа качественная...
Жду релиз :)


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Новую версию программы AVRDUDESHELL
СообщениеДобавлено: 25 янв 2015, 23:03 
Старожил

Зарегистрирован: 16 сен 2011, 20:11
Сообщения: 228
Откуда: Брест
WildCat за поддержку спасибо.
Колеги, тут прошла информация что студия может диассемблировать hex это действительно так?


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Новую версию программы AVRDUDESHELL
СообщениеДобавлено: 25 янв 2015, 23:24 
Старожил

Зарегистрирован: 16 сен 2011, 20:11
Сообщения: 228
Откуда: Брест
Да, действительно может... Дык тогда и дизассемблер в программе и не нужен - блин... Читайте матчасть, господа....


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Новую версию программы AVRDUDESHELL
СообщениеДобавлено: 26 янв 2015, 11:41 
Старожил
Аватара пользователя

Зарегистрирован: 17 апр 2010, 08:38
Сообщения: 4531
Откуда: Усинск, республика Коми
А какой выбрать программатор из списка для прошивки через FTDI ???

_________________
хаос это непознанный порядок


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Новую версию программы AVRDUDESHELL
СообщениеДобавлено: 26 янв 2015, 12:05 
Старожил

Зарегистрирован: 16 сен 2011, 20:11
Сообщения: 228
Откуда: Брест
Врать не буду - не знаю (нет у меня таких девайсов), но кое что можно посмотреть на https://learn.adafruit.com/ftdi-friend/ ... bootloader. Или погуглить "ftdi avrdude".

Для информации - эта программа - надстройка над avrdude. Если вы разберетесь как программировать через FTDI в avrdude то это можно будет повторить и в программе, задав соответствующие параметры, или сказав мне решение (строку запуска), которое я реализую.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Новую версию программы AVRDUDESHELL
СообщениеДобавлено: 02 авг 2015, 18:59 
Свой человек

Зарегистрирован: 28 янв 2010, 09:20
Сообщения: 63
Программа перехватывает нажатия клавиш, когда находится в фоне: хотел в TotalCommandere сделать новую вкладку по Ctrl+T, она меня спросила про фьюзы, находясь при этом в фоне. Для программирования через FTDI, заменил парочку avrdude.conf и avrdude.exe. Но программа при запуске программирования выдает окошко с командной строкой и всё. Программа вообще рабочая? Что должно произойти?


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Новую версию программы AVRDUDESHELL
СообщениеДобавлено: 04 сен 2016, 16:23 
Здравствуйте!

Зарегистрирован: 04 сен 2016, 16:19
Сообщения: 1
Дайте, пожалуйста, ссылку на последнюю версию программы. По ссылке http://matrex-notes.blogspot.com/2015/0 ... ll_21.html ничего нет :(


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Новую версию программы AVRDUDESHELL
СообщениеДобавлено: 04 сен 2016, 16:31 
Старожил
Аватара пользователя

Зарегистрирован: 04 сен 2010, 23:09
Сообщения: 2924
Откуда: Армения
Я нашел здесь
Цитата:
Обновленную версию можно скачать с официальной страницы http://matrex-notes.blogspot.com.by/201 ... tmega.html или по прямой ссылке https://drive.google.com/open?id=0B-w91 ... 29UR1dHVTg


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Новую версию программы AVRDUDESHELL
СообщениеДобавлено: 02 янв 2017, 00:33 
Здравствуйте!

Зарегистрирован: 03 авг 2015, 22:43
Сообщения: 1
Откуда: Обнинск
Не работает avrdudeshell в ubuntu 16.04.
Запускается нормально, но когда доходит до запуска avrdude, выдает ошибку.
Всё сделано по инструкции из: http://matrex-notes.blogspot.ru/2015/09/avrdudeshell-linux-wine.html
Картинки происходящего:
Изображение
ссылка на изображение, размер: 292 кбайт, 1024 x 420 точек
Изображение
ссылка на изображение, размер: 295 кбайт, 1024 x 477 точек
Изображение
ссылка на изображение, размер: 187 кбайт, 1024 x 479 точек
Сим-линки созданы и в терминале нормально работают:
Изображение
ссылка на изображение, размер: 342 кбайт, 1024 x 417 точек


Вернуться к началу
 Профиль  
 
Показать сообщения за:  Поле сортировки  
Начать новую тему Ответить на тему  [ Сообщений: 16 ] 

Часовой пояс: UTC + 5 часов


Кто сейчас на конференции

Сейчас этот форум просматривают: Google [Bot]


Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете добавлять вложения

Найти:
Перейти:  

Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group
Русская поддержка phpBB