xoromdor
1

Захват и переполнение TIM2

25.08.2017, 19:13. Показов 3965. Ответов 1
Метки нет (Все метки)

STM8S003F3P6. IAR Stomdalone license 8K. ST-LINK V2.

Измеряю длительность периода с помощью таймера 2. Используется захват и переполнение. Длительность периода вычисляется по формуле: T=((OVF*65536)+CCR)-oldCCR;
Измеряет замечательно, но заметил, иногда, результат зашкаливает. Например, вместо 0x00007E08 вылезает 0xFFFF7E08, хотя на входе захвата постоянно меиндр 500 Гц. Стал разбираться, обнаружилось, что если во время отработки прерывания по захвату возникает переполнение таймера, то отработка этого переполнения может потеряться. т.е. процедура захвата завершается, а процедура переполнения не начинается. Либо наоборот, если во время отработки процедуры прерывания по переполнению возникает захват, то он также теряется. Так же не должно быть. Может кто сталкивался? Голову сломал уже. Понятное дело, возникает мысль, что в процедурах прерывания сбрасываются все флаги запросов и та процедура, которая висит в ожидании - теряется. Но флаги сбрасываются в каждой процедуре свой так: TIM2_SR1_bit.UIF=0; и так: TIM2_SR1_bit.CC1IF=0; Приоритеты не трогал.

Помощь в написании контрольных, курсовых и дипломных работ здесь.

Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
25.08.2017, 19:13
Ответы с готовыми решениями:

помогите с TIM2
привет, Начал изучать STM32 на примере STM32VLDyscover И вот добрался до таймеров. Решил сделать...

Прерывание от TIM2
Добрый день. Всплыла такая проблемка, что при инициализации NVIC void InteruptTIM2(void) { /*...

STM8S + TIM2 +PWM
День добрый, господа. Возник вопрос. Сначала что сделал и в чем проблема: Настроил TIM2_CH1 вывод...

Проблема с таймером TIM2
Добрый день! Нужна ваша помощь. Проблема в том, что в режиме отладки, сразу после включения...

1
xoromdor
01.09.2017, 08:32 2
оказывается при чтении регистра захвата флаг запроса прерывания захвата, если он был выставлен, снимается автоматически. как только я принял это к сведению, все стало на свои места самым замечательным образом.
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
01.09.2017, 08:32

TIM2 по сравнению -> в прерывание
Нужно по сравнению таймера выпасть в прерывание и дернуть ногой //описываю прерывание void...

Прерывание таймера TIM2
Начал потихоньку разбираться в STM32. Сконфигурировал прерывание таймера 2 с частотой 1Гц (1...

таймера TIM2,3,4 F205, непонятки в работе (сбивается период)
Заметил, что сбивается время периодов таймеров, после некоторого времени работы, причём это время...

Захват звука
Надо захватить звук в буфер для анализа. Ёмкость буфера искуственно ограничить и хранить в нём...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
2
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2021, vBulletin Solutions, Inc.