Помощь - Поиск - Пользователи - Календарь
Полная версия этой страницы: tms320F2812 и float
Форум разработчиков электроники ELECTRONIX.ru > Цифровая обработка сигналов - ЦОС (DSP) > Сигнальные процессоры и их программирование - DSP
QuadMan
Добрый день!

Подскажите пожалуйста, использую процессор TMS320F2812, нужно работать с числами с плавающей точкой.
Использую Code Composer.
Для этого в настройках проекта выставляю specify floating point support - fpu32, подключаю соответствующую библиотеку rts2800_fpu32.lib, после этого при попытке отладить пустую программу, я даже не попадаю в точку входа main.
Если же использовать rts2800_ml.lib, то все нормально работает.
Это что значит - я что-то не так настроил или в этом процессоре нельзя подключать эту библиотеку, так как он не поддерживает аппаратно плавающую точку?

И еще, смотрю описание C/C++ Optimizing Compiler, там написано, что есть еще 64 битный тип long double и есть параметр --float_support={fpu64} - но я такого у себя в настройках компилятора не вижу.
Хотя версия последняя 6.4.6.

Спасибо
Turnaev Sergey
Для 2812 подойдёт естественно только обычная rts2800_ml.lib.

rts2800_fpu32.lib это для 28335, 28069, и других с наличием fpu модуля.

Для 2812 надо использовать виртуальную плавающую запятую из библиотеки IQmath.

Вообще, лучше конечно взять TMS320F28335, почти полный аналог TMS320F2812, но современней на 10 лет, с кучей улучшений в периферии, ценники у них сравнимы.

Аппаратного long double нет пока ни у одного контроллера семейства 28хх, а это значит что будут тратиться сотни, а может и тысячи тактов на обработку таких чисел.
PrSt
TMS320F2812 природно не умеет работать с float.
Вместо этого, у него реализован механизм фиксированой плавающей точки.
Есть финт ушами, который только при помощи IQ Lib работает, чарез IQmath.lib
QuadMan
Спасибо всем за ответы.
Буду разбираться.
Для просмотра полной версии этой страницы, пожалуйста, пройдите по ссылке.
Invision Power Board © 2001-2024 Invision Power Services, Inc.