Цитата(Kosh @ Feb 22 2005, 08:02)
Мне просто надо принять по ком порту число, грубо говоря от дсп процессора(ШАРК), и преобразовать его в обычный флоат, а потом передать в него такой же 16 битный флоат, у меня процессор MCs51, компилятор кейл.
У ШАРК- 32-bit IEEE floating-point
У СИ Кейла 32-bit IEEE-floating-point
Так что никаких проблем быть не должно мне не понятно откуда у вас
16 битный флоат
По видимому вы организуете обмен по последовательному порту
между двумя процессорами
Небольшой пример преобразования после приема данных
union {unsigned char VarByte[4];
float VarFloat;
}VarUn;
unsigned char BufChar[4];//Типа буфер приема передачи
for(i=0;i<4;i++)
{VarUn.VarByte[i]=BufChar[i];
}
VarUn.VarFloat - в результате содержит значение float
аналогично в обратную сторону
Если передача 16 разрядная надо только
скорректировать тип переменных и организацию цикла