Страница 1 из 4 1234 ПоследняяПоследняя
Показано с 1 по 15 из 60
  1. #1
    Экстра-класс Аватар для DL7PGA
    Регистрация
    09.08.2003
    Адрес
    Дюссельдорф, Германия
    Возраст
    67
    Сообщений
    1,060
    Поблагодарили
    52
    Поблагодарил
    37

    AVR Assembler TAVRASM

    Предлагаю попробовать для большинства совершенно неизвестную программу - AVR-ассемблер TAVRASM 1.22, в архиве исходники и 2 версии программы - TAVRASM для Linux и TAVRASM.EXE для Windows / DOS (работает под WINDOWS XP в ДОСовском окне), программа разрабатывалась когда-то для замены ДОСовского ассемблера Atmel. Поскольку чистого DOS в настоящий момент на компе нет, и DOSEMU тоже нет, то и проверить под ДОС не было возможности. Компиляция проекта под Windows/DOS производилась с помощью DJGPP (Windows/DOS GCC). Пришлось подкорректировать MAKEFILE - вместо lstd++ надо было писать lstdxx, так как и g++ под DJGPP называется gxx). Компиляция под UBUNTU Linux прошла без особых происшествий, кроме того, что понадобилась установка программ bison, flex

    Для тех, кто пользуется AVR Studio (Windows), AVR-GCC (Linux, Windows) или AVRA (Linux), применение других программ, тем более неизвестных, может быть под вопросом.

    Запуск ассемблера TAVRASM под Линукс, так как он в системе не установлен:
    ./tavrasm -h wash-projekt.asm -o wash-projekt.hex -r wash-projekt.eep -e wash-projekt.lst
    Сам ассемблер просто копируется в папку с вашим проектом).
    Какие девайсы он знает, можно узнать так :
    ./tavrasm -d

    Запуск ДОСовской версии:
    tavrasm -h wash-projekt.asm -o wash-projekt.hex -r wash-projekt.eep -e wash-projekt.lst
    При запуске программы без аргумента выдаётся справка помощи. В файле devices.txt - список поддерхиваемых контроллеров. Этот список конечно, покороче, чем в AVR Studio, AVR-GCC, AVRA, но при наличии исходника, знаний С/С++, AVR контроллеров и, самое главное, желания, можно расширить список поддерживаемых контроллеров.

    Может быть, что при наличии AVR Studio или AVR-GCC применение TAVRASM и не актуально, но эту программу всегда можно взять с собой и использовать на самом слабосильном компе (не забыв прихватить соответствующие вашему AVR-девайсу include файлы, они не приложены). У кого есть Apple Mac (Intel) - может попробовать откомпилировать программу под эту платформу (для AppleMac PPC программа портирована в 2009-м и её можно найти в сети)
    Вложения Вложения


  2. #2
    Экстра-класс Аватар для DL7PGA
    Регистрация
    09.08.2003
    Адрес
    Дюссельдорф, Германия
    Возраст
    67
    Сообщений
    1,060
    Поблагодарили
    52
    Поблагодарил
    37
    В ZIP архиве имеется "лишний" файл - TAVRASM.EX_ - это тот же TAVRASM.EXE, но скомпилированный несколькими днями раньше. Размер архива без этого файла должен быть 270 кб.

  3. #3
    Экстра-класс Аватар для DL7PGA
    Регистрация
    09.08.2003
    Адрес
    Дюссельдорф, Германия
    Возраст
    67
    Сообщений
    1,060
    Поблагодарили
    52
    Поблагодарил
    37
    Загрузил новый ZIP файл, в котором в папке src - исходники программы и makefile для компиляции программы с использованием gcc, "tavrasm-lin" - версия программы для Линукса, "tavrasm-ppc" версия программы для Mac OS X PPC (в этой компиляции отсутствует поддержка для ATТINY12, скачать можно и здесь http://avr.bruger.mine.nu/ ), "tavrasm.exe" - версия программы для Windows / DOS
    Вложения Вложения

  4. #4
    Экстра-класс Аватар для DL7PGA
    Регистрация
    09.08.2003
    Адрес
    Дюссельдорф, Германия
    Возраст
    67
    Сообщений
    1,060
    Поблагодарили
    52
    Поблагодарил
    37

    Вопрос

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

  5. #5
    Экстра-класс Аватар для DL7PGA
    Регистрация
    09.08.2003
    Адрес
    Дюссельдорф, Германия
    Возраст
    67
    Сообщений
    1,060
    Поблагодарили
    52
    Поблагодарил
    37

    AVR Assembler AVRA

    Продолжу сольное выступление . Для AVR контроллеров имеется ещё один ассемблер - AVRA. Его можно установить под Линуксом apt-get install avra - но есть одно маленькое но! - скачивается и устанавливается не актуальная версия 1.3.0, а предыдущая 1.2.3. Скачал с сайта http://avra.sourceforge.net программный пакет исходников для компиляции программы. Получилось, не сразу, но получилось. Надо было всего лишь скопировать нужный Makefile в папку src. Перенеся файлы в папку DJGPP под Windows и запустив make - получил сразу два исполняемых файла - avra и avra.exe одинаковго размера (?). Запустил avra.exe без аргумента, почитал справку. Прога работает в ДОСовском окне Windows XP. "Знает" гораздо больше контроллеров, чем TAVRASM, все include файлы находятся в архиве. Если кто знает эту программу, но только под Линуксом, можете опробовать и ДОСовскую версию. В архиве avra-1.3.0.zip - исходники и дока программы, в архиве avra-exe.zip - откомпилированные программы.
    Вложения Вложения

  6. #6
    Экстра-класс Аватар для DL7PGA
    Регистрация
    09.08.2003
    Адрес
    Дюссельдорф, Германия
    Возраст
    67
    Сообщений
    1,060
    Поблагодарили
    52
    Поблагодарил
    37
    Небольшой примерчик или вопрос на засыпку... В архиве исходники электронного ключа на ATMEGA8 - разработанного Буркхардом Йоном (Burkhard John, DK5JG, SK). Компиляция ассемблером TAVRASM - no errors, no warnings. Единственный мне известный экземпляр - авторский - работает, значит софт рабочий (в архиве есть HEX, EEP, LST файлы автора, компиляция апрель 2004, m8def.inc модифицирован). Попытался откомпилировать этот же проект ассемблером AVRA 1.2.3 - несколько ошибок. Точка. С AVR Studio - ошибки, но другие.
    Вложения Вложения

  7. #7
    Экстра-класс Аватар для DL7PGA
    Регистрация
    09.08.2003
    Адрес
    Дюссельдорф, Германия
    Возраст
    67
    Сообщений
    1,060
    Поблагодарили
    52
    Поблагодарил
    37
    AVRA 1.3.0 поддерживает 48 типов контроллеров, предыдущая версия 1.2.3 - только 39.
    Вложения Вложения

  8. #8
    Мастер
    Регистрация
    26.02.2006
    Адрес
    Рыбинск, Ярославская обл.
    Возраст
    38
    Сообщений
    784
    Поблагодарили
    156
    Поблагодарил
    478
    Пробовал компилировать, тоже масса ошибок. Но это лигично. Если си стандартизирован, то в ассемблерах это сложнее. К тому же может быть разница по всяким управляющим словам или какой-нибудь условной компиляции. Поэтому полностью перенести с ходу не всегда получается.
    Даже видел одну разработку простую в виде звонка в дверь. Так автор сам адаптировал исходные коды под разные компиляторы. Это мне говорит о том, что не все так просто.

    А так вообще спасибо, конечно. Приятно пользоваться открытыми продуктами, к тому же переносимыми. Если разрабатываешь что-то, то можно сразу к исходным текстам и этот компилятор приложить, чтобы вносить коррективы по месту. Уначе требуется ставить специальные приложения... Если пишу на ассемблере, то обычно пользуюсь avrasm который идет в комплекте к Proteus

  9. #9
    Экстра-класс Аватар для RN9RQ
    Регистрация
    25.08.2006
    Адрес
    Шадринск, Курганская обл., Россия
    Возраст
    33
    Сообщений
    1,867
    Поблагодарили
    174
    Поблагодарил
    278
    А может заняться FORT?
    Для человека с молотком любая проблема кажется гвоздем.
    Слава богу, теперь уже БЫВШИЙ член СРР, 73!

  10. #10
    Экстра-класс Аватар для DL7PGA
    Регистрация
    09.08.2003
    Адрес
    Дюссельдорф, Германия
    Возраст
    67
    Сообщений
    1,060
    Поблагодарили
    52
    Поблагодарил
    37
    Цитата Сообщение от UA3MQJ Посмотреть сообщение
    Если пишу на ассемблере, то обычно пользуюсь avrasm который идет в комплекте к Proteus
    Я эту программу не знаю. Небесплатная наверное. А avrasm можно запустить с командной строки независимо от основного пакета?

    Я вот ищу программу PROTEL - но старую, примерно 1987-90, для ДОС. Есть кое-какие схемы и печатки, выполненные в PROTEL'e (тоже наследство от DK5JG, SK). Упомянутый электронный ключ на ATMEGA-8 делался уже позже, схема и печатка в формате EAGLE имеются, тут проблем нет. Но вот со старыми вещами - никак.

  11. #11
    Экстра-класс Аватар для DL7PGA
    Регистрация
    09.08.2003
    Адрес
    Дюссельдорф, Германия
    Возраст
    67
    Сообщений
    1,060
    Поблагодарили
    52
    Поблагодарил
    37
    Подолью-ка я маслица в огонь На страничке -
    http://www.jan-grosser.de/basteleien...teien-bei-avra
    человек по имени Ян Гроссер описывает проблемы компиляции программ ассемблером AVRA - и спрашивает (на чистом немецком языке) - почему это программа с "неправильными" include файлами на-гора выдаётся.Оказалось, что AVRA не только гораздо строже, чем ассемблер от Atmel, но и не переносит строчки с директивой #pragma в include файлах. Чтобы заполучить "правильные", НЕpragmaТИЧЕСКИЕ файлы разом (от атмелевского ассемблера 1), автор статьи просто предлагает ссылку на скачивание этих файлов на той же страничке|, ниже статьи, 175 кб

    http://www.jan-grosser.de/attachment...vrass-incs.zip

    Цитата Сообщение от UA3MQJ Посмотреть сообщение
    Пробовал компилировать, тоже масса ошибок.
    Возможно тут и была собака зарыта. Ассемблер TAVRASM, похоже, игнорирует директиву #pragma, поэтому ошибок и нет. В приведённом выше примере на ATMEGA8 нужно было только "выключить" ;.equ OR=3 в m8def.inc, и программа откомпилировалась без ошибок (см. файл LST), Я конечно сильно упростил.

  12. #12
    Экстра-класс Аватар для DL7PGA
    Регистрация
    09.08.2003
    Адрес
    Дюссельдорф, Германия
    Возраст
    67
    Сообщений
    1,060
    Поблагодарили
    52
    Поблагодарил
    37
    Испытания avra.exe версии 1.3.0 на консоли от Windows XP:
    1. Запустил CMD, так как при запуске DOS (COMMAND) нельзя перейти в какую-либо папку с названием типа "Свои Документы" или как она там называется по-русски, по-немецки "Eigene Dateien" - DOS не знает пробелов в названиях папок или файлов
    2. Поместил файл avra.exe в папку с AVR проектом
    3. Запустил компиляцию: avra -l projekt.lst projekt.asm , опция -l нужна для получения листинга, так как все остальные файлы - .COF, .HEX, .OBJ создаются автоматически, кроме того AVRA пишет вместо обычного .ЕЕР файла файл с расширением .ЕЕР.НЕХ
    4. Попробовал откомпилировать под другой контроллер - вместо исходного AT90S8515 взял сначала ATMEGA8515 (несколько изменилось сообщение об адресации), а потом ATMEGA162, соответственно изменив данные о размере флэш и рам памяти. Всё прошло на ОК!, не считая 4 предупреждений о передекларации регистров. Почему были выбраны такие контроллеры? Да из-за одинаковой распиновки

    Под projektом подразумевался "Macrobug" от DK5JG (SK) - электронный ключ со встроенным тренером азбуки морзе.
    http://home.arcor.de/burkhard-john/m.../microbug.html
    Компиляция с предыдущей версией AVRA 1.2.3 не удалась, программа жаловалась, что полученный код не помещается в память процессора AT90S8515 (?)

    Теперь осталось опробовать программу под "чистым" DOS (ну, под Windows 98, в крайнем случае) или FreeDOS (наследница Novell DOS 7, DR-DOS 6)

    Добавлено через 42 минуты
    И ещё один AVR ассемблер
    http://www.avr-asm-tutorial.net/gavrasm/index_en.html
    Но мне с ним как-то не повезло. Может быть с новой версией получится... Совместимость с ассемблером фирмы Атмел декларируется, так же, как и в случае с программой AVRA, но далеко всегда выполняется обещанное

  13. #13
    Экстра-класс Аватар для DL7PGA
    Регистрация
    09.08.2003
    Адрес
    Дюссельдорф, Германия
    Возраст
    67
    Сообщений
    1,060
    Поблагодарили
    52
    Поблагодарил
    37
    GAVRASM. В приложении список поддерживаемых контроллеров. Написал автору, так как этот ассемблер не компилирует ни один из проектов. Всегда одна и та же ошибка, причём всегда на одном и том же месте:

    gavrasm Gerd's AVR assembler version 2.9 (C)2011 by DG4FAC
    ----------------------------------------------------------
    Source file: macrobug.asm
    Hex file: macrobug.hex
    Eeprom file: macrobug.eep
    Compiled: 03.07.2011, 20:21:30
    Pass: 1
    Error ==> .device AT90S8515
    [macrobug.asm,13] 095: Definition of symbols failed!
    Compilation aborted, 1 errors!

    Эта программа не нуждается в def.inc файлах, всё встроено. Если вообще убрать .device , то компиляция проходит без ошибок
    Вложения Вложения

  14. #14
    Экстра-класс Аватар для DL7PGA
    Регистрация
    09.08.2003
    Адрес
    Дюссельдорф, Германия
    Возраст
    67
    Сообщений
    1,060
    Поблагодарили
    52
    Поблагодарил
    37
    Продолжу о ассемблере GAVRASM - ответ автора разработки Герхарда Шмидта ( Gerd, DG4FAC):

    "Поведение объясняется такой фичей gavrasm'a, которую другие ассемблеры вовсе не имеют: gavrasm знает все символы всех AVR-процессоров и обрабатывает их уже при спецификации типа - .device. Авторы софта по-старинке определяют символы ещё раз "вручную". Поскольку они уже определены директивой .device, то это даёт сообщение об ошибке,

    Если Вы всё-таки хотите откомпилировать эту программу, то выключите эту фичу gavrasm'a, например так:

    gavrasm -xseb macrobug.asm

    и всё откомпилируется нормально, так как все встроенные в gavrasm def.inc не будут использованы"

    Кроме того имеются другие фичи. В приложенном файле, oт автора, имеются все инструкции контроллеров AVR, но только gavrasm может откомпилировать этот файл (опробовано с tavrasm, avra и ассемблером от AVR Studio), если конечно поставить коммент перед break.

    Попробовал ввести в файл .device ATMEGA8515, после чего программа выдаёт 7 ошибок - инструкции, не поддерживаемые контроллером, для контроллера AT90S1200 их аж 17.
    Вложения Вложения

  15. #15
    Экстра-класс Аватар для DL7PGA
    Регистрация
    09.08.2003
    Адрес
    Дюссельдорф, Германия
    Возраст
    67
    Сообщений
    1,060
    Поблагодарили
    52
    Поблагодарил
    37
    Продолжение, "вчерашний" пост не редактируется:

    Выводы тестирования различных ассемблеров:
    tavrasm 1.22 - хорош своей компактностью, но имеет ограниченное число поддерживаемых контроллеров - 34

    avra 1.3.0 - поддерживает 48 контроллеров, близок к ассемблеру AVR Studio, но последний поддерживает все! AVR контроллеры

    gavrasm 2.9 - поддерживает 178 контроллеров, имеет фичи, которых не имеют другие ассемблеры, но если применять все эти фичи, то получится несовместимый с другими ассемблерами код, о чём автор предупреждает.

    Программа свободная, имеются исходники для FreePascal под различные операционные системы, языки - немецкий, английский, французский, по ссылке http://www.avr-asm-tutorial.net/gavrasm/index_en.html можно скачать как исходники, так и откомпилированную прогу для Linux, DOS (DPMI) , Windows.

    На этом пока всё. Программы опробовались как на командной строке, так и из программы Geany (свободная лёгкая IDE) под Linux и Windows (GTK2). Для Geany имеется файл цветовой поддержки с корректурами для применения с ассемблерами avra и gavrasm (источник - http://elektronik-projekt.de - это форум на немецком

Похожие темы

  1. Электронные книги по assembler'у
    от rarelang в разделе Беседка. Для любителей поговорить.
    Ответов: 10
    Последнее сообщение: 10.09.2004, 11:29
  2. Электронные книги по assembler'у
    от rarelang в разделе Компьютеры и сети
    Ответов: 4
    Последнее сообщение: 02.09.2004, 11:56

Метки этой темы

Социальные закладки

Социальные закладки

Ваши права

  • Вы не можете создавать новые темы
  • Вы не можете отвечать в темах
  • Вы не можете прикреплять вложения
  • Вы не можете редактировать свои сообщения
  •  
Похоже, что вы используете блокировщик рекламы :(
Форум QRZ.RU существует только за счет рекламы, поэтому мы были бы Вам благодарны если Вы внесете сайт в список исключений!
как отключить
×
Рейтинг@Mail.ru
eXTReMe Tracker
Яндекс.Метрика