sx386 писал(а):
У меня выдаёт сообщение об ошибке, но при этом всё программируется, запускается и работает.
Код:
Flash download warning: 4 out of 4 bytes from data record CODE:[0x1FF80078,0x1FF8007B] will not be flashed
Ошибочно полагать, что здесь "ошибка константы". Вам же флешер точно говорит "0x1FF8007B will not be flashed".
Пащиму? Потому, что 0x1FF8007B не есть область флеша которая может быть модифицирована (по просту это ro, noinit). Но ваш линкер (подозреваю что IAR) об этом не знает, потому и считает своим долгом её проинитить, т.е. записать некое значение, что не возможно ( в данном контексте)
Myp3ik писал(а):
const uint16_t Factory_VREFINT = *(uint16_t*)0x1FF80078;
#define Factory_VREFINT ((uint16_t)(*(uint16_t*)0x1FF80078))
Отличный вариант. Лучше использовать разименование поинтеров