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

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

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

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

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

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


Закрытая тема
 
Опции темы
Старый 20.11.2014, 01:12   #11
omercury
Почётный гражданин KAZUS.RU
 
Аватар для omercury
 
Регистрация: 25.05.2010
Адрес: г. Королёв
Сообщений: 8,497
Сказал спасибо: 30
Сказали Спасибо 3,072 раз(а) в 2,013 сообщении(ях)
omercury на пути к лучшему
По умолчанию Re: Прерывание по переполнению Т2

У меня поначалу ругалось на
Цитата:
TIM_TimeBaseInitTypeDef TIM_TimeInitStructure;
, пока от руки инит таймера не переписал. Перебирать 200 килобайт из SPL меня что-то сломало.
Реклама:
omercury вне форума  
Старый 20.11.2014, 09:26   #12
Jeka_T
Частый гость
 
Регистрация: 15.04.2008
Адрес: Йошкар-Ола
Сообщений: 39
Сказал спасибо: 47
Сказали Спасибо 3 раз(а) в 3 сообщении(ях)
Jeka_T на пути к лучшему
По умолчанию Re: Прерывание по переполнению Т2

Сообщение от fox327 Посмотреть сообщение
#include ‹stm32f10x.h›
#include ‹stm32f10x_conf.h›
#include ‹stm32f10x_rcc.h›
#include ‹stm32f10x_gpio.h›
#include ‹stm32f10x_tim.h›


int main(void)
{


RCC_DeInit();
RCC-›CFGR &= ~RCC_CFGR_PLLSRC; //Источником сигнала для PLL выбран HSI с делением на 2
RCC-›CR &= ~RCC_CR_PLLON; //Отключить генератор PLL
RCC-›CFGR &= ~RCC_CFGR_PLLMULL; //Очистить PLLMULL
RCC-›CFGR |= RCC_CFGR_PLLMULL6; //Коефициент умножения = 6
RCC-›CR |= RCC_CR_PLLON; //Включить генератор PLL

//Переключиться на тактирование от PLL
RCC-›CFGR &= ~RCC_CFGR_SW; //Очистка битов выбора источника тактового сигнала
RCC-›CFGR |= RCC_CFGR_SW_PLL; //Выбрать источником тактового сигнала PLL
while((RCC-›CFGR&RCC_CFGR_SWS)!=0x0 //Ожидание переключения на PLL
{}


GPIO_InitTypeDef GPIO_InitStructure ;
RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOB , ENABLE);
GPIO_InitStructure.GPIO_Pin = GPIO_Pin_1;
GPIO_InitStructure.GPIO_Mode = GPIO_Mode_Out_PP;
GPIO_InitStructure.GPIO_Speed = GPIO_Speed_10MHz;
GPIO_Init(GPIOB , &GPIO_InitStructure);

TIM_TimeBaseInitTypeDef TIM_TimeInitStructure;
RCC_APB1PeriphClockCmd(RCC_APB1Periph_TIM2, ENABLE);
TIM_TimeInitStructure.TIM_Prescaler=8000;
TIM_TimeInitStructure.TIM_Period=1000;
TIM_TimeBaseInit(TIM2,&TIM_TimeInitStructure);
TIM_ITConfig(TIM2, TIM_IT_Update, ENABLE); //прерывание по переполнению

TIM_Cmd(TIM2,ENABLE); //включение таймера


NVIC_SetPriority(TIM2_IRQn,1);
NVIC_EnableIRQ (TIM2_IRQn);


while(1)
{}

}

//прерывание по переполнению
void TIM2_IRQHandler(void)
{
TIM_ClearITPendingBit(TIM2, TIM_IT_Update);//очистка флага прерывания
GPIOB-›ODR^=GPIO_ODR_ODR1;

}
код рабочий, проверьте настройки проекта в кокосе
Jeka_T вне форума  
Старый 20.11.2014, 10:00   #13
SasaVitebsk
Гражданин KAZUS.RU
 
Регистрация: 04.08.2006
Сообщений: 911
Сказал спасибо: 28
Сказали Спасибо 180 раз(а) в 139 сообщении(ях)
SasaVitebsk на пути к лучшему
По умолчанию Re: Прерывание по переполнению Т2

SPL, конечно, сильная вещь. У Вас написано следующее:
Код:
  // Инициализация таймера меток времени
  TIM3-›PSC = (APB1FCLK*2/1000000)-1;											// Прескалер APB1FCLK МГц / 1000000 = 1 МГц = 1 мкс
  TIM3-›ARR = 1000-1;															// Прерывания 1 мс
  TIM3-›DIER = TIM_DIER_UIE;													// Разрешить прерывание 1 мс
  TIM3-›CR1 = TIM_CR1_CEN | TIM_CR1_ARPE;										// Включить таймер с перезагрузкой
В прерывании примерно следующее
Код:
void TIM3_IRQHandler(void)
{
  int32_t		tblink;

  TIM3-›SR = 0; // Сбросить все флаги
...
}
SasaVitebsk вне форума  
Старый 20.11.2014, 10:01   #14
dgrishin
Почётный гражданин KAZUS.RU
 
Регистрация: 12.02.2013
Сообщений: 1,032
Сказал спасибо: 43
Сказали Спасибо 273 раз(а) в 214 сообщении(ях)
dgrishin на пути к лучшему
По умолчанию Re: Прерывание по переполнению Т2

Сообщение от fox327 Посмотреть сообщение
Почему-то не входит в прерывание по переполнению. Светодиод горит
постоянно. Кто может-объясните в чём ошибка. МК-STM32F100,
среда CooCox.
}
Я не увидел глобального разрешения прерываний в вашей программе.
__enable_irq ();
dgrishin вне форума  
Сказали "Спасибо" dgrishin
fox327 (20.11.2014)
Старый 20.11.2014, 11:35   #15
fox327
Временная регистрация
 
Регистрация: 19.08.2010
Сообщений: 94
Сказал спасибо: 8
Сказали Спасибо 35 раз(а) в 25 сообщении(ях)
fox327 на пути к лучшему
По умолчанию Re: Прерывание по переполнению Т2

__enable_irq ();-всё заработало. Самому приходила мысль о том, что ,наверное,
должно быть глобальное разрешение прерываний, но нигде прочитать об этом
не удалось. Всем спасибо.
fox327 вне форума  
Старый 20.11.2014, 22:32   #16
fox327
Временная регистрация
 
Регистрация: 19.08.2010
Сообщений: 94
Сказал спасибо: 8
Сказали Спасибо 35 раз(а) в 25 сообщении(ях)
fox327 на пути к лучшему
По умолчанию Re: Прерывание по переполнению Т2

Рано радовался. Заработало С таймером 7 и 6 и без _enable irq().
А с таймером 2-и с _enable irq().-нет.
fox327 вне форума  
Старый 20.11.2014, 22:40   #17
dosikus
Гуру портала
 
Аватар для dosikus
 
Регистрация: 20.11.2004
Сообщений: 10,015
Сказал спасибо: 936
Сказали Спасибо 2,269 раз(а) в 1,563 сообщении(ях)
dosikus на пути к лучшему
По умолчанию Re: Прерывание по переполнению Т2

Сообщение от dgrishin Посмотреть сообщение
Я не увидел глобального разрешения прерываний в вашей программе.
__enable_irq ();
Позвольте узнать - вы веткой с AVR не спутали ?????
__________________
Осторожно , злой кот
dosikus вне форума  
Старый 20.11.2014, 22:41   #18
dosikus
Гуру портала
 
Аватар для dosikus
 
Регистрация: 20.11.2004
Сообщений: 10,015
Сказал спасибо: 936
Сказали Спасибо 2,269 раз(а) в 1,563 сообщении(ях)
dosikus на пути к лучшему
По умолчанию Re: Прерывание по переполнению Т2

Сообщение от fox327 Посмотреть сообщение
А с таймером 2-и с _enable irq().-нет.
STM32VL дискавери ?
__________________
Осторожно , злой кот
dosikus вне форума  
Старый 20.11.2014, 22:43   #19
fox327
Временная регистрация
 
Регистрация: 19.08.2010
Сообщений: 94
Сказал спасибо: 8
Сказали Спасибо 35 раз(а) в 25 сообщении(ях)
fox327 на пути к лучшему
По умолчанию Re: Прерывание по переполнению Т2

Нет, просто самопальная плата с МК.
fox327 вне форума  
Старый 20.11.2014, 22:51   #20
dosikus
Гуру портала
 
Аватар для dosikus
 
Регистрация: 20.11.2004
Сообщений: 10,015
Сказал спасибо: 936
Сказали Спасибо 2,269 раз(а) в 1,563 сообщении(ях)
dosikus на пути к лучшему
По умолчанию Re: Прерывание по переполнению Т2

fox327, код отсюда запустить и проверить https://kazus.ru/forums/showpost.php...58&postcount=6
__________________
Осторожно , злой кот
dosikus вне форума  
Закрытая тема

Закладки


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

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

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

Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
stm32 после старта TIM6 сразу прерывание kvark85 ARM 8 04.07.2013 11:22
Непонятное прерывание stm32 sosedi ARM 17 20.02.2013 22:38
Мега88 внешнее прерывание по низкому уровню E_C_C Proteus 0 06.09.2012 11:47
MEGA16 прерывания по переполнению TIMR1 tems-ya Proteus 3 01.04.2010 18:34
не обрабатывается прерывание от таймера во время АЦП rusakov_a Микроконтроллеры, АЦП, память и т.д 0 03.07.2008 01:33


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


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