реклама на сайте
подробности

 
 
> Генерация сигнала прямоугольной формы, реалиация линейного изменения
KSN
сообщение Aug 29 2008, 01:55
Сообщение #1


Местный
***

Группа: Свой
Сообщений: 404
Регистрация: 3-12-04
Из: Новосибирск
Пользователь №: 1 304



Необходимо генерить сигнал прямоугольной формы. Частота меняется линейно от 0 Гц до 200 кГц. Какие есть подходы для реализации?
Самое простое: использовать 2 таймера, таймер1 - остчитывает тики t, таймер2 - в режиме ШИМ с изменением периода(скважность постоянная). По каждому тику таймера один вычисляю частоту, записываю ее в таймер2(разрешаю для него прерывания, по срабатыванию которого период изменится). Есть одно но: допустим рассчитанная частота 100 Гц(10мс), а период таймера1 - 1 мс, получится, что таймер 1 в "холостую" отработает 10 тактов, на 10-ом вычислит новую частоту и запишет ее в таймер2. Как обойти это?
Go to the top of the page
 
+Quote Post
 
Start new topic
Ответов
rezident
сообщение Aug 29 2008, 01:57
Сообщение #2


Гуру
******

Группа: Свой
Сообщений: 10 920
Регистрация: 5-04-05
Пользователь №: 3 882



Сначала уточните с какой точностью нужно формировать частоту? Или это не периодическая частота, а сигналы произвольной длительности?
Go to the top of the page
 
+Quote Post
KSN
сообщение Aug 29 2008, 02:47
Сообщение #3


Местный
***

Группа: Свой
Сообщений: 404
Регистрация: 3-12-04
Из: Новосибирск
Пользователь №: 1 304



Цитата(rezident @ Aug 29 2008, 08:57) *
Сначала уточните с какой точностью нужно формировать частоту? Или это не периодическая частота, а сигналы произвольной длительности?

Точность формирования частоты может быть в пределах: от +-1 до +-10 Гц.

Цитата(igorenja @ Aug 29 2008, 09:20) *
Я бы взял маааленькую плисину подовал на неё значение частоты от МК.
200кГц на АВР сгенерировать достаточно гиморойно да и с плавностью регулировки частоты проблемы будут.

Генерация 200кГц для АВР не проблема.
Go to the top of the page
 
+Quote Post
Qwertty
сообщение Aug 29 2008, 05:14
Сообщение #4


Местный
***

Группа: Свой
Сообщений: 408
Регистрация: 21-10-06
Из: Санкт-Петербург
Пользователь №: 21 527



Цитата(KSN @ Aug 29 2008, 06:47) *
Точность формирования частоты может быть в пределах: от +-1 до +-10 Гц.
Генерация 200кГц для АВР не проблема.

Напрасно Вы так думаете. С помощью таймера на частоте 200КГц разрешение в +-10Гц получить не удастся. Вам даже разрешения в 1КГц не достичь.
Go to the top of the page
 
+Quote Post
KSN
сообщение Aug 29 2008, 05:48
Сообщение #5


Местный
***

Группа: Свой
Сообщений: 404
Регистрация: 3-12-04
Из: Новосибирск
Пользователь №: 1 304



Цитата(Qwertty @ Aug 29 2008, 12:14) *
Напрасно Вы так думаете. С помощью таймера на частоте 200КГц разрешение в +-10Гц получить не удастся. Вам даже разрешения в 1КГц не достичь.

Фраза "генерация 200кГц на АВР не проблема" относится только к возможности генерации такого сигнала. Линейно изменять с точностью 10Гц - да, невозможно. Буду рассматривать возможность изменения частоты с большим шагом.
Go to the top of the page
 
+Quote Post
rx3apf
сообщение Aug 29 2008, 08:29
Сообщение #6


Гуру
******

Группа: Участник
Сообщений: 3 834
Регистрация: 14-06-06
Из: Moscow, Russia
Пользователь №: 18 047



Цитата(KSN @ Aug 29 2008, 09:48) *
Фраза "генерация 200кГц на АВР не проблема" относится только к возможности генерации такого сигнала. Линейно изменять с точностью 10Гц - да, невозможно. Буду рассматривать возможность изменения частоты с большим шагом.

Возможно и 10 Hz, и 1 Hz, и даже доли Hz. Вот только форма при этом будет далека от меандра. Можно сделать извращенный вариант - программный DDS, фильтр, а потом поставить компаратор...
Go to the top of the page
 
+Quote Post
=GM=
сообщение Aug 29 2008, 09:13
Сообщение #7


Ambidexter
*****

Группа: Свой
Сообщений: 1 589
Регистрация: 22-06-06
Из: Oxford, UK
Пользователь №: 18 282



Цитата(rx3apf @ Aug 29 2008, 07:29) *
Возможно и 10 Hz, и 1 Hz, и даже доли Hz. Вот только форма при этом будет далека от меандра. Можно сделать извращенный вариант - программный DDS, фильтр, а потом поставить компаратор...

Почему же извращённый? Это единственный вариант на авр, дешёвый к тому же. Недавно прорабатывал вариант НЧ свип-генератора синусоидального сигнала 0,3 Гц-500кГц на таком принципе, пмсм получалось неплохо, правда, руки пока не дошли до реализации в железе. Частота выдачи самплов составляла 4000 кГц со скоростью перестройки частоты от 0.3 Гц и выше за период. Если без перестройки то можно было увеличить частоту выборки до 5000 кГц.


--------------------
Делай сразу хорошо, плохо само получится
Go to the top of the page
 
+Quote Post
rx3apf
сообщение Aug 29 2008, 11:59
Сообщение #8


Гуру
******

Группа: Участник
Сообщений: 3 834
Регистрация: 14-06-06
Из: Moscow, Russia
Пользователь №: 18 047



Цитата(=GM= @ Aug 29 2008, 13:13) *
Почему же извращённый? Это единственный вариант на авр, дешёвый к тому же.

Недостаток - при перестройке генерация прекращается. Ну и аналоговой обвески много - DAC и фильтр.


Цитата(Qwertty @ Aug 29 2008, 15:50) *
По другому тоже можно - генерить прямоугольник сразу, с частотой в два раза больше требуемой, затем внешним триггером делить на два. На прямоугольник не надо так много выборок как на синус. И меандр будет чище, чем после фильтра->компаратора.

Нельзя. Сигнал надо делать чистым, а если фаза будет дрожать (а без преобразования в синус и последующей фильтрации это неизбежно), то и после делителя картина останется прежней. Ничего, даже отдаленно напоминающего меандр, уже не получится. А вот через аналоговое преобразование - получится.
Go to the top of the page
 
+Quote Post
Qwertty
сообщение Aug 29 2008, 12:28
Сообщение #9


Местный
***

Группа: Свой
Сообщений: 408
Регистрация: 21-10-06
Из: Санкт-Петербург
Пользователь №: 21 527



Цитата(rx3apf @ Aug 29 2008, 15:59) *
Нельзя. Сигнал надо делать чистым, а если фаза будет дрожать (а без преобразования в синус и последующей фильтрации это неизбежно), то и после делителя картина останется прежней. Ничего, даже отдаленно напоминающего меандр, уже не получится. А вот через аналоговое преобразование - получится.

У меня и так получается нормально. Не знаю как насчет отдаленно, но я по осцилу от меандра сигнал после делителя отличить не могу.
Go to the top of the page
 
+Quote Post

Сообщений в этой теме
- KSN   Генерация сигнала прямоугольной формы   Aug 29 2008, 01:55
|- - KSN   Цитата(=GM= @ Aug 29 2008, 16:13) Почему ...   Aug 29 2008, 09:39
||- - =GM=   Базовая программа генерации синуса Кодloop: ...   Aug 29 2008, 09:58
||- - rx3apf   Цитата(=GM= @ Aug 29 2008, 13:58) Цикл ле...   Aug 29 2008, 12:06
||- - =GM=   Цитата(rx3apf @ Aug 29 2008, 11:06) А вот...   Aug 29 2008, 12:53
||- - rx3apf   Цитата(Qwertty @ Aug 29 2008, 16:28) У ме...   Aug 29 2008, 12:34
||- - Qwertty   Цитата(rx3apf @ Aug 29 2008, 16:34) Тогда...   Aug 29 2008, 12:48
||- - rx3apf   Цитата(Qwertty @ Aug 29 2008, 16:48) Сраз...   Aug 29 2008, 12:59
||- - Qwertty   Цитата(rx3apf @ Aug 29 2008, 16:59) И пос...   Aug 29 2008, 14:22
||- - rx3apf   Цитата(Qwertty @ Aug 29 2008, 18:22) Нет ...   Aug 29 2008, 14:30
||- - Qwertty   Цитата(rx3apf @ Aug 29 2008, 18:30) И есл...   Aug 29 2008, 14:45
|- - =GM=   Цитата(rx3apf @ Aug 29 2008, 10:59) Недос...   Aug 29 2008, 13:09
|- - rx3apf   Цитата(=GM= @ Aug 29 2008, 17:09) о не на...   Aug 29 2008, 13:14
|- - =GM=   Цитата(rx3apf @ Aug 29 2008, 12:14) А вот...   Aug 29 2008, 13:37
|- - rx3apf   Цитата(=GM= @ Aug 29 2008, 17:37) Ну, это...   Aug 29 2008, 13:42
- - igorenja   Цитата(KSN @ Aug 29 2008, 07:55) Необходи...   Aug 29 2008, 02:20
- - kamil yaminov   Можно на ГУНе каком-нить собрать без АВР и ПЛИСины   Aug 29 2008, 02:40
- - SasaVitebsk   +1 Если это единственная задача однокристалки, - т...   Aug 29 2008, 09:25
|- - =GM=   Цитата(SasaVitebsk @ Aug 29 2008, 08:25) ...   Aug 29 2008, 09:39
|- - AHTOXA   Цитата(=GM= @ Aug 29 2008, 15:39) Чтобы с...   Aug 29 2008, 10:11
|- - =GM=   Прозевали вы сообщение уважаемого rx3apf (пост #8)...   Aug 29 2008, 10:31
|- - Qwertty   Цитата(=GM= @ Aug 29 2008, 14:31) по-друг...   Aug 29 2008, 11:50
- - AHTOXA   Цитата(=GM= @ Aug 29 2008, 16:31) Прозева...   Aug 29 2008, 12:02
- - =GM=   Цитата(AHTOXA @ Aug 29 2008, 11:02) А, эт...   Aug 29 2008, 13:51


Reply to this topicStart new topic
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 


RSS Текстовая версия Сейчас: 20th July 2025 - 15:51
Рейтинг@Mail.ru


Страница сгенерированна за 0.01487 секунд с 7
ELECTRONIX ©2004-2016