Помощь - Поиск - Пользователи - Календарь
Полная версия этой страницы: Размещение данных в flash пзу
Форум разработчиков электроники ELECTRONIX.ru > Сайт и форум > В помощь начинающему > MCS51, AVR, PIC, STM8, 8bit
alexsy
Для микроконтроллеров с флеш пзу более 64к. Наблюдаем проблему --- ме могу получить указатель на cstring который при линковке разместился за гранью 64К. Вернее адрес возвращается но он в перделах первой страници.
hd44780
И что, конструкции типа char *hello="Hello, world!"; не работают?

Вообще, это забота компилятора. Глючит один, пробуйте другой.
Арк К
Цитата(alexsy @ Sep 27 2011, 19:30) *
Для микроконтроллеров с флеш пзу более 64к.


А так не пробовали?
__farflash char str[]="Hello, world!"

указатель на строку должен иметь длину более двух байт
alexsy
Цитата(Арк К @ Sep 27 2011, 21:45) *
А так не пробовали?
__farflash char str[]="Hello, world!"

указатель на строку должен иметь длину более двух байт


Попробую. Заранее спасибо.

grv
Цитата(Арк К @ Sep 27 2011, 20:45) *
А так не пробовали?
__farflash char str[]="Hello, world!"

указатель на строку должен иметь длину более двух байт


Кстати недавно тоже приходилось прошивку EP1K30 пихать в mega128. __farflash не прокатило Помогло __hugeflash.
Причина вот

Note: When the __farflash memory attribute is used, the object cannot cross a 64-Kbyte boundary. Arithmetics will only be performed on the two lower bytes, except comparison which is always performed on the entire 24-bit address.
Для просмотра полной версии этой страницы, пожалуйста, пройдите по ссылке.
Invision Power Board © 2001-2025 Invision Power Services, Inc.