2012-05-14 4 views
2

Я начал работать на плате Discovery STM32F4 и скомпилировал и запустил несколько базовых программ, используя последнюю инструментальную цепочку Yagarto, содержащую GCC 4.6.2. В последнее время, хотя на нескольких форумах я читал, что многие инструментальные средства, включая новейшие Yagarto, имеют проблемы, когда дело доходит до использования встроенного аппаратного FPU. Я также прочитал, что последняя инструментальная цепочка CodeSourcery поддерживает аппаратную плавающую точку, но не в облегченном выпуске !!Инструментальная панель GNU ARM с аппаратной поддержкой с плавающей запятой

В процессе углубления в тему я нашел эту инструментальную цепочку, специально предназначенную для контроллеров ARM Cortex M/R, и утверждает, что у нее нет проблем, когда дело касается аппаратного FPU.

https://launchpad.net/gcc-arm-embedded

Я хотел бы знать, по опыту пользователей, если проблемы аппаратного FPU действительно существуют в Yagarto? Я заинтересован в использовании Yagarto, потому что я также работаю над ARM7, а yagarto также поддерживает это. Таким образом, вместо того, чтобы иметь разные инструментальные цепочки для разных архитектур, для них характерно наличие как ARM7, так и Cortex M/R.

Если проблемы FPU действительно существуют, может ли кто-нибудь предложить мне хорошую испытанную инструментальную цепочку для ARM7 и Cortex M/R?

P.S. : Я использую последнюю версию CodeSourcery GNU Linux для BeagleBoard (Cortex A-8), которая еще не сталкивалась с какими-либо проблемами.

+1

http://github.com/dwelch67/stm32f4d Я просто использовать CodeSourcery или любой generic gcc/binutils для руки и делать плавающие точки в процедурах asm. Как и в случае с thumb2 для -m3, я ожидал бы, что правильная/полная поддержка -m0 и -m4 займет некоторое время. Вышеупомянутый подход работает сегодня и будет работать завтра. –

+0

Спасибо за ссылку. Мне нравится идея писать вещи с плавающей запятой в сборке. Думаю, мне лучше использовать инструмент GNU ARM toolchain на сайте launchpad для Cortex M/R и что-то вроде WINARM для ARM7. Но когда дело доходит до чувствительных операций FP, я буду придерживаться вашей идеи написать их в asm. благодаря –

ответ

0

Я только что написал статью об использовании бесплатной инструментальной привязки GCC (GNU Tools for ARM Embedded Processors) и STLINK на Linux/Ubuntu для написания/программирования/отладки кода для платы обнаружения STM32F4 (F4 - Cortex M4) - которые могут помочь вам, компилятор имеет аппаратные средства поддержки плавающей точкой, и я использую его в моих примерах ...

http://www.wolinlabs.com/blog/linux.stm32.discovery.gcc.html