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

 
 
> Инструкции JMP и CALL, call k: Unsupported instruction on ATmeg8
svchost
сообщение Aug 23 2009, 16:18
Сообщение #1


Участник
*

Группа: Участник
Сообщений: 17
Регистрация: 31-05-09
Пользователь №: 49 779



Добрый день!

Столкнулся вот с такими непонятками...

1.

Есть абсолютно работающий проект на AVRStudio 4.16 с файлом
C:\Program Files\Atmel\AVR Tools\AvrAssembler\Appnotes\m8def.inc

просматривая папку AVR Tools обнаружил вот такой файл
C:\Program Files\Atmel\AVR Tools\AvrAssembler2\Appnotes\m8def.inc
на первый взгляд он оказался более дополненный именами регистров и битов
решил его включить в проект...

Теперь при компиляции ругается на инструкции JMP и CALL
error: call k: Unsupported instruction on ATmega8
error: jmp k: Unsupported instruction on ATmega8

при замене файла m8def.inc обратно все работает.

нашел на форуме
http://electronix.ru/forum/index.php?showtopic=23748

но никак не пойму что к чему, и если команды больше не поддерживаются почему же программы до сих пор работают?
и теперь для переноса проекта например от mega16 на мега8 надо команды поменять на rjmp и rcall?

2.

Установил пакет AvrStudio417Setup.exe и теперь
а) при запуске файлов проектов *.aps выдается сообщение ОС WinXP отказано в доступе
б) если сделать открыть файл с помощью AvrStudio проект запускается но при включении
появляется окошечко с именем файла и восклицательным знаком

при откане на 4.16 все нормально


В чем трабл не пойму? Объясните пожалуйста.
Спасибо.

Сообщение отредактировал svchost - Aug 23 2009, 17:00
Go to the top of the page
 
+Quote Post
 
Start new topic
Ответов
svchost
сообщение Aug 23 2009, 20:41
Сообщение #2


Участник
*

Группа: Участник
Сообщений: 17
Регистрация: 31-05-09
Пользователь №: 49 779



#define jmp rjmp
#define call rcall

вставил в файл m8def.inc
компиляция прошла без ошибок

компилятор не ругается на команды JMP и CALL
по идее теперь все переходы и вызовы подпрограмм должны замениться на RJMP и RCALL. Так?


проводим эксперимент с программой в 2 строки...

JMP START ; метка по адресу $200
RJMP start ;
..

получается компилятор должен скомпилировать исходные строки как

RJMP start ;
RJMP start ;
...

но в бинарном файле получаем

940С 0200 ; это чистая команда JMP START
С1FD ; а это RJMP START

получается компилятор ничего не заменил...
блин что за глюки? объясните пожалуйста. Дело уже принципа.
Спасибо.
Go to the top of the page
 
+Quote Post
_Pasha
сообщение Aug 23 2009, 22:02
Сообщение #3


;
******

Группа: Участник
Сообщений: 5 646
Регистрация: 1-08-07
Пользователь №: 29 509



Цитата(svchost @ Aug 23 2009, 23:41) *
блин что за глюки?

Так и есть: глюки. По идее, задефайненные слова должны подставляться в текст перед проходом ассемблера, поскольку #define - директива препроцессора.
Вывод: всех в сад. Новые версии асма (которые 2) - мрачно глюкавые.
Я счастлив, что вовремя убежал на Winavr от этого ужаса. Пардон за лирику.
Go to the top of the page
 
+Quote Post

Сообщений в этой теме
- svchost   Инструкции JMP и CALL   Aug 23 2009, 16:18
- - _Pasha   Цитата(svchost @ Aug 23 2009, 19:18) но н...   Aug 23 2009, 17:11
|- - Artem_Petrik   Цитата(_Pasha @ Aug 23 2009, 20:11) Они о...   Aug 23 2009, 18:11
- - svchost   что же получается, теперь возможен вариант что пок...   Aug 23 2009, 17:29
- - SasaVitebsk   А собственно что тут печального? Команда RJMP ходи...   Aug 23 2009, 17:50
|- - _Pasha   Цитата(SasaVitebsk @ Aug 23 2009, 20:50) ...   Aug 23 2009, 18:09
- - svchost   получается для переноса проекта с mega8 на mega16 ...   Aug 23 2009, 18:17
|- - Artem_Petrik   Цитата(svchost @ Aug 23 2009, 21:17) такж...   Aug 23 2009, 18:26
|- - SasaVitebsk   Цитата(svchost @ Aug 23 2009, 21:17) полу...   Aug 24 2009, 07:59
- - svchost   #ifdef _MEGA8_ #define jmp rjmp #define call rcall...   Aug 23 2009, 18:32
|- - _Pasha   Цитата(svchost @ Aug 23 2009, 21:32) #def...   Aug 23 2009, 18:44
|- - Сергей Борщ   Цитата(svchost @ Aug 23 2009, 23:41) блин...   Aug 24 2009, 07:35
- - svchost   Ответ от компании Atmel... Dear customer, ATmega...   Aug 24 2009, 06:14
- - 777777   Цитата(svchost @ Aug 24 2009, 10:14) ATme...   Aug 25 2009, 09:02


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

 


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


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