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

 
 
> Как задать большой массив в ПЗУ?
хардварщик
сообщение 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
Ответов
aesok
сообщение Jul 4 2007, 06:16
Сообщение #2


Знающий
****

Группа: Участник
Сообщений: 596
Регистрация: 26-05-06
Из: Москва
Пользователь №: 17 484



Цитата(хардварщик @ Jul 4 2007, 08:24) *
2. большой - это ~90к


Указатели в avr-gcc 16-битные поэтому будут проблеммы при работе с таким большим объемом данных, зтот масив залезит в верхние 64КВ флеш и нужен 17 битный адрес для работы с таким масивом. Посмотрите здесь о том как их обойти:
http://www.avrfreaks.net/index.php?name=PN...GET_FAR_ADDRESS

Размерность масива не может превышать max( int ), тоесть масив char-ов не может быть больше 32 KB, int-ов - 64 КВ. Вам придеться расположить ваши данные в нескольких массивах.

Анатолий.

Сообщение отредактировал aesok - Jul 4 2007, 06:20
Go to the top of the page
 
+Quote Post



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

 


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


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