Я работаю над встроенным mcu, который имеет два ядра, которые могут видеть область памяти, начинающуюся с 0x80000000.создание структуры данных в определенном месте памяти в c
АЦП подключен к одному сердечнику, а радио подключено к другому. Я хочу записать значение данных, получаемое АЦП, на этот адрес памяти, чтобы другое ядро могло его прочитать.
Кто-нибудь сможет мне помочь выяснить, как это сделать? Это не микро-ОС, это голый металл.
Был ли я создан указатель на структуру по определенному адресу?
У меня есть два значения в массиве, как бы получить их в структуре?
#define NUM_SAMPLES_POLLED (2)
uint16_t samples_polled[NUM_SAMPLES_POLLED]
Возможно. Это имеет поведение, определенное реализацией. Для реализации, которая в действительности используется, может потребоваться другой механизм или даже вообще не будет предусматривать необходимого поведения. –
Это плохой подход. Использование раздела и компоновщика будет правильным. Но для обмена данными требуется больше средств. – Olaf
«Мне нужно одно ядро для записи данных на этот адрес, чтобы другой мог прочитать его». может потребовать координировать доступ между двумя ядрами - возможно, с использованием «volatile», «+ atomic» и т. д., но это выходит за рамки сообщения OP, но, скорее всего, это последующая проблема. – chux