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

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

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

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

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

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


 
Опции темы
Непрочитано 17.04.2014, 20:51  
Easyrider83
Гуру портала
 
Аватар для Easyrider83
 
Регистрация: 27.10.2008
Адрес: ЕС
Сообщений: 10,835
Сказал спасибо: 919
Сказали Спасибо 4,308 раз(а) в 2,573 сообщении(ях)
Easyrider83 на пути к лучшему
По умолчанию Re: FAQ по STM8

Я на TIM4 делал. Задержки с прерываниями нормально работают только с таймером. Надо на системном делать по науке, конечно.
Реклама:
Easyrider83 вне форума  
Непрочитано 18.04.2014, 07:40  
DK
Почётный гражданин KAZUS.RU
 
Аватар для DK
 
Регистрация: 10.05.2003
Адрес: Москва
Сообщений: 2,531
Сказал спасибо: 737
Сказали Спасибо 1,927 раз(а) в 799 сообщении(ях)
DK на пути к лучшему
По умолчанию Re: FAQ по STM8

Сообщение от Easyrider83 Посмотреть сообщение
Надо на системном делать
Вы о чем? Я не понимай! Где его взять, этот системный таймер? У меня только TIM1, TIM2 и TIM4. Ну еще собаки. Вы с STM32 не путаете?
__________________
Опыт - это школа, в которой человек узнает, каким дураком он был раньше.
DK вне форума  
Непрочитано 18.04.2014, 08:30  
eddy
Почётный гражданин KAZUS.RU
 
Аватар для eddy
 
Регистрация: 27.01.2005
Адрес: Россия, КЧР, Нижний Архыз
Сообщений: 3,630
Сказал спасибо: 115
Сказали Спасибо 814 раз(а) в 591 сообщении(ях)
eddy на пути к лучшему
По умолчанию Re: FAQ по STM8

Сообщение от DK Посмотреть сообщение
Вы с STM32 не путаете?
Путает. На STM8 нужно использовать тот таймер, который не нужен. У меня в делах, не связанных с подключением входов-выходов таймеров к ногам, использовался TIM1, а вот, скажем, в управлялке ШД (там TIM1, TIM2 и TIM3 используются для генерирования меандра с разной частотой — CLK на каждый из трех двигателей) в качестве системного используется TIM4.
__________________
Союз Советских Социалистических Округов Северной Америки
eddy на форуме  
Непрочитано 18.04.2014, 08:34  
dosikus
Гуру портала
 
Аватар для dosikus
 
Регистрация: 20.11.2004
Сообщений: 10,015
Сказал спасибо: 936
Сказали Спасибо 2,269 раз(а) в 1,563 сообщении(ях)
dosikus на пути к лучшему
По умолчанию Re: FAQ по STM8

DK, на любом таймере сделай декрементирующий счетчик в прерывании .
Загрузка и проверка в главном цикле . А там или в state machines или тупая задержка...

nixto, алаверды ...
__________________
Осторожно , злой кот
dosikus вне форума  
Непрочитано 18.04.2014, 10:25  
Easyrider83
Гуру портала
 
Аватар для Easyrider83
 
Регистрация: 27.10.2008
Адрес: ЕС
Сообщений: 10,835
Сказал спасибо: 919
Сказали Спасибо 4,308 раз(а) в 2,573 сообщении(ях)
Easyrider83 на пути к лучшему
По умолчанию Re: FAQ по STM8

dosikus, я врода выкладывал уже:
Код:
void delays_init (void)
{
  CLK-›PCKENR1 |= CLK_PCKENR1_TIM4;
  TIM4-›PSCR = TIM4_PRESCALER_16; //16MHz core frequency
  TIM4-›EGR |= TIM4_EGR_UG;
  TIM4-›CR1 = TIM4_CR1_CEN;
}

void delay_us (u8 us)
{
  TIM4-›CNTR = 0;
  while (TIM4-›CNTR ‹ us);  
}

void delay_ms (u16 ms)
{
  ms = ms‹‹2;
  while (ms--) delay_us(250);
Не забывайте менять прескалер. Должен от 1МГц работать.
Easyrider83 вне форума  
Непрочитано 18.04.2014, 10:49  
dosikus
Гуру портала
 
Аватар для dosikus
 
Регистрация: 20.11.2004
Сообщений: 10,015
Сказал спасибо: 936
Сказали Спасибо 2,269 раз(а) в 1,563 сообщении(ях)
dosikus на пути к лучшему
По умолчанию Re: FAQ по STM8

Я о вариации Systick :


Код:
int TimingDelay;

void delay_ms (uint16_t nTime)
{
  TimingDelay = nTime;

	while (TimingDelay);
		
  
}
Код:
extern int TimingDelay;

INTERRUPT void Tim4_update(void)

{
  TIM4-›SR1 &=~TIM4_SR1_UIF;  
  
  if (TimingDelay) {
    TimingDelay--;
	}
}
инит таймера опускаю...
__________________
Осторожно , злой кот
dosikus вне форума  
Непрочитано 18.04.2014, 20:48  
DK
Почётный гражданин KAZUS.RU
 
Аватар для DK
 
Регистрация: 10.05.2003
Адрес: Москва
Сообщений: 2,531
Сказал спасибо: 737
Сказали Спасибо 1,927 раз(а) в 799 сообщении(ях)
DK на пути к лучшему
По умолчанию Re: FAQ по STM8

У меня вот такое получилось (ну тут тупо задержки нужны, на энкодерах дребезг устранить).
Проверял от 50мкс до 1с - более-менее правильно считает (до 100мкс слегка косячит, да и х бы с ним, десяток нопов воткнуть).
[HTML]void delayus(uint32_t aa)
{
if(aa ›= 50000)
TIM1_TimeBaseInit(1600, TIM1_COUNTERMODE_DOWN,(uint16_t)(aa / 100), 0);
else if(aa ›= 1000)
TIM1_TimeBaseInit(15, TIM1_COUNTERMODE_DOWN,(uint16_t)aa, 0);
else if(aa › 100 && aa ‹ 1000)
TIM1_TimeBaseInit(13, TIM1_COUNTERMODE_DOWN, (uint16_t)aa, 0);
else if(aa ‹ 100)
TIM1_TimeBaseInit(10, TIM1_COUNTERMODE_DOWN, (uint16_t)aa, 0);
TIM1_Cmd(ENABLE);
while(!flagT1);
flagT1 = 0;
TIM1_Cmd(DISABLE);
}
[/HTML]

В прерывании только флаг выставляется. А ежели нужен будет основной цикл - переделаю на проверку этого флага.

Ну да, на 16МГц расчитано.
__________________
Опыт - это школа, в которой человек узнает, каким дураком он был раньше.

Последний раз редактировалось DK; 18.04.2014 в 20:50.
DK вне форума  
Непрочитано 18.04.2014, 20:52  
dosikus
Гуру портала
 
Аватар для dosikus
 
Регистрация: 20.11.2004
Сообщений: 10,015
Сказал спасибо: 936
Сказали Спасибо 2,269 раз(а) в 1,563 сообщении(ях)
dosikus на пути к лучшему
По умолчанию Re: FAQ по STM8

DK, Что за камень ? Есть же режим encoder для таймера .
__________________
Осторожно , злой кот
dosikus вне форума  
Непрочитано 18.04.2014, 21:01  
DK
Почётный гражданин KAZUS.RU
 
Аватар для DK
 
Регистрация: 10.05.2003
Адрес: Москва
Сообщений: 2,531
Сказал спасибо: 737
Сказали Спасибо 1,927 раз(а) в 799 сообщении(ях)
DK на пути к лучшему
По умолчанию Re: FAQ по STM8

Походу схемку прикидываю (пока все но отладочной крутится) - что там насчет подводных камней в схемотехнике? Без кондюка, как я понял, не работает. Ладно, есть у меня несколько по 1мкФ - насколько критична емкость? От 0.47 до 3.3 мкФ вроде написано, но вот из опыта?
Ногу сброса нужно на STM8S103F3 к питанию притягивать (видел на эту тему разные мнения)?

И еще один шкурный вопрос У меня STM8SVL-discovery (STM8S003). Будет егойный ST-LINK другие процы шить? На STM32 я не замахиваюсь пока Мне б с STM8 немного разобраться.
__________________
Опыт - это школа, в которой человек узнает, каким дураком он был раньше.
DK вне форума  
Непрочитано 18.04.2014, 21:10  
dosikus
Гуру портала
 
Аватар для dosikus
 
Регистрация: 20.11.2004
Сообщений: 10,015
Сказал спасибо: 936
Сказали Спасибо 2,269 раз(а) в 1,563 сообщении(ях)
dosikus на пути к лучшему
По умолчанию Re: FAQ по STM8

Сообщение от DK Посмотреть сообщение
Ногу сброса нужно на STM8S103F3 к питанию притягивать (видел на эту тему разные мнения)?
Нет не надо, только блокировочный конденсатор

Сообщение от DK
И еще один шкурный вопрос У меня STM8SVL-discovery (STM8S003). Будет егойный ST-LINK другие процы шить?
Только STM8x и будет. Но есть финт ушами - можно из твоего набортного STLink сделать полноценный STLink v2. Шить будет все ...

Сообщение от DK
На STM32 я не замахиваюсь пока Мне б с STM8 немного разобраться.
Режим encoder'а есть и в STM8 ...
__________________
Осторожно , злой кот
dosikus вне форума  
 

Закладки

Метки
arm, cortex, stm32, stm8
Опции темы

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

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

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

Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Импульсная зарядка для авто-аккумуляторов (новодел) Falconist Источники питания и свет 1915 14.03.2024 19:56
FAQ (ЧаВО) по PROTEUS для начинающих и не только dosikus Proteus 221 07.03.2024 22:45
STM8(S/L), первые впечатления kison STM8 1423 19.05.2018 19:23
Вопросы и замечания по топику - FAQ по PROTEUS avr123-nm-ru Proteus 291 05.06.2015 20:49
FAQ Импульсный трансформатор alberio Источники питания и свет 87 13.11.2012 18:07


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


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