Например TDA7294

Форум РадиоКот • Просмотр темы - Таймер не работает
Форум РадиоКот
Здесь можно немножко помяукать :)



Текущее время: Вс янв 26, 2020 18:45:20

Часовой пояс: UTC + 3 часа


ПРЯМО СЕЙЧАС:



Начать новую тему Ответить на тему  [ Сообщений: 235 ]  1, , , , ...  
Автор Сообщение
Не в сети
 Заголовок сообщения: Таймер не работает
СообщениеДобавлено: Чт дек 05, 2019 16:31:49 
Встал на лапы
Аватар пользователя

Зарегистрирован: Чт дек 05, 2019 16:28:11
Сообщений: 111
Откуда: Самара
Рейтинг сообщения: 0
На F427 работает. Сделал платку на f103c8t6, без внешних кварцов, все работает, а таймера нет, в обработчик прерывания не входит, как так, подскажите люди добрые

Код:
#include "stm32f1xx.h"


int main()
{
  RCC->APB2ENR |= RCC_APB2ENR_IOPCEN; // Разрешить тактирование PORTC
  RCC->APB1ENR |= RCC_APB1ENR_TIM2EN; //Разрешить тактирование TIM
  GPIOC->CRH |= GPIO_CRH_MODE15; // Вывод светодиодана выход.
  GPIOC->CRH &=~GPIO_CRH_CNF15; // Двухтактный выход
 
 //GPIOC->ODR |= 32768;
  RCC->APB1ENR |= RCC_APB1ENR_TIM2EN;
 

  TIM2->PSC = 80 - 1; // Настраиваем делитель что таймер тикал 1000 раз в секунду
  TIM2->ARR = 1000 ; // Чтоб прерывание случалось раз в секунду
  TIM2->DIER |= TIM_DIER_UIE; //разрешаем прерывание от таймера
  TIM2->CR1 |= TIM_CR1_CEN; // Начать отсчёт!
  NVIC_EnableIRQ(TIM2_IRQn); //Разрешение TIM2_IRQn прерывания
  while (1)
  {
  }

}

void TIM2_IRQHandler(void)
{
  TIM2->SR &= ~TIM_SR_UIF; //Сбрасываем флаг UIF
  GPIOC->ODR |= 32768; // зажечь светодиод
}


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: Таймер не работает
СообщениеДобавлено: Чт дек 05, 2019 17:59:16 
Собутыльник Кота
Аватар пользователя

Карма: 25
Рейтинг сообщений: 626
Зарегистрирован: Сб май 14, 2011 21:16:04
Сообщений: 2600
Откуда: г. Чайковский
Рейтинг сообщения: 0
Медали: 1
Получил миской по аватаре (1)
TEPEM писал(а):
в обработчик прерывания не входит
Код:
__enable_irq ();

_________________
Изображение
Добро всегда побеждает зло. Поэтому кто победил - тот и добрый.


Вернуться наверх
 
JLCPCB, всего $2 за прототип печатной платы! Цвет - любой!

Отличное качество, подтвержденное более чем 600,000 пользователей! Более 10,000 заказов в день.

Зарегистрируйтесь и получите два купона по 5$ каждый:https://jlcpcb.com/quote

Не в сети
 Заголовок сообщения: Re: Таймер не работает
СообщениеДобавлено: Чт дек 05, 2019 18:17:13 
Встал на лапы
Аватар пользователя

Зарегистрирован: Чт дек 05, 2019 16:28:11
Сообщений: 111
Откуда: Самара
Рейтинг сообщения: 0
Пробовал,без толку. Перед тем как сюда писать я всю ночь перебирал варианты.
Чтобы вы понимали, даже камень поменял на всякий
Не может же быть причина в отсутствии кварца, там же автоматом работает внутренний ген.


Вернуться наверх
 
PCBWay - всего $5 за 10 печатных плат, первый заказ для новых клиентов БЕСПЛАТЕН

Сборка печатных плат от $88 + БЕСПЛАТНАЯ доставка по всему миру + трафарет

Онлайн просмотровщик Gerber-файлов от PCBWay
Не в сети
 Заголовок сообщения: Re: Таймер не работает
СообщениеДобавлено: Чт дек 05, 2019 18:42:37 
Собутыльник Кота
Аватар пользователя

Карма: 25
Рейтинг сообщений: 626
Зарегистрирован: Сб май 14, 2011 21:16:04
Сообщений: 2600
Откуда: г. Чайковский
Рейтинг сообщения: 0
Медали: 1
Получил миской по аватаре (1)
TEPEM писал(а):
Пробовал,без толку.
Потом убрали разрешение прерываний? Не стоит :)

В startup поройтесь, точно от внур. кварца?
Пошаговая отладка работает?
Может в HardFault висите?
Включите светодиод сразу при входе в майн.
Помигайте светодиодом в тупом цикле.
Как узнали что таймер не работает?

_________________
Изображение
Добро всегда побеждает зло. Поэтому кто победил - тот и добрый.


Вернуться наверх
 
DC/DC-преобразователи: принципы работы и уникальные решения Maxim Integrated

Что нового можно сказать про DC/DC? Написаны десятки статей, а самостоятельное изготовление преобразователя мощностью от единиц Вт до нескольких кВт даже в домашних условиях не составляет большого труда. Тем не менее, когда речь идет о микро-, или даже нано-ваттах, проектировщик может столкнуться с рядом трудностей. Грамотная схемотехника системы питания не возможна без знания основ работы DC/DC преобразователей. Освежить базовые знания и узнать об особенностях проектирования узлов питания мобильного устройства с оптимальным энергопотреблением можно из следующей статьи.

Читать статьи>>
Не в сети
 Заголовок сообщения: Re: Таймер не работает
СообщениеДобавлено: Чт дек 05, 2019 18:47:44 
Встал на лапы
Аватар пользователя

Зарегистрирован: Чт дек 05, 2019 16:28:11
Сообщений: 111
Откуда: Самара
Рейтинг сообщения: 0
Начнем с того что я не много нуб.
Делаю в ИАР через китайский клон ст-линк,что там работает я не знаю если четно. До этого использовал отладочные платы.
Светодиод отдельно работает, мигал пустым циклом.
Остальное пойду гуглить


Вернуться наверх
 
Руководство для разработчика приложений на базе STM32WB55

Представив двухъядерные беспроводные микроконтроллеры STM32WB для IoT-приложений, компания STMicroelectronics предлагает разработчикам экосистему, включающую в себя отладочные платы, примеры кода для микроконтроллера, готовое ПО всех уровней и большой массив документации.

Читать статью>>
Не в сети
 Заголовок сообщения: Re: Таймер не работает
СообщениеДобавлено: Чт дек 05, 2019 18:51:02 
Собутыльник Кота
Аватар пользователя

Карма: 25
Рейтинг сообщений: 626
Зарегистрирован: Сб май 14, 2011 21:16:04
Сообщений: 2600
Откуда: г. Чайковский
Рейтинг сообщения: 0
Медали: 1
Получил миской по аватаре (1)
Поставьте точку останова на входе в майн и в обработчике прерываний. Пошагайте и поглядите что в регистрах реально. Если в никакую точку останова не попадаете, нажмите паузу и поглядите где-находитесь.

_________________
Изображение
Добро всегда побеждает зло. Поэтому кто победил - тот и добрый.


Вернуться наверх
 


Не в сети
 Заголовок сообщения: Re: Таймер не работает
СообщениеДобавлено: Чт дек 05, 2019 19:00:57 
Встал на лапы
Аватар пользователя

Зарегистрирован: Чт дек 05, 2019 16:28:11
Сообщений: 111
Откуда: Самара
Рейтинг сообщения: 0
Изображение
Я пытаюсь разобраться с отлалчиком, но либо смотрю не туда либо нужное окно не открыто(
CNT содержит некое число, значит он инкриминируется? Чего тоды может быть люди добрые
Если два раз паузу и плей нажать - падает в хард фаулт(


Вернуться наверх
 


Не в сети
 Заголовок сообщения: Re: Таймер не работает
СообщениеДобавлено: Чт дек 05, 2019 19:43:40 
Собутыльник Кота
Аватар пользователя

Карма: 25
Рейтинг сообщений: 626
Зарегистрирован: Сб май 14, 2011 21:16:04
Сообщений: 2600
Откуда: г. Чайковский
Рейтинг сообщения: 0
Медали: 1
Получил миской по аватаре (1)
В документе PM0056Programming manual есть описание регистров по которым можно вычислить причину исключения. Но мне кажется не стоит так глубоко пока копать.

TEPEM писал(а):
Светодиод отдельно работает, мигал пустым циклом.

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

_________________
Изображение
Добро всегда побеждает зло. Поэтому кто победил - тот и добрый.


Вернуться наверх
 
Распродажа паяльных станций ATTEN и аксессуаров!
Индукционная паяльная станция AT315D - 3 977 ₽, станция паяльная AT80D – 2177 ₽, станция паяльная AT936b – 1000 ₽!

Заходите в раздел акции и спецпредложения на сайте prist.ru, покупайте измерительные приборы, инструмент и паяльно-ремонтное оборудование по специальным ценам.
Не в сети
 Заголовок сообщения: Re: Таймер не работает
СообщениеДобавлено: Чт дек 05, 2019 19:51:22 
Встал на лапы
Аватар пользователя

Зарегистрирован: Чт дек 05, 2019 16:28:11
Сообщений: 111
Откуда: Самара
Рейтинг сообщения: 0
Все работает, мигает
Код:
#include "stm32f1xx.h"
int i,j;

int main()
{
  RCC->APB2ENR |= RCC_APB2ENR_IOPCEN; // Разрешить тактирование PORTC
  RCC->APB1ENR |= RCC_APB1ENR_TIM2EN; //Разрешить тактирование TIM
  GPIOC->CRH |= GPIO_CRH_MODE15; // Вывод светодиодана выход.
  GPIOC->CRH &=~GPIO_CRH_CNF15; // Двухтактный выход
 
 //GPIOC->ODR |= 32768;
  RCC->APB1ENR |= RCC_APB1ENR_TIM2EN;
 

  TIM2->PSC = 80 - 1; // Настраиваем делитель что таймер тикал 1000 раз в секунду
  TIM2->ARR = 1000 ; // Чтоб прерывание случалось раз в секунду
  TIM2->DIER |= TIM_DIER_UIE; //разрешаем прерывание от таймера
  TIM2->CR1 |= TIM_CR1_CEN; // Начать отсчёт!
  __enable_irq ();
  //NVIC_EnableIRQ(TIM2_IRQn); //Разрешение TIM2_IRQn прерывания
  while (1)
  {
      for(j = 0 ; j < 100000; j++) __NOP();
      if (i==0)
    {
      i=1;
       GPIOC->ODR |= 32768;
    }
     else
    {
     i=0;
       GPIOC->ODR &= ~32768;
    }
  }


}

/*void TIM2_IRQHandler(void)
{
   GPIOC->ODR |= 32768;
  TIM2->SR &= ~TIM_SR_UIF; //Сбрасываем флаг UIF
}*/


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: Таймер не работает
СообщениеДобавлено: Чт дек 05, 2019 19:52:18 
Держит паяльник хвостом
Аватар пользователя

Карма: 12
Рейтинг сообщений: 123
Зарегистрирован: Вт май 01, 2018 19:44:47
Сообщений: 953
Рейтинг сообщения: 0
Код:
extern "C" void TIM2_IRQHandler(void)
попробуй.

И это, startup то положил в проект? Судя по картинке - нет.


Последний раз редактировалось VladislavS Чт дек 05, 2019 19:53:53, всего редактировалось 1 раз.

Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: Таймер не работает
СообщениеДобавлено: Чт дек 05, 2019 19:53:19 
Собутыльник Кота
Аватар пользователя

Карма: 25
Рейтинг сообщений: 626
Зарегистрирован: Сб май 14, 2011 21:16:04
Сообщений: 2600
Откуда: г. Чайковский
Рейтинг сообщения: 0
Медали: 1
Получил миской по аватаре (1)
del

_________________
Изображение
Добро всегда побеждает зло. Поэтому кто победил - тот и добрый.


Последний раз редактировалось Z_h_e Чт дек 05, 2019 19:57:37, всего редактировалось 1 раз.

Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: Таймер не работает
СообщениеДобавлено: Чт дек 05, 2019 19:54:47 
Потрогал лапой паяльник
Аватар пользователя

Карма: 9
Рейтинг сообщений: 81
Зарегистрирован: Ср ноя 29, 2017 06:58:50
Сообщений: 364
Откуда: Липецк
Рейтинг сообщения: 0
но это мигание не по таймеру

_________________
ShowMessage ('Содержать ' Rec.Zver ' зоопарку не выгадно!'); (из орешника делфимастер.ру)


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: Таймер не работает
СообщениеДобавлено: Чт дек 05, 2019 19:57:53 
Встал на лапы
Аватар пользователя

Зарегистрирован: Чт дек 05, 2019 16:28:11
Сообщений: 111
Откуда: Самара
Рейтинг сообщения: 0
Мигает где то 0.75 сек, что такое стартап простите? Если вернуть строку с разрешением прерывания - не мигает, падает.
Вот эта строка - NVIC_EnableIRQ(TIM2_IRQn);
Даже без обработчика


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: Таймер не работает
СообщениеДобавлено: Чт дек 05, 2019 20:00:08 
Собутыльник Кота
Аватар пользователя

Карма: 25
Рейтинг сообщений: 626
Зарегистрирован: Сб май 14, 2011 21:16:04
Сообщений: 2600
Откуда: г. Чайковский
Рейтинг сообщения: 0
Медали: 1
Получил миской по аватаре (1)
VladislavS писал(а):
И это, startup то положил в проект?
Мне кажется что он положен, но по умолчанию на кварц настроен. Опять же вроде светодиод мигает...

_________________
Изображение
Добро всегда побеждает зло. Поэтому кто победил - тот и добрый.


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: Таймер не работает
СообщениеДобавлено: Чт дек 05, 2019 20:01:38 
Встал на лапы
Аватар пользователя

Зарегистрирован: Чт дек 05, 2019 16:28:11
Сообщений: 111
Откуда: Самара
Рейтинг сообщения: 0
Код:
extern "C" void TIM2_IRQHandler(void)
попробуй.

И это, startup то положил в проект? Судя по картинке - нет.


Ошибки не вызвало но все равно падает


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: Таймер не работает
СообщениеДобавлено: Чт дек 05, 2019 20:04:14 
Держит паяльник хвостом
Аватар пользователя

Карма: 12
Рейтинг сообщений: 123
Зарегистрирован: Вт май 01, 2018 19:44:47
Сообщений: 953
Рейтинг сообщения: 1
Мне кажется что он положен,
Положен говоришь? А картинку посмотреть? А это вот?
что такое стартап простите?


TEPEM, добавь этот файл в проект.


Вложения:
startup_iar_stm32f103x8.c [6.2 KiB]
Скачиваний: 17
Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: Таймер не работает
СообщениеДобавлено: Чт дек 05, 2019 20:08:38 
Встал на лапы
Аватар пользователя

Зарегистрирован: Чт дек 05, 2019 16:28:11
Сообщений: 111
Откуда: Самара
Рейтинг сообщения: 0
Спасибо братцы! Будте так добры, подскажите бедному нубу, что это за стартап и почему в F4х все без него работает????


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: Таймер не работает
СообщениеДобавлено: Чт дек 05, 2019 20:11:28 
Нашел транзистор. Понюхал.

Карма: 4
Рейтинг сообщений: 38
Зарегистрирован: Вс ноя 01, 2015 09:15:16
Сообщений: 188
Рейтинг сообщения: 0
здесь как минимум :
|= 32768;
...
&= ~32768;

а в первом только " |= 32768;"

что такое "Двухтактный выход" пока не знаю.

на это камень в сети миллион инитов TIM на все вкусы, зачем тащить с другого семейства?
а если тащишь - каждую сточку сверяй с RM целевого камня

ПС
"TIM2->PSC = 80 - 1;" - 1мс ?
какая по твоему частота на APB1


Последний раз редактировалось a797945 Чт дек 05, 2019 20:16:05, всего редактировалось 1 раз.

Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: Таймер не работает
СообщениеДобавлено: Чт дек 05, 2019 20:14:46 
Встал на лапы
Аватар пользователя

Зарегистрирован: Чт дек 05, 2019 16:28:11
Сообщений: 111
Откуда: Самара
Рейтинг сообщения: 0
а в первом только " |= 32768;"
Дык это еденичку в порт пишет, побитное сложение, а второй вычитание, типа стирает ее, нога светодиода. На f103 по другому как то делают?

Реально есть инициализация обходящая проблему с файлом этим? я вроде все перепробовал кроме тех где есть левые библиотеки

П.С.
Я уменьшил значения чтобы повысить шансы на вызов обработки, мало ли, через час бы вылезла, не считал


Последний раз редактировалось TEPEM Чт дек 05, 2019 20:18:28, всего редактировалось 2 раз(а).

Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: Таймер не работает
СообщениеДобавлено: Чт дек 05, 2019 20:15:09 
Собутыльник Кота
Аватар пользователя

Карма: 25
Рейтинг сообщений: 626
Зарегистрирован: Сб май 14, 2011 21:16:04
Сообщений: 2600
Откуда: г. Чайковский
Рейтинг сообщения: 0
Медали: 1
Получил миской по аватаре (1)
VladislavS писал(а):
Положен говоришь? А картинку посмотреть?
Откуда диззасеблер знает такие метки как HardFault? Они разве не из стартапа?

_________________
Изображение
Добро всегда побеждает зло. Поэтому кто победил - тот и добрый.


Вернуться наверх
 
Показать сообщения за:  Сортировать по:  Вернуться наверх
Начать новую тему Ответить на тему  [ Сообщений: 235 ]  1, , , , ...  

Часовой пояс: UTC + 3 часа


Кто сейчас на форуме

Сейчас этот форум просматривают: Ivanoff-iv и гости: 8


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

Найти:
Перейти:  


Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group
Русская поддержка phpBB
Extended by Karma MOD © 2007—2012 m157y
Extended by Topic Tags MOD © 2012 m157y