hola bueno les comento que lo que andava buscando era mas fasil de lo que pense, aqui les dejo el codigo
unsigned char key; //Variable global tecla
char string[6];
float numero=0;
int i,b;
// Interrupcion RB4 - RB7 /////////////////////////////////////////////////////
#INT_RB
void interrupt_keypad()
{
key=read_keypad(); //Asigna la tecla pulsada
clear_interrupt(INT_RB); //Limpia bandera RBIF
}
// Programa Principal /////////////////////////////////////////////////////////
void main()
{
lcd_init();
enable_interrupts(INT_RB); //interrupcion INT_RB activada
enable_interrupts(GLOBAL); //todas las interrupciones desactivadas
init_keypad();
string[b]=key;
i++;
b=i-1;
numero=atof(string);
printf(lcd_putc,"tecla:%i num:%f",b,numero); // Imprimimos la Tecla pulsada
lcd_gotoxy(1,1);
}
la linea numero=atof(string); lo hace todo, pero el punto ahora esque nesecito hacer un menu, me explico al presionar la A del keypad este tiene que entrar:
string=key;
i++;
b=i-1;
numero=atof(string);
asta que precione la D del keypad, que vendria siendo como un enter, y al precionar la B este tiene que entrar a otro menu:
string1[c]=key;
d++;
c=d-1;
num=atof(string1);
y al precionar la D sale del menu.