[an error occurred while processing this directive]
Прошу прощения, не посмотрел. Тут я не спец. Попробуйте порыться в документации или в исходных текстах.
(«Телесистемы»: Конференция «Микроконтроллеры и их применение»)
Отправлено
_Bill
06 июня 2006 г. 13:25
В ответ на:
А если WinAVR он же avr-gcc? Как я писал раньше -версия библиотеки 1.4.3
отправлено vanessa 06 июня 2006 г. 13:19
Составить ответ
|||
Конференция
|||
Архив
Ответы
А спецы здесь мимо не пробегают? Подскажите пожалуйста :).....
—
vanessa
(06.06.2006 13:37
82.207.59.190
,
пустое
)
Разбирался я как-то с SDCC(+)
—
misyachniy
(06.06.2006 14:11
83.218.237.86
, 340 байт)
(+)
—
радиолюбитель без лицензии
(06.06.2006 14:07
213.154.220.39
, 401 байт)
Спасибо, попробую :)
—
vanessa
(06.06.2006 14:12
82.207.59.190
,
пустое
)
вернее -Wl,-u,vfprintf -lprintf_flt -lm
—
радиолюбитель без лицензии
(06.06.2006 14:09
213.154.220.39
,
пустое
)
makefile сфм сочинял, как я понял вышеуказанные ключи к ключам линковки добавить ?
—
vanessa
(06.06.2006 14:18
82.207.59.190
,
пустое
)
ага
—
радиолюбитель без лицензии
(06.06.2006 14:26
213.154.220.39
,
пустое
)
Еще вопрос к гуру: на функции printf свет клином ведь несошелся, как еще можно отформатировать перемернную типа float в строку (варианты, окромя разделять на целие и десятые, преобразовывать в int и выводить их есть не предлагать). Или лучше вообще плавающую математику не использовать? памяти мне думаю хватит на меге32....
—
vanessa
(06.06.2006 15:04
82.207.59.190
,
пустое
)
А насколько необходимо использовать "плавучку"?
—
_Bill
(06.06.2006 15:23
193.233.83.90
,
пустое
)
Расчеты несложные: перещитать значение с АЦП. Вот только результат получается от 5 до 10 с точностью до второго знака. Переходить на long что-ли и считать от 500 до 1000. Ведь при шкалировании может получиться 1000*1000=1000000 в int уже невлазит.
—
vanessa
(06.06.2006 15:51
82.207.59.190
,
пустое
)
long - вполне нормальный вариант.
—
_Bill
(06.06.2006 16:52
193.233.83.90
,
пустое
)
Я для этой цели широко пользуюсь рациональными двоичными дробями
—
=AVR=
(06.06.2006 17:23
80.92.96.19
, 367 байт)
Интересный подход. А если коефициенты (0.9876 из вашего примера) в процессе работы меняються (перекалибровали датчик) как тогда пару подбирать ?
—
vanessa
(06.06.2006 18:22
82.207.59.190
,
пустое
)
Не подбирать, а вычислять - что-то ни разу не видел родных калибровочных коэффициентов в плавучке. Нужна бОльшая точность - пожалуйста, 32-бит целочисленная арифметика на все случаи жизни за глаза
—
=AVR=
(06.06.2006 18:41
80.92.96.19
,
пустое
)
Не совсем понял Вашу арифметику. В Вашем примере x*64723 > 65536.
—
vanessa
(06.06.2006 20:13
82.207.59.190
, 255 байт)
Именно так. Кроме того, там я механически ошибся - не оттуда copy/paste сделал, см. внутри
—
=AVR=
(06.06.2006 21:28
80.92.96.19
, 1576 байт)
Блин, устал сегодня. Опять описка - в примере надо MSW, а не LSW
—
=AVR=
(07.06.2006 00:07
80.92.96.19
, 95 байт)
Вот до чего людей голый асм доводит..
—
PlainUser
(07.06.2006 11:55
62.148.235.50
,
пустое
)
Спасибо, баду разбиратся...
—
vanessa
(06.06.2006 18:51
82.207.59.190
,
пустое
)
Отправка ответа
Имя (обязательно):
Пароль:
E-mail:
NoIX ключ
:
Запомнить
Тема (обязательно):
Сообщение:
Ссылка на URL:
Название ссылки:
URL изображения:
Перейти к списку ответов
|||
Конференция
|||
Архив
|||
Главная страница
|||
Содержание
E-mail:
info@telesys.ru