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

 
 
> Не могу преобразовать double в строку, Преобразование типов в WinAVR
Sminder
сообщение Mar 9 2007, 00:55
Сообщение #1


Участник
*

Группа: Участник
Сообщений: 35
Регистрация: 26-02-07
Пользователь №: 25 691



Возникла такая проблема: для вывода на индикатор требуется строчная переменная (*char) вида
Х.ХХХ, а имеется полученная в результате вычислений переменная типа double (т.е. с плавающей запятой). Как я понял, в компиляторе WinAVR не имеется встроенных средств для преобразования чисел с плавающей запятой в строку. Пожалуйста, дайте ссылку или приведите пример такого преобразования.
Go to the top of the page
 
+Quote Post
 
Start new topic
Ответов
beer_warrior
сообщение Mar 13 2007, 08:17
Сообщение #2


Профессионал
*****

Группа: Свой
Сообщений: 1 065
Регистрация: 8-10-05
Из: Kiev, UA
Пользователь №: 9 380



Цитата
Сообщения действительно говорят о множественном обьявлении функций.

Не о множественном объявлении (тогда ругнулось бы со словом declared), а о множественном линковании.

Цитата
c:/program files/avr/winavr/bin/../lib/gcc/avr/4.1.1/../../../../avr/lib/avr4\libc.a(fixsfsi.o): In function `__fixunssfsi':(.text.fplib+0x0): multiple definition of `__fixsfsi'c:/program files/avr/winavr/bin/../lib/gcc/avr/4.1.1/avr4\libgcc.a(_sf_to_si.o)sad.gif.text+0x0): first defined here

В первый раз - libc.a, во второй libgcc.a. Тут надо смотреть, как именно подключаются библиотеки. С winavr на такое не нарывался, поэтому в глубину не копал. А вот с MinGW многократно - именно из-за дублирующего использования библиотек.

Могу посоветовать скомпилировать просто в командной строке - если получится - искать грабли в мэйкфайле.


--------------------
Вони шукають те, чого нема,
Щоб довести, що його не існує.
Go to the top of the page
 
+Quote Post
Sminder
сообщение Mar 13 2007, 22:35
Сообщение #3


Участник
*

Группа: Участник
Сообщений: 35
Регистрация: 26-02-07
Пользователь №: 25 691



Пардон, оговорился, я имел в виду конечно определение.

Makefile используется тот, что автоматически генерит Studio.

Для компиляции в командной строке требуется все равно файл makefile. Созданный оболочкой Studio файл не подходит, а с файлом, созданным с помощью программы MFile от WinAVR, проект не компилится (любой проект, не только этот - проверял) с ошибкой

> "make.exe" all
Makefile:531: *** target pattern contains no `%'. Stop.


В самом файле текст


# Create library from object files.
.SECONDARY : $(TARGET).a
.PRECIOUS : $(OBJ)
%.a: $(OBJ)
@echo
@echo $(MSG_CREATING_LIBRARY) $@
$(AR) $@ $(OBJ)


на который указывает ошибка, на мой взгляд никаких подозрений не вызывает.

Файл makefile, созданный Studio, реально в 10 раз меньше по размеру MFile -овского.
Короче, одна беда) Уже и не знаю, чего делать...
Go to the top of the page
 
+Quote Post

Сообщений в этой теме
- Sminder   Не могу преобразовать double в строку   Mar 9 2007, 00:55
- - beer_warrior   ftoa() по-моему нет, но ИМХО она не предусмотрена ...   Mar 9 2007, 01:56
- - vooon   просмотрите stdlib.h внимательно, я там например н...   Mar 9 2007, 01:59
|- - Sminder   Цитата(vooon @ Mar 9 2007, 00:59) просмот...   Mar 11 2007, 16:16
- - beer_warrior   Похоже на двойное включение одной и той же библиот...   Mar 11 2007, 16:23
|- - Sminder   Цитата(beer_warrior @ Mar 11 2007, 15:23)...   Mar 13 2007, 00:14
|- - aesok   makefile ваш, или тот что AVRStudio генерирует авт...   Mar 13 2007, 00:34
|- - aesok   Цитата(Sminder @ Mar 13 2007, 22:35) Make...   Mar 14 2007, 00:10
- - beer_warrior   Ну что тут можно сказать. Оба мэйкфайла к осмотру....   Mar 13 2007, 23:09
- - beer_warrior   2 aesok Анатолий, там ИМХО проблема с libc/libgcc....   Mar 14 2007, 01:08
|- - aesok   Цитата(beer_warrior @ Mar 14 2007, 01:08)...   Mar 14 2007, 02:31
- - beer_warrior   ЦитатаУ Sminder-а возникла следующая проблема: он ...   Mar 14 2007, 03:09
|- - aesok   WinAVR 2006. Код: Код#include <stdlib.h> ...   Mar 14 2007, 13:41
|- - aesok   Цитата(beer_warrior @ Mar 14 2007, 03:09)...   Mar 15 2007, 00:10
- - neonix   На данный момент WinAVR 2007 не пригоден для испол...   Mar 14 2007, 12:20
- - Sminder   Огромное спасибо aesok, ваш совет действительно по...   Mar 17 2007, 21:37


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

 


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


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