Hitech sprintf() macete para ponto flutuante

Oi galera tudo bem estou migrando do CCS para o Hitech mas estou com um problema estou convertendo uma variavel float para string com a função sprintf mas não esta funcionando.
bibliotecas e configurações incluidas
#include <htc.h>
#define XTAL_FREQ 12MHZ
__CONFIG(0x3F71);
#include <delay.c>
#include <delay.h>
#include "lcd_hitech.c"
#include <stdio.h>
#include <float.h>
float teste=652.25;
unsigned char string[32];
sprintf(string,"%7.2f volts",teste);
e com uma variavel do tipo int funciona blzinha ....
Alguem pode ajudar
bibliotecas e configurações incluidas
#include <htc.h>
#define XTAL_FREQ 12MHZ
__CONFIG(0x3F71);
#include <delay.c>
#include <delay.h>
#include "lcd_hitech.c"
#include <stdio.h>
#include <float.h>
float teste=652.25;
unsigned char string[32];
sprintf(string,"%7.2f volts",teste);
e com uma variavel do tipo int funciona blzinha ....
Alguem pode ajudar