Найдено 30 результатов

realm
Ср ноя 16, 2016 18:06:29
Форум: AVR
Тема: CodeVision AVR в вопросах и ответах
Ответы: 8415
Просмотры: 2569399

Re: CodeVision AVR в вопросах и ответах

ARV писал(а):именно о том и шла речь - оставьте компилятору компиляторово, не майтесь ерундой
У всех задачи разные. Я вопрос задавал конкретный. Зачем в вопросе расписывать на 3 страницы почему так надо, а ни как иначе.
realm
Вт ноя 15, 2016 23:08:51
Форум: AVR
Тема: CodeVision AVR в вопросах и ответах
Ответы: 8415
Просмотры: 2569399

Re: CodeVision AVR в вопросах и ответах

По своей теме: еще раз огромное спасибо *Trigger*. Все остальное - дупль пусто.

И еще, может кому-то пригодится.
Обнаружился дополнительный шедевр в CV - он оказывается 0-вую ячейку EEPROM сам блокирует без спроса. И все распологает с адреса 0x01.
НО! самое интересное, что он это делает и с ATXmega ...
realm
Вт ноя 15, 2016 03:43:42
Форум: AVR
Тема: CodeVision AVR в вопросах и ответах
Ответы: 8415
Просмотры: 2569399

Re: CodeVision AVR в вопросах и ответах

Это как? Как вы пытаетесь работать с переменными по абсолютным адресам, не задавая их?

А вот так:
eeprom unsigned int var1[8] @0x20; // будет находиться в адресе 0x20
eeprom unsigned int var2 @0x28; //будет находиться в адресе 0x28
eeprom unsigned int var3; //будет находиться в адресе 0x00
А ...
realm
Вт ноя 15, 2016 00:36:42
Форум: AVR
Тема: CodeVision AVR в вопросах и ответах
Ответы: 8415
Просмотры: 2569399

Re: CodeVision AVR в вопросах и ответах

#pragma keep+
#pragma keep-
Именно то, что было нужно! Я помнил, что есть на этот счет что-то но ее с #pragma optsize- перепутал.
Спасибо!

Кстати. Плюсануть сообщение не получается. Висит затемнение с кружком загрузки и больше ничего не происходит.

Добавлено after 7 minutes 36 seconds:
А это ...
realm
Пн ноя 14, 2016 23:53:25
Форум: AVR
Тема: CodeVision AVR в вопросах и ответах
Ответы: 8415
Просмотры: 2569399

Re: CodeVision AVR в вопросах и ответах

Аlex писал(а):Чё, даже volatile не работает в кодвижне ? :)
А это то тут вообще при чем... volatile работает.
realm
Пн ноя 14, 2016 23:33:05
Форум: AVR
Тема: CodeVision AVR в вопросах и ответах
Ответы: 8415
Просмотры: 2569399

Re: CodeVision AVR в вопросах и ответах

А работать с адресами EEPROM вручную, задавая абсолютные адреса?
Не поверите, но именно так сейчас и работает.
Как только я добавлю какую ни будь переменную и забуду указать ей абсолютный адрес, она окажется в адресе 0.

Добавлено after 4 minutes 54 seconds:
окружаем кусок кода такими ...
realm
Пн ноя 14, 2016 22:57:55
Форум: AVR
Тема: CodeVision AVR в вопросах и ответах
Ответы: 8415
Просмотры: 2569399

Re: CodeVision AVR в вопросах и ответах

Перенос переменных в структуру ровным счетом ничего не меняет.

Нормальные компиляторы только предупреждают о том, что переменная не используется и самостоятельно ее не удаляют и не переназначают адреса остальных переменных. Но это ж Codevision...

Обмануть компилятор - прочитать данные и ничего с ...
realm
Пн ноя 14, 2016 21:11:32
Форум: AVR
Тема: CodeVision AVR в вопросах и ответах
Ответы: 8415
Просмотры: 2569399

Re: CodeVision AVR в вопросах и ответах

Я ж написал вопрос. Прочтите его заново.
Компилятор сносит не используемый массив и переносит на его место используемые переменные.
realm
Пн ноя 14, 2016 20:48:37
Форум: AVR
Тема: CodeVision AVR в вопросах и ответах
Ответы: 8415
Просмотры: 2569399

Re: CodeVision AVR в вопросах и ответах

Аlex писал(а):Почему в eeprom'е заинтересовали ? :dont_know:
В старых мегах портится 0-я ячейка еепром. Как там с этим делом обстоят дела сейчас - да без понятия. Проще расположить все данные начиная с адреса 0x10 и забыть об этой проблеме, не вникая.
realm
Пн ноя 14, 2016 19:51:58
Форум: AVR
Тема: CodeVision AVR в вопросах и ответах
Ответы: 8415
Просмотры: 2569399

Re: CodeVision AVR в вопросах и ответах

А вы можете по человечески описать то, что вам надо добиться.

Добавлено after 11 minutes 21 second:
Аlex писал(а): Что он (мануал) говорит по этому поводу ?
Про переменные - ничего.
realm
Пн ноя 14, 2016 17:02:29
Форум: AVR
Тема: CodeVision AVR в вопросах и ответах
Ответы: 8415
Просмотры: 2569399

Re: CodeVision AVR в вопросах и ответах

Вопрос.
Нужно пропустить первые 16 байт в еепроме.
Есть 2 переменные:
eeprom unsigned char EmptyDat[16];
eeprom unsigned int MyVar;
Так MyVar должна попасть в адрес 0x10.
В софте EmptyDat не используется, он только для того, чтоб все остальные переменные расположились начиная с адреса 0x10.
Проблема ...
realm
Пн ноя 14, 2016 06:21:23
Форум: AVR
Тема: CodeVision AVR в вопросах и ответах
Ответы: 8415
Просмотры: 2569399

Re: CodeVision AVR в вопросах и ответах

Даа... Тут любят поумничать.
if ((PINB & (1 << 4)) == 0) для 0 на порте
if ((PINB & (1 << 4)) != 0) для 1 на порте
realm
Чт ноя 10, 2016 05:37:56
Форум: AVR
Тема: CodeVision AVR в вопросах и ответах
Ответы: 8415
Просмотры: 2569399

Re: CodeVision AVR в вопросах и ответах

В дата стэк, после перегрузки из него в регистры, в них оказывается лажа.
realm
Ср ноя 09, 2016 17:34:20
Форум: AVR
Тема: CodeVision AVR в вопросах и ответах
Ответы: 8415
Просмотры: 2569399

Re: CodeVision AVR в вопросах и ответах

одно маленькое НО
Прикол в том, чо я уже до того, как задать вопрос перепробовал все варианты, включая unsigned char *. В регистры загружается лажа. Может я конечно уставший что-то и напортачил. Уже не важно.
Правильно работает так:
unsigned char DES_ENC_Data[8];
unsigned char DES_ENC_SN[8];
void ...
realm
Ср ноя 09, 2016 15:57:19
Форум: AVR
Тема: CodeVision AVR в вопросах и ответах
Ответы: 8415
Просмотры: 2569399

Re: CodeVision AVR в вопросах и ответах

Z_h_e писал(а):Совершенно верно, имя массива и есть адрес, равно как и указатель. А теперь вернитесь к началу и почитайте все-таки что Вам предлагали.
Так то оно так, да не так, как оказалось.
Если так сделать и загрузить значения в регистры в них оказывается полная лажа.
realm
Ср ноя 09, 2016 15:33:41
Форум: AVR
Тема: CodeVision AVR в вопросах и ответах
Ответы: 8415
Просмотры: 2569399

Re: CodeVision AVR в вопросах и ответах

ARV писал(а):в каком именно месте вашего кода это не произошло?
Вот в этом (вызов функции):
tde (DES_ENC_Data, DES_ENC_SN);
Почему-то думал что имя массива и есть адрес и ни к какому unsigned int его приводить не надо потому как он и есть unsigned int.
realm
Ср ноя 09, 2016 14:39:00
Форум: AVR
Тема: CodeVision AVR в вопросах и ответах
Ответы: 8415
Просмотры: 2569399

Re: CodeVision AVR в вопросах и ответах

Z_h_e писал(а):Ну а коли Вы все знаете и лучше всех, то зачем тут вопросы задаете?
Я знаю достаточно многое, но не все.
А какого лешего предобразование в unsigned int не произошло автоматически я до сих пор не знаю.
realm
Вт ноя 08, 2016 19:36:06
Форум: AVR
Тема: CodeVision AVR в вопросах и ответах
Ответы: 8415
Просмотры: 2569399

Re: CodeVision AVR в вопросах и ответах

Нет. Они лежат в RAM и на них ссылается регистр Y
realm
Вт ноя 08, 2016 17:44:54
Форум: AVR
Тема: CodeVision AVR в вопросах и ответах
Ответы: 8415
Просмотры: 2569399

Re: CodeVision AVR в вопросах и ответах

WiseLord писал(а):realm: а зачем так извращаться?
Если функция на ассемблере написана - сразу в регистры перегружать входящие значения надо. А они про такую штуку, как указатели вообще ничего не знают.
realm
Вт ноя 08, 2016 10:36:58
Форум: AVR
Тема: CodeVision AVR в вопросах и ответах
Ответы: 8415
Просмотры: 2569399

Re: CodeVision AVR в вопросах и ответах

Только, при передаче аргументов, делайте явное преобразование из указателя в unsigned int .
tide((unsigned int)DES_ENC_Data, (unsigned int)DES_ENC_SN);
Спасибо. Именно то что я и проушанил.

Добавлено after 7 minutes 50 seconds:
Ну не может он заставлять думать :)
Думать больно.
Ну не мое ...

Перейти к расширенному поиску