|
Размещение строки во флэш, что не так? |
|
|
|
 |
Ответов
|
Dec 4 2008, 12:39
|

Гуру
     
Группа: Модераторы
Сообщений: 8 455
Регистрация: 15-05-06
Из: Рига, Латвия
Пользователь №: 17 095

|
Цитата(011119xx @ Dec 4 2008, 13:17)  const uint16_t img[] PROGMEM = { здесь, например, 15000 слов }; Выдается ошибка: size of variable 'img' is too large Точно 15000 а не 16384 или больше? Для avr_gcc размер одного массива не может быть больше 32768 байт, связано это (как и у других компиляторов) с размером типа ptrdiff_t. Варианты обхода: определять массив в асм-файле, определять несколько массивов допустимой длинны в именованных сегментах и скриптом линкера обеспечить их размещение подряд, ну а доступ через указатель.
--------------------
На любой вопрос даю любой ответ"Write code that is guaranteed to work, not code that doesn’t seem to break" ( C++ FAQ)
|
|
|
|
|
Dec 4 2008, 12:47
|

Местный
  
Группа: Свой
Сообщений: 381
Регистрация: 5-07-05
Из: Уфа
Пользователь №: 6 544

|
Цитата(Сергей Борщ @ Dec 4 2008, 17:39)  Точно 15000 а не 16384 или больше? Для avr_gcc размер одного массива не может быть больше 32768 байт, связано это (как и у других компиляторов) с размером типа ptrdiff_t. Варианты обхода: определять массив в асм-файле, определять несколько массивов допустимой длинны в именованных сегментах и скриптом линкера обеспечить их размещение подряд, ну а доступ через указатель. Точно 23232 и точно uint16_t.
|
|
|
|
Сообщений в этой теме
011119xx Размещение строки во флэш Dec 3 2008, 06:46 Непомнящий Евгений Как то так, наверное
Кодuint8_t *function_name... Dec 3 2008, 06:53 ARV Используйте готовый макросы PSTR и PGM_P. наприме... Dec 3 2008, 06:55 011119xx Цитата(ARV @ Dec 3 2008, 11:55) Используй... Dec 3 2008, 06:57 ARV извините, поспешил
правильно так:КодPROGMEM char s... Dec 3 2008, 07:08 011119xx Цитата(ARV @ Dec 3 2008, 12:08) извините,... Dec 3 2008, 08:05 _Pasha На всякий случай
avr-libc-user-manual.pdf
Поиск по... Dec 3 2008, 07:52 haker_fox Если WinAVR используется, то тема двухгодичной дав... Dec 3 2008, 09:36 sonycman Цитата(haker_fox @ Dec 3 2008, 13:36) pro... Dec 3 2008, 13:55  _Pasha Цитата(sonycman @ Dec 3 2008, 17:55) В ве... Dec 3 2008, 14:31   sonycman Цитата(_Pasha @ Dec 3 2008, 18:31) Не вер... Dec 3 2008, 15:40  Сергей Борщ Цитата(sonycman @ Dec 3 2008, 15:55) В ве... Dec 3 2008, 15:54   sonycman Цитата(Сергей Борщ @ Dec 3 2008, 19:54) А... Dec 3 2008, 15:57 defunct Пример как полюдски выводить константы из флеш куд... Dec 3 2008, 15:30 ARV Цитата(011119xx @ Dec 4 2008, 14:17) А ка... Dec 4 2008, 11:36 011119xx Впихиваю в атмегу128
Памяти достаточно. Если мас... Dec 4 2008, 12:21
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0
|
|
|