roboforum.ru

Технический форум по робототехнике.
Текущее время: 18 фев 2025, 18:24

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




Начать новую тему Ответить на тему  [ Сообщений: 24 ]  На страницу Пред.  1, 2
Автор Сообщение
 Заголовок сообщения: Re: генератор частоты и скважности одновременно на атмеге8
СообщениеДобавлено: 28 фев 2013, 12:38 
Не в сети
Аватара пользователя

Зарегистрирован: 15 сен 2007, 13:03
Сообщения: 6338
Откуда: Красноярск
прог. языки: ASM(МК), C(PC)
ФИО: Гагарский Андрей Александрович
чип то у тебя какой?

_________________
«Как сердцу выразить себя? … Мысль изреченная есть ложь!»
В этом мире меня подводит доброта и порядочность...
"двое смотрят в лужу, один видит лужу, другой отраженные в ней звезды"


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: генератор частоты и скважности одновременно на атмеге8
СообщениеДобавлено: 28 фев 2013, 12:42 
Не в сети

Зарегистрирован: 07 авг 2010, 21:29
Сообщения: 1725
Откуда: КМВ
прог. языки: C
ФИО: Андрей
#define ClockHZ XX //Частота в герцах
Устанавливаем нужную частоту...

_________________
Дым, идущий из всех устройств в помещении предвещает появление электрика.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: генератор частоты и скважности одновременно на атмеге8
СообщениеДобавлено: 28 фев 2013, 20:42 
Не в сети
Аватара пользователя

Зарегистрирован: 08 дек 2009, 19:21
Сообщения: 404
Откуда: Й-Ола
вы хотите сказать что если написать

#define ClockHZ 1300000 //Частота в герцах

то мега 8 затикает с этой частотой?
А фьюзы как выставлять?

_________________
Ваш IP-адрес 85.140.5.459 был внесён в черный список и заблокирован. Для получения дополнительной информации перейдите по ссылке http://www.spamhaus.org/query/bl?ip=85.140.5.459.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: генератор частоты и скважности одновременно на атмеге8
СообщениеДобавлено: 01 мар 2013, 14:17 
Не в сети

Зарегистрирован: 07 авг 2010, 21:29
Сообщения: 1725
Откуда: КМВ
прог. языки: C
ФИО: Андрей
На 13 мегагерц? Не затикает. По крайней мере ардуинка с кварцем на 16 Mhz. Просто не будет успевать отрабатывать прерывание. Для такой частоты надо либо брать МК побыстрее - либо строить внешний генератор на логике с задающим генератором на 100 Mhz и управлять его делителем.

Добавлено спустя 3 часа 36 минут 39 секунд:
Код:
ISR(TIMER2_OVF_vect) {
//Проверим счетчик TickCount
if (TickCount==0) {
if (digitalRead(TOGGLE_IO)) //Проверим состояние выхода, если 1 - то
    { TickCount=Tick0; digitalWrite(TOGGLE_IO,LOW); }//Переключение IO-вывода в другое состояние.}
else { TickCount=Tick1;
digitalWrite(TOGGLE_IO,HIGH); }//Переключение IO-вывода в другое состояние.
}

  //проверяем - больше ли счетчик целого чикла (255)
  if (TickCount<255) {
     TCNT2=256-TickCount+TCNT2;
     TickCount=0;} //Компенсация того, что натикало.
  else {
  TickCount-=256;}

latency=TCNT2;

Вот это вот занимает около 90 тактов... Если оптимизировать - можно достичь требуемой частоты - но все ж вряд ли...

_________________
Дым, идущий из всех устройств в помещении предвещает появление электрика.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: генератор частоты и скважности одновременно на атмеге8
СообщениеДобавлено: 01 мар 2013, 14:42 
Не в сети

Зарегистрирован: 27 авг 2008, 10:45
Сообщения: 1981
Откуда: Харьков
прог. языки: С/С++
Народ, че-то вы хотите человека запутать и напугать зазря, как по-моему. Ну есть же в меге8 режим ШИМ с произвольной частотой, называется Phase and Frequency Correct PWM.
Код:
TCCR1A = (1<<COM1A1);
TCCR1B = (1<<WGM13)|(1<<CS10);


в ICR1 пишем период, например хотим частоту 130 кГц - пишем 16000/130 = 123. Получим 16000/123 = 130.0813 кГц. Шаг перестройки частоты - меньше 1%, для контура с добротностью не выше 50 пойдет :)

в OCR1A пишем число от 0 до значения ICR1. Получаем разную скважность, заполнение от 0 до 100%.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: генератор частоты и скважности одновременно на атмеге8
СообщениеДобавлено: 01 мар 2013, 16:01 
Не в сети
Аватара пользователя

Зарегистрирован: 15 сен 2007, 13:03
Сообщения: 6338
Откуда: Красноярск
прог. языки: ASM(МК), C(PC)
ФИО: Гагарский Андрей Александрович
а я вот только доку открыл, думал вспомнить вечером как оно называется...

_________________
«Как сердцу выразить себя? … Мысль изреченная есть ложь!»
В этом мире меня подводит доброта и порядочность...
"двое смотрят в лужу, один видит лужу, другой отраженные в ней звезды"


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: генератор частоты и скважности одновременно на атмеге8
СообщениеДобавлено: 01 мар 2013, 16:28 
Не в сети

Зарегистрирован: 07 авг 2010, 21:29
Сообщения: 1725
Откуда: КМВ
прог. языки: C
ФИО: Андрей
Учиться мне еще и учиться. Видно недостаточно усердно курил даташит.

_________________
Дым, идущий из всех устройств в помещении предвещает появление электрика.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: генератор частоты и скважности одновременно на атмеге8
СообщениеДобавлено: 01 мар 2013, 16:41 
Не в сети

Зарегистрирован: 27 авг 2008, 10:45
Сообщения: 1981
Откуда: Харьков
прог. языки: С/С++
Ой, а я оказывается недочитал задачу :) Спрашивали-то про таймер 2. На нем нельзя получается - либо режим CTC, в котором нельзя рулить скважностью, либо PWM в котором период всегда 256. Извиняюсь за невнимательность.

На прерываниях я бы делал так: режим CTC, ногу в режим toggle, и в прерывании смотреть на текущее состояние ноги (вкл/выкл) и подсовывать длительность следующего импульса или паузы в OCR2.

Но для контура мне кажется лучше забрать таймер 1. Чем он щас занят-то? Может его задачу проще программно или на таймере 2 сделать?


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: генератор частоты и скважности одновременно на атмеге8
СообщениеДобавлено: 01 мар 2013, 19:49 
Не в сети
Аватара пользователя

Зарегистрирован: 08 дек 2009, 19:21
Сообщения: 404
Откуда: Й-Ола
Фантастика.

У меня нет слов чтобы выразить свою благодарность. :Yahoo!:

_________________
Ваш IP-адрес 85.140.5.459 был внесён в черный список и заблокирован. Для получения дополнительной информации перейдите по ссылке http://www.spamhaus.org/query/bl?ip=85.140.5.459.


Вернуться к началу
 Профиль  
 
Показать сообщения за:  Поле сортировки  
Начать новую тему Ответить на тему  [ Сообщений: 24 ]  На страницу Пред.  1, 2

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


Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 0


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

Найти:
Перейти:  
cron
Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group
Русская поддержка phpBB
phpBB SEO