Модераторы: PILOT, ManiaK, Mazzi
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> как преобразовать float в строку? 
:(
    Опции темы
SOIC
  Дата 23.4.2003, 21:22 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 2
Регистрация: 23.4.2003

Репутация: нет
Всего: нет



Подскажите пожалуйста - как преобразовать float в строку?

Вызов функций типа sprintf и ecvt не предлагать - меня интересует алгоритм, т.к. эти функции в
реализации MSP430 IAR EW C кушают до 200 элементов стека (400 байт) что при отведенном объеме под стек = 128 элементов мне никак не подходит...

нужен алгоритм или реализация под MSP, в крайнем случае пойдет и реализация под другие CPU, но с пояснениями...
PM MAIL   Вверх
Гость_michael
Дата 7.7.2003, 15:53 (ссылка)    |    (голосов: 0) Загрузка ... Загрузка ... Быстрая цитата Цитата


Unregistered











void FloatToString(float Value,char* Result,byte pos) /*pos -width strlen(Result) must be>=pos+1*/

byte k=0;
word tempint;
float temp;

byte EntCount=0; /*num digits before '.'*/
char *Point=Result;

if(Value<0)
{
*Point='-';
Point++;
pos--;
Value=-Value;
}
temp=Value;
while( temp>=1)
{
EntCount++;
temp/=10;
}

while (k< pos)
{ temp*=10;
tempint=temp;
temp-=tempint;
if(k== EntCount)
{
*(Point+k)='.';
k++;
}
*(Point+k)='0'+ tempint;
k++;
}
}

  Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "Микроконтроллеры (MCU) и микропроцессоры (MPU)"
PILOT ManiaK
UniBomb Mazzi

На данный раздел помимо Правил форума распространяются текже следующие правила:


  • Прежде чем создать тему воспользуйтесь поиском или посмотрите в faq. Возможно на форуме уже есть ответ на ваш или близкий к вашему вопрос.
  • В заголовке темы в квадратных скобках обозначьте используемое семейство микроконтроллера: [avr],[pic],[arm].
  • При создании темы с вопросом указывайте участок кода с ошибкой, версию компилятора, схемы подключения, fuse биты и прочие данные, которые помогут найти правильный ответ. Для форматирования текста программ используйте кнопку код.
  • Новое сообщение должно иметь прямое отношение к тематике этого раздела. Для флуда, просьб выполнить задание, поиска партнёров или исполнителей существуют свои разделы.
  • Если вы заметили несовместимое с правилами сообщение, то можете уведомить об этом модератора раздела нажав кнопку Репорт у соответствующего сообщения.

Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, PILOT, ManiaK, UniBomb, Mazzi.

 
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Микроконтроллеры (MCU) и микропроцессоры (MPU) | Следующая тема »


 




[ Время генерации скрипта: 0.0596 ]   [ Использовано запросов: 20 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.