PIC24F eeprom и XC16 MPLAB

Кто-нибудь может сказать мне, почему я получаю сообщение об ошибке при использовании этого кода в XC16 MPLAB? PIC24FJ64GA004

unsigned int __attribute__ ((space(eedata))) eeData[] = {100, 1, 22, 33, 44, 156, 3, 10, 1};

ошибка: пробел (eedata) не поддерживается для этой цели

Извините за вопрос новичка.


person Krik99    schedule 09.10.2017    source источник


Ответы (1)


Проблема в том, что у PIC24FJ64GA004 нет встроенной EEPROM, которую вы могли бы использовать. Компилятор распознает это, поэтому выдает эту ошибку. Сравните это, скажем, с PIC24F32KA302, который имеет 512 байт EEPROM на кристалле.

Лучше всего, если вам нужна энергонезависимая память для записи через ваше приложение, это:

A) Используйте другую целевую микросхему с выделенной встроенной EEPROM.

B) Эмулируйте EEPROM, используя неиспользуемую память флэш-программ (Есть Библиотеки для этого существуют)

C) Используйте внешнюю EEPROM, с которой можно взаимодействовать через последовательную связь (например, Это)

person K_Trenholm    schedule 09.10.2017