roboforum.ru

Технический форум по робототехнике.
Текущее время: 26 ноя 2024, 18:38

Часовой пояс: UTC + 4 часа




Начать новую тему Ответить на тему  [ Сообщений: 16 ]  На страницу 1, 2  След.
Автор Сообщение
 Заголовок сообщения: Очередной вопрос про STM32F407. Как завести FPU?
СообщениеДобавлено: 31 янв 2012, 00:40 
Не в сети
Аватара пользователя

Зарегистрирован: 10 ноя 2011, 12:02
Сообщения: 5691
Откуда: Turku, Finland
Skype: elmot73
прог. языки: Java и все-все=все
ФИО: Илья
Ставлю в KEIL "Use FPU" и при старте рантайм-библиотеки вылетаю в HardFault_Handler.
Проект на C++, библиотека стандартная. RTOS нету, кейл 4.22.
ЧЯДНТ?


Последний раз редактировалось elmot 31 янв 2012, 15:59, всего редактировалось 1 раз.

Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Очередной идиотский вопрос про STM32F407. Как завести FP
СообщениеДобавлено: 31 янв 2012, 11:49 
Не в сети
Site Admin
Аватара пользователя

Зарегистрирован: 09 фев 2006, 15:36
Сообщения: 3339
Откуда: Москва
Skype: vooon341
прог. языки: Python, C, Bash, JavaScript, C++, PHP
ФИО: Владимир Ермаков
Вот что делать с gcc я знаю, но не с кейлом.

_________________
Linux user | Firefox user


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Очередной идиотский вопрос про STM32F407. Как завести FP
СообщениеДобавлено: 31 янв 2012, 13:00 
Не в сети
Аватара пользователя

Зарегистрирован: 10 ноя 2011, 12:02
Сообщения: 5691
Откуда: Turku, Finland
Skype: elmot73
прог. языки: Java и все-все=все
ФИО: Илья
И что сним делать?


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Очередной идиотский вопрос про STM32F407. Как завести FP
СообщениеДобавлено: 31 янв 2012, 14:50 
Не в сети
Site Admin
Аватара пользователя

Зарегистрирован: 09 фев 2006, 15:36
Сообщения: 3339
Откуда: Москва
Skype: vooon341
прог. языки: Python, C, Bash, JavaScript, C++, PHP
ФИО: Владимир Ермаков
Для gcc нужно чтобы он был собран с поддержкой -mhard-float и чтобы newlib тоже.
Не уверен, но возможно уже есть -cpu=cortex-m4f с нужными ключами.

Кстати вот нагуглилось: 03 - Harnisch_ARM_Cortex-M4_DSP_SIMD_FP.pdf

_________________
Linux user | Firefox user


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Очередной идиотский вопрос про STM32F407. Как завести FP
СообщениеДобавлено: 31 янв 2012, 15:09 
Не в сети
Аватара пользователя

Зарегистрирован: 10 ноя 2011, 12:02
Сообщения: 5691
Откуда: Turku, Finland
Skype: elmot73
прог. языки: Java и все-все=все
ФИО: Илья
Ага... Кажется, это оно! Спасибо, вечером попробую
Похоже дело не в библиотеках и ключах компилятора, а в том, что FPU включить надо. Некий способ описан в PDF.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Очередной идиотский вопрос про STM32F407. Как завести FP
СообщениеДобавлено: 31 янв 2012, 15:20 
Не в сети
Аватара пользователя

Зарегистрирован: 04 дек 2008, 22:44
Сообщения: 4363
Откуда: Камышин
Skype: galk-aleksandr1
прог. языки: Kotlin, Java, C, C++, Assm, BasCom, VB, php
ФИО: Галкин Александр Владимирович
Главное отпишись по результатам - мне самому интересно как это сделать

_________________
if(!Operate) Read(pDatasheet);


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Очередной вопрос про STM32F407. Как завести FPU?
СообщениеДобавлено: 31 янв 2012, 22:07 
Не в сети
Аватара пользователя

Зарегистрирован: 10 ноя 2011, 12:02
Сообщения: 5691
Откуда: Turku, Finland
Skype: elmot73
прог. языки: Java и все-все=все
ФИО: Илья
Все, проблема решилась. Vooon, спасибо.
в функцию SystemInit(void)
добавить
Код:
  /* FPU settings ------------------------------------------------------------*/
  SCB->CPACR |= ((3UL << 10*2)|(3UL << 11*2));  /* set CP10 and CP11 Full Access */


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Очередной вопрос про STM32F407. Как завести FPU?
СообщениеДобавлено: 04 апр 2014, 09:30 
Не в сети

Зарегистрирован: 03 апр 2014, 13:36
Сообщения: 1
:Yahoo!: Спасибо помогло


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Очередной вопрос про STM32F407. Как завести FPU?
СообщениеДобавлено: 04 апр 2014, 10:58 
Не в сети
отсылающий читать курс
Аватара пользователя

Зарегистрирован: 06 ноя 2005, 04:18
Сообщения: 14195
Откуда: Москва
я только мечатаю про stm32 - поясните кратко почему:
/* FPU settings ------------------------------------------------------------*/
SCB->CPACR |= ((3UL << 10*2)|(3UL << 11*2)); /* set CP10 and CP11 Full Access */

двигается 3 а не 1 и почему *2

_________________
Читайте !


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Очередной вопрос про STM32F407. Как завести FPU?
СообщениеДобавлено: 04 апр 2014, 22:38 
Не в сети
Аватара пользователя

Зарегистрирован: 10 дек 2010, 13:16
Сообщения: 4995
Откуда: Красногорск МО
прог. языки: C, Python, wiring/processing
ФИО: Андрей
гггг, авр, серьезно?
3 = 0b11
два бита кагбэ

_________________
Мой волшебник это я сам. Всю архитектуру программы придумал лично, а ребята помогли воплотить её. Я бы и сам мог написать, но лень учить язык и его конструкции.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Очередной вопрос про STM32F407. Как завести FPU?
СообщениеДобавлено: 04 апр 2014, 23:05 
Не в сети
отсылающий читать курс
Аватара пользователя

Зарегистрирован: 06 ноя 2005, 04:18
Сообщения: 14195
Откуда: Москва
я понимаю что 2, просто не понимаю почему. я ж не пробовал их ни разу.

_________________
Читайте !


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Очередной вопрос про STM32F407. Как завести FPU?
СообщениеДобавлено: 05 апр 2014, 01:15 
Не в сети
Аватара пользователя

Зарегистрирован: 10 дек 2010, 13:16
Сообщения: 4995
Откуда: Красногорск МО
прог. языки: C, Python, wiring/processing
ФИО: Андрей
avr123.nm.ru писал(а):
я понимаю что 2, просто не понимаю почему. я ж не пробовал их ни разу.

Ээээ, ну часто бывает, что настройка чего-то не просто вкл/выкл, а как, например, оптимизация - выкл, 1,2,3 левел. Попробуй одним битом представить это.

_________________
Мой волшебник это я сам. Всю архитектуру программы придумал лично, а ребята помогли воплотить её. Я бы и сам мог написать, но лень учить язык и его конструкции.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Очередной вопрос про STM32F407. Как завести FPU?
СообщениеДобавлено: 05 апр 2014, 01:37 
Не в сети
отсылающий читать курс
Аватара пользователя

Зарегистрирован: 06 ноя 2005, 04:18
Сообщения: 14195
Откуда: Москва
дак cp10 cp11 по 2 бита чтоль? вот и непонятно, привык к 1 битным битам настройки

_________________
Читайте !


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Очередной вопрос про STM32F407. Как завести FPU?
СообщениеДобавлено: 05 апр 2014, 04:59 
Не в сети
Аватара пользователя

Зарегистрирован: 10 дек 2010, 13:16
Сообщения: 4995
Откуда: Красногорск МО
прог. языки: C, Python, wiring/processing
ФИО: Андрей
Посмотри инициализацию осцилляторов в пиках. Да и куча регистров, определяются как бит-поля. По 2-3-4 бита легко. Мильен раз видел.

_________________
Мой волшебник это я сам. Всю архитектуру программы придумал лично, а ребята помогли воплотить её. Я бы и сам мог написать, но лень учить язык и его конструкции.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Очередной вопрос про STM32F407. Как завести FPU?
СообщениеДобавлено: 06 апр 2014, 14:47 
Не в сети
Аватара пользователя

Зарегистрирован: 10 ноя 2011, 12:02
Сообщения: 5691
Откуда: Turku, Finland
Skype: elmot73
прог. языки: Java и все-все=все
ФИО: Илья
Двухбитные поля. http://infocenter.arm.com/help/index.js ... DBFBJ.html
Один бит - разрешегние FPU для привелигерованного режима, второй - для обычного.
Вот почему 2 сопроцессора - вот сие вопрос

Добавлено спустя 25 минут 47 секунд:
avr, а зачем ты "только мечтаешь"? купи себе одну из плат дискавери и развлекайся


Вернуться к началу
 Профиль  
 
Показать сообщения за:  Поле сортировки  
Начать новую тему Ответить на тему  [ Сообщений: 16 ]  На страницу 1, 2  След.

Часовой пояс: UTC + 4 часа


Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 3


Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете добавлять вложения

Найти:
Перейти:  
Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group
Русская поддержка phpBB
phpBB SEO