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

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

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

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

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

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


 
Опции темы
Непрочитано 22.04.2014, 11:42  
Easyrider83
Гуру портала
 
Аватар для Easyrider83
 
Регистрация: 27.10.2008
Адрес: ЕС
Сообщений: 10,835
Сказал спасибо: 919
Сказали Спасибо 4,308 раз(а) в 2,573 сообщении(ях)
Easyrider83 на пути к лучшему
По умолчанию Re: Изучаем STM32 Cortex M3

Битбанг в данном случае нужен как собаке пятая нога. Но тема интересная, да. ))
Реклама:
Easyrider83 вне форума  
Непрочитано 22.04.2014, 11:56  
STM32F0
Заблокирован
 
Регистрация: 22.04.2014
Сообщений: 0
Сказал спасибо: 15
Сказали Спасибо 366 раз(а) в 284 сообщении(ях)
STM32F0 на пути к лучшему
По умолчанию Re: Изучаем STM32 Cortex M3

Спасибо,Easyrider83! Извиняюсь великодушно, что попался по незнанию на выхлоп незнающего юзера.
STM32F0 вне форума  
Непрочитано 22.04.2014, 16:12  
Bmax77
Прохожий
 
Регистрация: 20.12.2013
Сообщений: 4
Сказал спасибо: 0
Сказали Спасибо 0 раз(а) в 0 сообщении(ях)
Bmax77 на пути к лучшему
По умолчанию Re: Изучаем STM32 Cortex M3

Вот только вчера такую же тему осилил, у вас какой энкодер, у меня оптика 600 импульсов, буду на движке использовать. Если не секрет как у вас переполнение таймера обрабатывается?

Сообщение от sergeyye Посмотреть сообщение
Не было печали - купила баба порося. А мужик купил STM32F3 плату. И к ней энкодер, который подключил к TIM4 (PD12 и 13). Руководствуясь Reference manual RM0316, написал следующее:
Кстати по поводу сброса флагов прерываний, читал я читал и так и не понял, похоже что некоторые флаги сбрасываются записью единицы, а некоторые в частности UIF, сбрасываются нулем????
Bmax77 вне форума  
Непрочитано 22.04.2014, 16:24  
dosikus
Гуру портала
 
Аватар для dosikus
 
Регистрация: 20.11.2004
Сообщений: 10,015
Сказал спасибо: 936
Сказали Спасибо 2,269 раз(а) в 1,563 сообщении(ях)
dosikus на пути к лучшему
По умолчанию Re: Изучаем STM32 Cortex M3

Bmax77, Читать даташит :


1.3 Peripheral availability
For peripheral availability and number across all sales types, please refer tothe datasheet.
read/write (rw) Software can read and write to these bits.
read-only (r) Software can only read these bits.
write-only (w) Software can onlywrite to this bit. Reading the bit returns the reset value.
always read at "0" (w_r0) Writing '0' has no effect. Writing '1' starts an action (for example resets a
flag...).
read/clear (rc_w1) Software can read as well as clear this bit by writing 1. Writing ‘0’ has no effect
on the bit value.
read/clear (rc_w0) Software can read as well as clear this bit by writing 0. Writing ‘1’ has no effect
on the bit value.
read/clear by read (rc_r) Software can read this bit. Reading this bit automatically clears it to ‘0’. Writing
‘0’ has no effect on the bit value.
read/set (rs) Software can read as well as set this bit. Writing ‘0’ has no effect on the bit
value.
Reserved (Res.) Reserved bit, must be kept at reset value.
Миниатюры:
Нажмите на изображение для увеличения
Название: reg.png
Просмотров: 63
Размер:	55.8 Кб
ID:	63279  
__________________
Осторожно , злой кот
dosikus вне форума  
Непрочитано 22.04.2014, 16:38  
Bmax77
Прохожий
 
Регистрация: 20.12.2013
Сообщений: 4
Сказал спасибо: 0
Сказали Спасибо 0 раз(а) в 0 сообщении(ях)
Bmax77 на пути к лучшему
По умолчанию Re: Изучаем STM32 Cortex M3

Скопирую себе эту шпаргалку, не стоит так уж всех и сразу слать в даташит, инфа что вы дали (кстати оч большое спасибо) содержится в референс мануал (нашел, когда узнал что искать).

Сообщение от dosikus Посмотреть сообщение
Bmax77, Читать даташит :


1.3 Peripheral availability
For peripheral availability and number across all sales types, please refer tothe datasheet.
read/write (rw) Software can read and write to these bits.
read-only (r) Software can only read these bits.
write-only (w) Software can onlywrite to this bit. Reading the bit returns the reset value.
always read at "0" (w_r0) Writing '0' has no effect. Writing '1' starts an action (for example resets a
flag...).
read/clear (rc_w1) Software can read as well as clear this bit by writing 1. Writing ‘0’ has no effect
on the bit value.
read/clear (rc_w0) Software can read as well as clear this bit by writing 0. Writing ‘1’ has no effect
on the bit value.
read/clear by read (rc_r) Software can read this bit. Reading this bit automatically clears it to ‘0’. Writing
‘0’ has no effect on the bit value.
read/set (rs) Software can read as well as set this bit. Writing ‘0’ has no effect on the bit
value.
Reserved (Res.) Reserved bit, must be kept at reset value.
Bmax77 вне форума  
Непрочитано 22.04.2014, 20:19  
sergeyye
Временная регистрация
 
Аватар для sergeyye
 
Регистрация: 12.03.2005
Адрес: Москва
Сообщений: 61
Сказал спасибо: 42
Сказали Спасибо 0 раз(а) в 0 сообщении(ях)
sergeyye на пути к лучшему
По умолчанию Re: Изучаем STM32 Cortex M3

Сообщение от Bmax77 Посмотреть сообщение
у вас какой энкодер
Квадратурный. Но не для движка, а который переключатель или регулятор. Не знаю, как правильно сказать.

Сообщение от Bmax77 Посмотреть сообщение
Если не секрет как у вас переполнение таймера обрабатывается?
Будет ли вам прок от моего обработчика. Это просто тест для энкодера.
А он, собака, не тестится. Пока. Но победа будет за нами!


void TIM4_IRQHandler (void);
void TIM4_IRQHandler (void)
{ TIM4 -› SR = 0; // Сброс флага прерывания
Light = PortE -› ODR; // Ножки порта Е (там у меня 8 светодиодов вкруг) в регистр
if (TIM_CR1_DIR == 1) // Если флаг направления =1, а горит последний светодиод,
if (Light == 0x8000) Light = 0x0100; // то включаю первый.
else Light = Light ‹‹ 1; // В противном случае - делаю сдвиг и
else
{ if (Light == 0x0100) Light = 0x8000;
else Light = Light ›› 1; }
PortE -› ODR = Light; // выкладываю новое значение обратно в порт Е.
}
sergeyye вне форума  
Непрочитано 23.04.2014, 09:30  
Bmax77
Прохожий
 
Регистрация: 20.12.2013
Сообщений: 4
Сказал спасибо: 0
Сказали Спасибо 0 раз(а) в 0 сообщении(ях)
Bmax77 на пути к лучшему
По умолчанию Re: Изучаем STM32 Cortex M3

Сообщение от sergeyye Посмотреть сообщение
Будет ли вам прок от моего обработчика.
Да немного не мой случай.
У меня тоже 3я даскавери, вот как у меня настроен порт и таймер настраиваются для энкодера:
//-------------------------------- настройка порта A
RCC-›AHBENR |= RCC_AHBENR_GPIOAEN;
GPIOA-›MODER |= GPIO_MODER_MODER0_1 | GPIO_MODER_MODER1_1;
GPIOA-›AFR[0] |= (0x01UL ‹‹ (0 * 4)) | (0x01UL ‹‹ (1 * 4));
GPIOA-›PUPDR |= GPIO_PUPDR_PUPDR4_1;
//-------------------------------- настройка таймера 2 на энкодер
RCC-›APB1ENR |= RCC_APB1ENR_TIM2EN;
TIM2-›PSC = 25; //Делитель частоты тактирования
TIM2-›ARR = encstp; //Значение до которого считает таймер
TIM2-›CR1 = TIM_CR1_UIFREMAP;
TIM2-›EGR = TIM_EGR_UG;
TIM2-›SR &= ~TIM_SR_UIF;
TIM2-›CCER = TIM_CCER_CC1P | TIM_CCER_CC2P;
TIM2-›CCMR1 = TIM_CCMR1_CC1S_0 | TIM_CCMR1_CC2S_0;
TIM2-›SMCR = TIM_SMCR_SMS_0 ;//| TIM_SMCR_SMS_1; настраивается как считается энкодер по одной фазе или по двум (4 отсчета на щелчек)
TIM2-›CR1 |= TIM_CR1_CEN;//Включение счета таймера
Bmax77 вне форума  
Непрочитано 23.04.2014, 10:32  
SasaVitebsk
Гражданин KAZUS.RU
 
Регистрация: 04.08.2006
Сообщений: 911
Сказал спасибо: 28
Сказали Спасибо 180 раз(а) в 139 сообщении(ях)
SasaVitebsk на пути к лучшему
По умолчанию Re: Изучаем STM32 Cortex M3

Сообщение от STM32F0 Посмотреть сообщение
Сегодня купил Дискавери F051. Хочу освоить за пару недель. Что мне делать с битбандингом? Его отдельно покупать нужно или он уже есть на плате?
Как правило, в прерывании это не нужно. Дело в том, что одно прерывание, как правило, обрабатывает одно периферийное устройство. Поскольку прерывание может прервать только прерывание более высокого уровня, то, как правило, не должна нарушится атомарность обращения. В том редком случае, когда одно устройство обслуживается несколькими прерываниями, у вас два варианта: либо не заморачиваться и назначить равные приоритеты на эти прерывания, либо обеспечить атомарность любым способом. Например через битбандинг.
http://we.easyelectronics.ru/STM32/s...t-banding.html
SasaVitebsk вне форума  
Непрочитано 23.04.2014, 10:54  
STM32F0
Заблокирован
 
Регистрация: 22.04.2014
Сообщений: 0
Сказал спасибо: 15
Сказали Спасибо 366 раз(а) в 284 сообщении(ях)
STM32F0 на пути к лучшему
По умолчанию Re: Изучаем STM32 Cortex M3

Сообщение от SasaVitebsk Посмотреть сообщение
обеспечить атомарность любым способом.
Это всё понятно. Сюда просто перелили веяния элха, там это только что обсуждалось.
Цитата:
битбандинг.
А нет в STM32F0XX битбандинга, засада!
STM32F0 вне форума  
Непрочитано 23.04.2014, 11:18  
sergeyye
Временная регистрация
 
Аватар для sergeyye
 
Регистрация: 12.03.2005
Адрес: Москва
Сообщений: 61
Сказал спасибо: 42
Сказали Спасибо 0 раз(а) в 0 сообщении(ях)
sergeyye на пути к лучшему
По умолчанию Re: Изучаем STM32 Cortex M3

Сообщение от Bmax77 Посмотреть сообщение
У меня тоже 3я даскавери
Bmax77: Обратите внимание, что на РА.0 висит синяя кнопочка. А на ней ёмкость. Может сильно затягивать фронт енкодера.
sergeyye вне форума  
 

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

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

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, время: 09:13.


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