Для преобразования необработанного байта в значение с плавающей запятой вы можете использовать следующие встроенные функции:
float interpretAsFloat(dword x); // dword 4 bytes, IEEE signle precision float number
double interpretAsDouble(qword x); // qword 8 bytes, IEEE double precision float number
Примеры:
on key 'a'
{
dword testDword=0x4048f5c3; // 3.14
float testFloat;
testFloat=interpretAsFloat(testDword);
write("float %f",testFloat);
write("float times two %f",testFloat*2);
}
on message ExampleCANMessage
{
float lowAmps;
lowAmps=interpretAsFloat(this.dword(2));// ex. your data is present on bytes 2...5
print("Voltage: %f ",lowAmps);
}