Портал для радиолюбителей и разработчиков электроники · с 2003 годаРеклама на сайте
Найти компонент, схему или даташит

Даташиты, справочник отечественных приборов, схемы с разбором и живой форум


 
Опции темы

Изучаем STM32 Cortex M3

Непрочитано 03.01.2015, 19:35  
FreshManGood
Временная регистрация
 
Регистрация: 24.11.2010
Сообщений: 82
Сказал спасибо: 20
Сказали Спасибо 7 раз(а) в 7 сообщении(ях)
FreshManGood на пути к лучшему
По умолчанию Re: Изучаем STM32 Cortex M3

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

Да фигня это всё! Зарядите пару простых примеров, подключите ЛА или цифровой осциллограф и поиграйтесь битами/регистрами. Без практики не будет ни понимания, ни результата.
STM32F0 вне форума  
Непрочитано 03.01.2015, 20:18  
Easyrider83
Гуру портала
 
Аватар для Easyrider83
 
Регистрация: 27.10.2008
Адрес: ЕС
Сообщений: 10,821
Сказал спасибо: 919
Сказали Спасибо 4,289 раз(а) в 2,570 сообщении(ях)
Easyrider83 на пути к лучшему
По умолчанию Re: Изучаем STM32 Cortex M3

Сообщение от FreshManGood Посмотреть сообщение
еще одно открытие
а где ж его взять то...., ткните носом
Учитесь гуглить
Вложения:
Тип файла: rar STM32F100 Reference Manual RM0041.rar (3.93 Мб, 39 просмотров)
Easyrider83 вне форума  
Непрочитано 03.01.2015, 20:20  
niXto
Почётный гражданин KAZUS.RUN
 
Аватар для niXto
 
Регистрация: 13.10.2007
Адрес: Беларусь
Сообщений: 8,026
Сказал спасибо: 60
Сказали Спасибо 3,941 раз(а) в 2,302 сообщении(ях)
niXto на пути к лучшему
По умолчанию Re: Изучаем STM32 Cortex M3

Учитесь давать прямые ссылки... http://www.st.com/web/en/resource/te...CD00246267.pdf
niXto вне форума  
Непрочитано 03.01.2015, 20:49  
STM32F0
Заблокирован
 
Регистрация: 22.04.2014
Сообщений: 0
Сказал спасибо: 15
Сказали Спасибо 366 раз(а) в 284 сообщении(ях)
STM32F0 на пути к лучшему
По умолчанию Re: Изучаем STM32 Cortex M3

Учитесь не поощрять лень!
STM32F0 вне форума  
Непрочитано 03.01.2015, 21:07  
FreshManGood
Временная регистрация
 
Регистрация: 24.11.2010
Сообщений: 82
Сказал спасибо: 20
Сказали Спасибо 7 раз(а) в 7 сообщении(ях)
FreshManGood на пути к лучшему
По умолчанию Re: Изучаем STM32 Cortex M3

именно с этого мануала я давал цитатту
посмотрите 441 страницу
это мануал не на конкретный камень а нав семейство !
FreshManGood вне форума  
Непрочитано 05.01.2015, 00:24  
С.М.С
Гражданин KAZUS.RUN
 
Аватар для С.М.С
 
Регистрация: 03.07.2010
Сообщений: 842
Сказал спасибо: 156
Сказали Спасибо 377 раз(а) в 189 сообщении(ях)
С.М.С на пути к лучшему
По умолчанию Re: Изучаем STM32 Cortex M3

Требуется настроить прерывание по таймеру. Прерывание происходит, но счёт идёт без учёта предделителя (36000), и программа зависает почти в постоянном срабатывание прерывания. Что не так указал?

Код:
//------------------------------------------
void Timer2_init(void)
{
/* TIM2 clock enable */
  RCC_APB1PeriphClockCmd(RCC_APB1Periph_TIM2, ENABLE);
	
  /* Time base configuration */
  TIM_TimeBaseStructure.TIM_Period = 20000;
  TIM_TimeBaseStructure.TIM_Prescaler = 36000;
  TIM_TimeBaseStructure.TIM_ClockDivision = 0;
  TIM_TimeBaseStructure.TIM_CounterMode = TIM_CounterMode_Up;
  TIM_TimeBaseInit(TIM2, &TIM_TimeBaseStructure);
	
	TIM_ITConfig(TIM2,  TIM_IT_Update, ENABLE);  
  /* TIM2 enable counter */
  TIM_Cmd(TIM2, ENABLE);

	
 	 /* Enable the TIM2 global Interrupt */
  NVIC_InitStructure.NVIC_IRQChannel = TIM2_IRQn;
  NVIC_InitStructure.NVIC_IRQChannelPreemptionPriori  ty = 0;
  NVIC_InitStructure.NVIC_IRQChannelSubPriority = 1;
  NVIC_InitStructure.NVIC_IRQChannelCmd = ENABLE;
  NVIC_Init(&NVIC_InitStructure);	
	 
}
//----------------------------------------------
а да МК STM32F101C4T6A
С.М.С вне форума  
Непрочитано 05.01.2015, 00:55  
omercury
Почётный гражданин KAZUS.RUN
 
Аватар для omercury
 
Регистрация: 25.05.2010
Адрес: г. Королёв
Сообщений: 8,487
Сказал спасибо: 30
Сказали Спасибо 3,070 раз(а) в 2,011 сообщении(ях)
omercury на пути к лучшему
По умолчанию Re: Изучаем STM32 Cortex M3

Попробуйте вместо этого вставить следующий код:
PHP код:
  RCC-›APB1ENR |= RCC_APB1ENR_TIM2EN;    //Тактирование Timer2
    TIM2-›PSC = 35999;                    //Настройка предделителя таймера
    TIM2-›ARR = 20000;                    //Загружаем число миллисекунд в регистр автоперезагрузки
    TIM2-›DIER |= TIM_DIER_UIE;            //Разрешаем прерывание при переполнении счетчика
//  TIM2-›CR1 |= TIM_CR1_ARPE ;         //использование буферного регистра для регистра автоматической перезагрузки TIMx_ARR
    TIM2-›CR1 |= TIM_CR1_CEN;            //Запускаем счет
 
    NVIC_SetPriority(TIM2_IRQn,1);
    NVIC_EnableIRQ (TIM2_IRQn); 
omercury вне форума  
Непрочитано 05.01.2015, 01:09  
С.М.С
Гражданин KAZUS.RUN
 
Аватар для С.М.С
 
Регистрация: 03.07.2010
Сообщений: 842
Сказал спасибо: 156
Сказали Спасибо 377 раз(а) в 189 сообщении(ях)
С.М.С на пути к лучшему
По умолчанию Re: Изучаем STM32 Cortex M3

тоже самое счётчик насчитывает за десяток операторов операторов

кстати сам обработчик

Код:
//====================Таймер задержки индикации дуги==================	
void TIM2_IRQHandler(void)
{
unsigned int Total_Show_bow_led = 0;
unsigned int Group_1_Show_bow_led = 0;
unsigned int Group_2_Show_bow_led = 0;
unsigned int Group_3_Show_bow_led = 0;
	
if (TIM_GetITStatus(TIM2, TIM_IT_Update) != RESET)
  {
TIM_ClearITPendingBit(TIM2, TIM_IT_Update);
		
Total_Show_bow_led = (Revolutions / 333);
	
if (Total_Show_bow_led ›=8){
		Group_1_Show_bow_led = 8; 
			
if (Total_Show_bow_led ‹ 16) Group_2_Show_bow_led = Total_Show_bow_led - 8; else Group_2_Show_bow_led = 8;
		
if (Total_Show_bow_led ›= 17) Group_3_Show_bow_led = Total_Show_bow_led - 16;
	}
else Group_1_Show_bow_led = Total_Show_bow_led;
	
//
if (Group_1_Show_bow_led ›=1){
Led_bow(1, Group_1_Show_bow_led);
PWM_Show_Delay(PWM_Show_Delay_On);	
Led_bow_all_off();}
		if (Group_2_Show_bow_led ›=1){
		Led_bow(2, Group_2_Show_bow_led);
		PWM_Show_Delay(PWM_Show_Delay_On);
		Led_bow_all_off();}
				if (Group_3_Show_bow_led ›=1){
				Led_bow(3, Group_3_Show_bow_led);
				PWM_Show_Delay(PWM_Show_Delay_On);
				Led_bow_all_off();}	
	
}
}

Последний раз редактировалось С.М.С; 05.01.2015 в 01:13.
С.М.С вне форума  
Непрочитано 05.01.2015, 01:25  
omercury
Почётный гражданин KAZUS.RUN
 
Аватар для omercury
 
Регистрация: 25.05.2010
Адрес: г. Королёв
Сообщений: 8,487
Сказал спасибо: 30
Сказали Спасибо 3,070 раз(а) в 2,011 сообщении(ях)
omercury на пути к лучшему
По умолчанию Re: Изучаем STM32 Cortex M3

Млин, ну очччень лениво ковырять дебри SPL...

Если ничего не путаю, вот это:
Цитата:
if (TIM_GetITStatus(TIM2, TIM_IT_Update) != RESET)
{
TIM_ClearITPendingBit(TIM2, TIM_IT_Update);
предназначено для сброса флага прерывания. Я его просто сбрасываю.

Цитата:
TIM2-›SR &= ~TIM_SR_UIF; //очистка флага прерывания
omercury вне форума  
 
Опции темы

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

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


Powered by vBulletin® Version 3.8.4
Copyright ©2000 - 2026, Jelsoft Enterprises Ltd.