Реклама на сайте English version  DatasheetsDatasheets

KAZUS.RU - Электронный портал. Принципиальные схемы, Datasheets, Форум по электронике

Новости электроники Новости Литература, электронные книги Литература Документация, даташиты Документация Поиск даташитов (datasheets)Поиск PDF
  От производителей
Новости поставщиков
В мире электроники

  Сборник статей
Электронные книги
FAQ по электронике

  Datasheets
Поиск SMD
Он-лайн справочник

Принципиальные схемы Схемы Каталоги программ, сайтов Каталоги Общение, форум Общение Ваш аккаунтАккаунт
  Каталог схем
Избранные схемы
FAQ по электронике
  Программы
Каталог сайтов
Производители электроники
  Форумы по электронике
Удаленная работа
Помощь проекту


 
Опции темы
Непрочитано 01.08.2011, 12:47  
PlainUser
Прописка
 
Регистрация: 09.12.2003
Сообщений: 116
Сказал спасибо: 5
Сказали Спасибо 23 раз(а) в 19 сообщении(ях)
PlainUser на пути к лучшему
По умолчанию Re: Изучаем STM32 Cortex M3

Сообщение от PlainUser Посмотреть сообщение
Недавно на сахаре рассказывали насчет погрешности ацп в диапазоне 0-50мв входного сигнала.
Можешь проверить и рассказать как оно в реальности выглядит.
Есть предположения что в том случае калибровка не использовалась.
Задавал представителю STM этот вопрос , от бил себя пяткой в грудь что все зашибись , но ему так положено.
Сам проверил (как раз плата под руки попалась), все нормально если калибровку использовать.
Реклама:
PlainUser вне форума  
Непрочитано 01.08.2011, 17:59  
Left Radio
Частый гость
 
Аватар для Left Radio
 
Регистрация: 20.09.2009
Сообщений: 40
Сказал спасибо: 17
Сказали Спасибо 7 раз(а) в 7 сообщении(ях)
Left Radio на пути к лучшему
По умолчанию Re: Изучаем STM32 Cortex M3

Сообщение от st_1 Посмотреть сообщение
Угу...
А я ещё сравнивал с PIC24F и PIC32...
PIC32 посчитал sinf() в 4-е раза быстрее STM32... а PIC24F - в 2,5 раза быстрее MEGA32...
А разве для STM32 есть библиотека sinf()? Или сравнение было PIC32-sinf() VS STM32-sin()? Тогда это некорректное сравнение.
__________________
Left Radio вне форума  
Непрочитано 01.08.2011, 18:09  
st_1
Заблокирован
 
Регистрация: 26.12.2009
Сообщений: 3,134
Сказал спасибо: 117
Сказали Спасибо 867 раз(а) в 614 сообщении(ях)
st_1 на пути к лучшему
По умолчанию Re: Изучаем STM32 Cortex M3

STM32 (Кейл) быстрее Меги32 на sin() - в 1,6-1,7 раза...
На sinf() - в 10-11 раз... но не 15 раз...
Все МК STM32, MEGA32, PIC24, PIC32 - компиляторы GCC...
st_1 вне форума  
Непрочитано 01.08.2011, 20:39  
Left Radio
Частый гость
 
Аватар для Left Radio
 
Регистрация: 20.09.2009
Сообщений: 40
Сказал спасибо: 17
Сказали Спасибо 7 раз(а) в 7 сообщении(ях)
Left Radio на пути к лучшему
По умолчанию Re: Изучаем STM32 Cortex M3

Понятно, но все равно странно преимущество MIPS(PIC32) над ARM(STM32) при вычислении sinf() в 4-е раза, с чего бы это...
__________________
Left Radio вне форума  
Непрочитано 01.08.2011, 22:02  
st_1
Заблокирован
 
Регистрация: 26.12.2009
Сообщений: 3,134
Сказал спасибо: 117
Сказали Спасибо 867 раз(а) в 614 сообщении(ях)
st_1 на пути к лучшему
По умолчанию Re: Изучаем STM32 Cortex M3

В подробности не вдавался...
Только что перемерял sinf()...
PIC32 - 137 Cycles...
STM32 - 478 Cycles...
478/137 = 3,4890 ...

С накруткой на max speed Кейл...
STM32 - 366 Cycles...
366/137 = 2,6715 ...

Игра оптимизацией в С32 никаких результатов для sinf() не дала - 137 Cycles в любом случае...
st_1 вне форума  
Непрочитано 02.08.2011, 01:56  
tanq
Гражданин KAZUS.RU
 
Регистрация: 12.10.2009
Сообщений: 566
Сказал спасибо: 30
Сказали Спасибо 136 раз(а) в 110 сообщении(ях)
tanq на пути к лучшему
По умолчанию Re: Изучаем STM32 Cortex M3

Сообщение от st_1 Посмотреть сообщение
PIC32 - 137 Cycles...
STM32 - 478 Cycles...
Забавно. Значит у обоих библиотеки г. полное. 32 битные процессоры 32-битное умножение умеют за 1-2 такта делать, для вычисления синуса их надо будет около 15 сделать + сложений еще столько же.
Откуда все остальные такты взялись - совершенно понятно.
tanq вне форума  
Непрочитано 02.08.2011, 08:46  
zheleznjakov
Прописка
 
Аватар для zheleznjakov
 
Регистрация: 31.03.2010
Сообщений: 200
Сказал спасибо: 3
Сказали Спасибо 48 раз(а) в 41 сообщении(ях)
zheleznjakov на пути к лучшему
По умолчанию Re: Изучаем STM32 Cortex M3

Касательно библиотек и времени выполнения, большую роль ещё играет точность.

Про либу для пика32 указано 299 тактов
http://www.microchip.com/stellent/id...cName=en552826

Поищите в сети либы на кортекс-м3 мне где-то парочку попадалась.
На вскидку только для фиксированной быстро попалась
http://code.google.com/p/fixpointlib/
__________________
ziblog.ru
zheleznjakov вне форума  
Непрочитано 02.08.2011, 21:15  
Termik38
Частый гость
 
Регистрация: 22.01.2011
Сообщений: 31
Сказал спасибо: 4
Сказали Спасибо 3 раз(а) в 3 сообщении(ях)
Termik38 на пути к лучшему
По умолчанию Re: Изучаем STM32 Cortex M3

Добрый вечер.
Кто юзал USART+DMA, помогите разобраться.
Почему не работает, что упустил...
Вложения:
Тип файла: rar USART DMA.rar (1.3 Кб, 179 просмотров)
Termik38 вне форума  
Непрочитано 02.08.2011, 22:08  
_guardianangel
Почётный гражданин KAZUS.RU
 
Регистрация: 01.04.2009
Адрес: Рязань
Сообщений: 1,305
Сказал спасибо: 22
Сказали Спасибо 708 раз(а) в 379 сообщении(ях)
_guardianangel на пути к лучшему
По умолчанию Re: Изучаем STM32 Cortex M3

tanq, А как скрипт сборки образа к code::blocks прикручивали? В Эклипс плуг для тулчайна есть, а здесь как?
_guardianangel вне форума  
Непрочитано 03.08.2011, 08:36  
gamklo
Прохожий
 
Регистрация: 03.08.2011
Сообщений: 4
Сказал спасибо: 0
Сказали Спасибо 0 раз(а) в 0 сообщении(ях)
gamklo на пути к лучшему
По умолчанию Re: Изучаем STM32 Cortex M3

Доброго времени суток!!
Начал изучать STM32. Возникла такая проблема:
Запущен таймер (TIM3), затактирован от внешнего шим сигнала (частота входного шим 6МГц). Суть проблемы в том, что контроллер находится постоянно в прерывании от таймера, и не успевает заходить в main () для обработки. кто что может посоветовать? Часть кода см. ниже.
Настройка TIM3:

TIM3-›CR1 = 0x00000000; //по умолчанию
TIM3-›PSC = 0x00000000; //установка макс. коэф. предделителя
TIM3-›ARR = 0x0000FFFF; //установка макс. перезагружаемого знач.
TIM3-›CCMR1 = 0x00000001; //Вход IC1 связываем с TI1
TIM3-›CCER |= 0x00000000; //IC1 реагирует на нарастающий фронт
TIM3-›CCMR1 |= 0x00000200; //Вход IC2 связываем с TI1
TIM3-›CCER |= 0x00000020; //IC2 реагирует на падающий фронт
TIM3-›SMCR = 0x00000054; //Выбор TI1FP1 в качестве входа, запуск по нарастающему фронту
TIM3-›CCER |= 0x00000011; //разрешение каналов захвата
TIM3-›CR1 = 0x00000001; //разрешение таймера

TIM_OCInitStructure.TIM_OCMode = TIM_OCMode_Timing;
TIM_OCInitStructure.TIM_OutputState = TIM_OutputState_Enable;
TIM_OCInitStructure.TIM_Pulse = 5;
TIM_OCInitStructure.TIM_OCPolarity = TIM_OCPolarity_High;
TIM_OC1Init(TIM3, &TIM_OCInitStructure);
TIM_ITConfig(TIM3, TIM_IT_CC1, ENABLE);

Функция прерываний от таймера:
void TIM3_IRQHandler(void)
{
if (TIM3-›SR & TIM_SR_UIF)
{

Flag_Front=1; //флаг начала обработки значения
Time_Front=TIM3-›CCR2; // запись значания ширины импульса

TIM_ClearITPendingBit(TIM3, TIM_IT_CC1);
}
}

PS: Есть подозрение что не срабатывает очистка флага таймера (TIM_ClearITPendingBit(TIM3, TIM_IT_CC1)

Последний раз редактировалось gamklo; 03.08.2011 в 10:16.
gamklo вне форума  
 

Закладки
Опции темы

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

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.

Быстрый переход

Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Школа АRMрестлинга Uragan90 Микроконтроллеры, АЦП, память и т.д 54 22.08.2011 16:13
ARM Cortex M3 + Linux SiMiLya Микроконтроллеры, АЦП, память и т.д 10 17.06.2011 17:20
Помогите с STM32 - очень нужно... yakuzaa Микроконтроллеры, АЦП, память и т.д 60 04.08.2010 11:04
Как добавить поддержку для STM32 SFHK Микроконтроллеры, АЦП, память и т.д 11 18.12.2009 18:09


Часовой пояс GMT +4, время: 10:42.


Powered by vBulletin® Version 3.8.4
Copyright ©2000 - 2021, Jelsoft Enterprises Ltd. Перевод: zCarot