нужна опция компилятора --string_literals_in_flash Вот мой тестовый примерчик.
#include <iom8.h> 
#include <stdio.h>
// строки во flash
// нужна опция компилятора --string_literals_in_flash
#include <pgmspace.h>
unsigned char D[80]; //сюда выводим printf()-ом
int putchar(int data){
static char i=0;
 D[i]=(char)data;
 i++;
  return data;
}
__C_task void main( void )
{
//  const float N=123.456;
  const float N=3.39E+38;
    
  D[0]=0xAA;
  printf_P( "TestMessage=%f ",N); 
  
 while(1);
}