Я делаю загрузчик USB для PIC24FJ128GC006, и я собираюсь сопоставить часть флэш-памяти для загрузчика и кода приложения. Я добавил сценарий компоновщика из загрузчика USB-устройства Microchip MLA v2015_08 в свой файл кода PIC24FJ.
В файле компоновщика необходимо указать __BOOTLOADER
, чтобы получить доступ к области адреса 0x400
.
#ifdef __BOOTLOADER
program (xr) : ORIGIN = 0x400, LENGTH = 0x35BE
#else
program (xr) : ORIGIN = 0x4002, LENGTH = 0x117F4
#endif
В main.c моего кода загрузчика я уже #define __BOOTLOADER
, но когда я программирую код загрузчика для PIC с помощью ICD3 и проверяю программную память с помощью PIC Memory Views панели инструментов окна MPLAB, данные записываются в 0x4002
адрес а не в 0x400
.
В чем может быть проблема?