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

 
 
> Как задать большой массив в ПЗУ?
хардварщик
сообщение Jul 4 2007, 04:24
Сообщение #1





Группа: Новичок
Сообщений: 5
Регистрация: 19-05-07
Пользователь №: 27 824



1. MCU = ATmega128
2. среда программирования = WinAVR
2. большой - это ~90к
3. в Keil это выглядит как "unsigned char code x[y]", есть аналог в WinAVR?
Go to the top of the page
 
+Quote Post
 
Start new topic
Ответов
хардварщик
сообщение Jul 5 2007, 04:44
Сообщение #2





Группа: Новичок
Сообщений: 5
Регистрация: 19-05-07
Пользователь №: 27 824



>Читать описание функций объявленных в <avr/pgmspace.h>
прочитал, работает. Snaky, спасибо.

Но работает как-то странно, похоже далее чем на ~5к в ром не лезет, даже если я разбиваю массив по 4к. Выше - считывает константу.

defunct, возможно, это предложение исправит ситуацию. Еще не пробовал.


mdmitry, aesok, спасибо за дополнения. Не все так просто в си как кажется. Думаю перейти обратно на асм, там вроде таких странных заморочек не было smile.gif


/*30 мин спустя*/
>работать с ним -
>pgm_read_byte_near( arr + ... );
>pgm_read_word_near( arr + ... );
Это важное замечание!!!
Я обращался как обычно к массиву (типа OCR0=arr[]), в результате - заморочки.

ВСЕМ СПАСИБО!!!

Сообщение отредактировал хардварщик - Jul 5 2007, 05:10
Go to the top of the page
 
+Quote Post



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

 


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


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