с - лучший способ прочитать 16-битные значения из файла в массив и преобразовать, без плавающей запятой, их в 12-битные значения. То есть самое высокое значение в массиве Buff - 4095?
f_read(&file,&Buff[0],512,&cnt);