В IAR было проше указал __flash и никаких проблем...
#include <avr/io.h>
#include <avr/pgmspace.h>
unsigned char dispbuff[0x05]; //Буфер идикатора
prog_char msg_1[] PROGMEM = {0x18, 0x20, 0x12, 0x1E, 0x06};
void DispLed_SendMsgFlash(prog_char *msg) //Загрузка индикатора
{
unsigned char i; //Cчетчик позиций
for (i = 0x05; i != 0; i--) //Перебор всех позиций
dispbuff[i-1] = pgm_read_byte(msg);
msg++;
}
int main(void){
DispLed_SendMsgFlash(&(msg_1[]));