Вот массив:
Код
const uint16_t *AdrDecodeReciver[NumberReciver+NumberTranciver] PROGMEM=
{
&ResultFirst.VoltageOff,
&ResultFirst.CurrentOff,
........
};
{
&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;
}
}
{
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. Хотя компилит правильный код.
Как написать правильно?