Есть массив AdrDecodeReciver[] во флеше в котором описаны адреса данных в структурах (озу), все данные 16-ти битные. Задача сформировать массив Usart[] из данных которые описаны в AdrDecodeReciver[].
Вот массив:
Код
const uint16_t *AdrDecodeReciver[NumberReciver+NumberTranciver] PROGMEM=
{
&ResultFirst.VoltageOff,
&ResultFirst.CurrentOff,
........
};
Вот функция которая это делает:
Код
extern void CopyReciverData(void)
{
uint8_t i;
uint16_t *Adr;
for (i=0;i<(NumberTranciver+NumberReciver);i++)
{
Adr=pgm_read_word(&AdrDecodeReciver[i]);
Usart[i]=*Adr;
}
}
Компилятор выдает варнинг:warning: assignment makes pointer from integer without a cast. Хотя компилит правильный код.
Как написать правильно?