• Внешний USB-ЦАП-Аудиопроцессор CDD-010 можно купить

формат данных 8.24 и все о нем

evgen.05

Well-known member
Всем привет. Может есть тот, кто понимает как работать с этим форматом данных? Суть проблемы такова: создал в сигмастудии детектор уровня сигнала. Микроконтроллером считываю данные из ADAU1467. Получаю оттуда четыре байта. Как я понял, это и есть слово в формате 8.24. Теперь вопрос, как эти данные отправить на дисплей, предположим, в децибелах? Каким образом из этих данных можно хоть как-то получить адекватное число, чтобы отразить его на дисплее?
 

Евгений

Administrator
Команда форума
8.24 означает дробное число с целой частью размером 8 бит и дробной частью в 24 бита. Целая часть - старшие биты, дробная - младшие. Чтобы преобразовать дробную часть в десятичную дробь, нужно в данном случае 24-битное значение разделить на 2^24. Например, значение 0xA0D5F89C. 0xA0 - целая часть, 0хD5F89C - дробная. Целая часть 0xA0 => 160. Дробная часть 0хD5F89C => 14022812 / 2^24 = 0,8358. В итоге 0xA0D5F89C в формате 8.24 => 160,8358. Единицы измерения полученного значения нужно уточнять в описаниях AD.
 
Верх