Как можно расположить структуру данных по определенному адресу?
Есть у меня структура вида typedef struct { Int a; Float b; } Как можно расположить её в определённом месте в памяти. Думаю для этого нужно использовать атрибуты.
Ответы (1 шт):
Автор решения: User_128
→ Ссылка
В общем виде - создать указатель, присвоить ему нужный адрес, и потом заполнять структуру. Можно сделать атрибутами, но это уже зависит от среды разработки и компилятора и описано в документации Вот такой код работает на атмеге, только что проверил:
typedef struct
{
uint8_t a;
uint16_t arr[128];
} structure;
int main(void)
{
structure * p;
p = 0x71;
p->a = 0x56;
p->arr[6] = 0x11;
Массив окажется по адресу 0x71 в оперативной памяти