реклама на сайте
подробности

 
 
> Перевод строки в float и обратно в пространстве ядра
Viwon
сообщение Dec 1 2016, 13:57
Сообщение #1


Участник
*

Группа: Участник
Сообщений: 45
Регистрация: 18-03-14
Пользователь №: 80 976



Доброго времени суток!

Подскажите, пожалуйста, функции перевода. Нашел только для преобразования строка->float, нужна еще и в обратную сторону.

Нужно для драйвера, который принимает параметры в текстовом виде(через файлы в /sys), преобразует их в бинарный вид и располагает в определенной области памяти, откуда их забирает DSP. Часть параметров действительные числа, как и результат вычислений.

Процессор OMAP-L138(ARM + DSP)
Go to the top of the page
 
+Quote Post
 
Start new topic
Ответов
nill
сообщение Dec 3 2016, 07:20
Сообщение #2


Частый гость
**

Группа: Validating
Сообщений: 124
Регистрация: 10-08-05
Пользователь №: 7 502



Цитата(Lagman @ Dec 3 2016, 00:12) *
(смотрите на функции которые имеют в своем названии print и scan)

Если заглянуть в исходники vsscanf, то можно обнаружить, что спецификатор 'f' не обрабатывается. Впрочем, об этом написано в Documentation/printk-formats.txt
Цитата
For obvious reasons, floating
point formats (%e, %f, %g, %a) are also not recognized. Use of any
unsupported specifier or length qualifier results in a WARN and early
return from vsnprintf.


Цитата(Genadi Zawidowski @ Dec 3 2016, 06:52) *
stdlib.h:
strtof, strtod, strtold

Здесь речь о пространстве ядра, в котором нет stdlib.h

Viwon, а Вам действительно нужно обрабатывать действительные числа в драйвере? Если их нужно просто передать DSP, то почему бы просто не скопировать весь символьный буфер в его память и разбирать его уже на DSP? Или на нём тоже ядро работает?
Go to the top of the page
 
+Quote Post



Reply to this topicStart new topic
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 


RSS Текстовая версия Сейчас: 13th August 2025 - 19:24
Рейтинг@Mail.ru


Страница сгенерированна за 0.01369 секунд с 7
ELECTRONIX ©2004-2016