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

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

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

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

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

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


 
Опции темы
Непрочитано 15.11.2013, 22:18  
dosikus
Гуру портала
 
Аватар для dosikus
 
Регистрация: 20.11.2004
Сообщений: 10,015
Сказал спасибо: 936
Сказали Спасибо 2,269 раз(а) в 1,563 сообщении(ях)
dosikus на пути к лучшему
По умолчанию Re: STM32F05x TIM6 IRQ

artyomugr,


Код:
SysTick_Config(SystemCoreClock / 100); //1ms
Уверен ?
Короче прерывания будут через 10mS .

Далее через сколько секунд закончится сей цикл ?

Код:
if(++DATA›65500)	DATA=0;

	 Delay(1);
65500/100 = 655 S или 10 минут...
Реклама:
__________________
Осторожно , злой кот
dosikus вне форума  
Непрочитано 15.11.2013, 22:27  
artyomugr
Вид на жительство
 
Аватар для artyomugr
 
Регистрация: 05.04.2008
Адрес: Украина, Ахтырка
Сообщений: 302
Сказал спасибо: 148
Сказали Спасибо 31 раз(а) в 30 сообщении(ях)
artyomugr на пути к лучшему
По умолчанию Re: STM32F05x TIM6 IRQ

В проекте еще прерывания от другого таймера работает, как раз 10мс. А тут уже все ок.
ШИМ работает.
Получается при помощи регистра TIM14-›ARR можно задавать разрядность ШИМ , и повышать частоту? А можно на этом таймере , при исходной частоте , снизить частоту ШИМ, ну скажем до 200Гц ? По моему - нет. Верно?
artyomugr вне форума  
Непрочитано 15.11.2013, 22:30  
nahimovv
Заблокирован
 
Регистрация: 25.04.2013
Сообщений: 1,431
Сказал спасибо: 0
Сказали Спасибо 385 раз(а) в 254 сообщении(ях)
nahimovv на пути к лучшему
По умолчанию Re: STM32F05x TIM6 IRQ

Рекомендую чтиво для понимания происходящего:
http://www.st.com/st-web-ui/static/a...DM00042534.pdf
nahimovv вне форума  
Сказали "Спасибо" nahimovv
artyomugr (15.11.2013)
Непрочитано 15.11.2013, 22:32  
dosikus
Гуру портала
 
Аватар для dosikus
 
Регистрация: 20.11.2004
Сообщений: 10,015
Сказал спасибо: 936
Сказали Спасибо 2,269 раз(а) в 1,563 сообщении(ях)
dosikus на пути к лучшему
По умолчанию Re: STM32F05x TIM6 IRQ

artyomugr, Измени и пробуй .
Код:
TIM14-›ARR = 6550-1; 
...
SysTick_Config(SystemCoreClock / 1000);

....
if(++DATA›6550)	DATA=0;

	 Delay(1);
__________________
Осторожно , злой кот
dosikus вне форума  
Непрочитано 15.11.2013, 22:41  
artyomugr
Вид на жительство
 
Аватар для artyomugr
 
Регистрация: 05.04.2008
Адрес: Украина, Ахтырка
Сообщений: 302
Сказал спасибо: 148
Сказали Спасибо 31 раз(а) в 30 сообщении(ях)
artyomugr на пути к лучшему
По умолчанию Re: STM32F05x TIM6 IRQ

А при чем системный таймер к ШИМу 14-го таймера?
Вопросик, последний можно сделать маленькую частоту ШИМ? Порядка 200Гц ? И сделать на 14 таймере и не меняя тактовой частоты.
artyomugr вне форума  
Непрочитано 15.11.2013, 22:45  
dosikus
Гуру портала
 
Аватар для dosikus
 
Регистрация: 20.11.2004
Сообщений: 10,015
Сказал спасибо: 936
Сказали Спасибо 2,269 раз(а) в 1,563 сообщении(ях)
dosikus на пути к лучшему
По умолчанию Re: STM32F05x TIM6 IRQ

Сообщение от artyomugr Посмотреть сообщение
А при чем системный таймер к ШИМу 14-го таймера?
ТЫ изменил? И каков результат?
Сообщение от artyomugr Посмотреть сообщение
Вопросик, последний можно сделать маленькую частоту ШИМ? Порядка 200Гц ? И сделать на 14 таймере и не меняя тактовой частоты.
Читай на тему
17.4.8 TIM14 prescaler (TIM14_PSC)
__________________
Осторожно , злой кот
dosikus вне форума  
Непрочитано 15.11.2013, 23:54  
artyomugr
Вид на жительство
 
Аватар для artyomugr
 
Регистрация: 05.04.2008
Адрес: Украина, Ахтырка
Сообщений: 302
Сказал спасибо: 148
Сказали Спасибо 31 раз(а) в 30 сообщении(ях)
artyomugr на пути к лучшему
По умолчанию Re: STM32F05x TIM6 IRQ

Дааа, спасибо большое! Проверил, и в правду от системного таймера зависит тактовая всех узлов..

Читал тут: http://chipspace.ru/stm32-systick/
И в последствии подумал что этот счетчик не влияет на периферию... А только служит как дополнительный , для обновления данных и прочих задач.
artyomugr вне форума  
Непрочитано 16.11.2013, 00:02  
dosikus
Гуру портала
 
Аватар для dosikus
 
Регистрация: 20.11.2004
Сообщений: 10,015
Сказал спасибо: 936
Сказали Спасибо 2,269 раз(а) в 1,563 сообщении(ях)
dosikus на пути к лучшему
По умолчанию Re: STM32F05x TIM6 IRQ

Сообщение от artyomugr Посмотреть сообщение
Дааа, спасибо большое! Проверил, и в правду от системного таймера зависит тактовая всех узлов..
Гы... Ты так и не понял в чем прикол?

Systick не влияет на таймеры никаким х...
и тем более на тактирование периферии.

Код:
  while (1)
  {
	
TIM14-›CCR1=DATA;
if(++DATA›65500)DATA=0;

	 Delay(1);


   }
}
Зато офигенно влиял на сей цикл . Вместо задержки на 1mS у тебя получалась задержка на 10mS .
А счет от 0 до 65500 проходил за 655 секунд.
Ты просто бы зае..ся ждать когда он завершится...
__________________
Осторожно , злой кот

Последний раз редактировалось dosikus; 16.11.2013 в 00:05.
dosikus вне форума  
Непрочитано 16.11.2013, 00:11  
artyomugr
Вид на жительство
 
Аватар для artyomugr
 
Регистрация: 05.04.2008
Адрес: Украина, Ахтырка
Сообщений: 302
Сказал спасибо: 148
Сказали Спасибо 31 раз(а) в 30 сообщении(ях)
artyomugr на пути к лучшему
По умолчанию Re: STM32F05x TIM6 IRQ

А вот и не так!

При такой конфигурации, ШИМ напрочь отказывается работать!

Цитата:
TIM14-›ARR = 0xFFFF;
TIM14-›CCR1 = 0x000F;
TIM14-›PSC = 0xFFFF;
Моя цель - сделать максимально низкую частоту ШИМ . Порядка 200Гц
Системный таймер почему то влияет на частоту прерывания таймера.

Цитата:
void TIM6_DAC_IRQHandler(void)
{
static volatile uint32_t ulTim6Cnt;


if (TIM6-›SR & TIM_SR_UIF)
{
TIM6-›SR &= ~TIM_SR_UIF;
indication_func();
}
}
При повышении частоты системного , 6 таймер вместо (1.2*3) кГц начинает генерить прерывание (2.28*3) кГц

Меняю с этого:

Цитата:
SysTick_Config(SystemCoreClock / 10);
на это:

Цитата:
SysTick_Config(SystemCoreClock / 1000);
Так как овцеллографа нет - меряю частотомером.
PS: В скором будущем планирую купить

Последний раз редактировалось artyomugr; 16.11.2013 в 00:18.
artyomugr вне форума  
Непрочитано 16.11.2013, 00:27  
artyomugr
Вид на жительство
 
Аватар для artyomugr
 
Регистрация: 05.04.2008
Адрес: Украина, Ахтырка
Сообщений: 302
Сказал спасибо: 148
Сказали Спасибо 31 раз(а) в 30 сообщении(ях)
artyomugr на пути к лучшему
По умолчанию Re: STM32F05x TIM6 IRQ

Классный ШИМ у STM-ок!!!!!!!!!! Сумасшедший диапазон частот!
artyomugr вне форума  
 

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

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

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

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

Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
stm32 после старта TIM6 сразу прерывание kvark85 ARM 8 04.07.2013 11:22
Комп "видит" винт только после повторной загрузки malkoff2007 Ремонт оргтехники 199 22.10.2011 10:05


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


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