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

 
 
> Программное изменение CLK AVR
Валентиныч
сообщение Nov 3 2006, 10:08
Сообщение #1


Профессионал
****

Группа: Свой
Сообщений: 553
Регистрация: 17-02-05
Из: Свердловская обл.
Пользователь №: 2 712



Требуется программно изменять тактовую частоту контроллера (Мега8-Мега64). Допустим - от 6.0 МГц до 12.0 МГц, дискретно, с шагом ~100-200 кГц. Стабилизация частоты, естественно, кварцем.
Может быть кто-то уже решал подобную задачу?
Есть ли специализированные МС типа синтезаторов на эти частоты? Важно, чтобы можно было задавать частоту (коэффициенты предделителя синтезатора) именно тем контроллером, который и будет тактироваться синтезатором.


--------------------
Закономерность: Чем больше узнаю, тем меньше знаю...
Любые мнения, даже ошибочные, имеют право на существование.
Чем лучше узнаю людей, тем больше нравятся собаки...
Go to the top of the page
 
+Quote Post
2 страниц V   1 2 >  
Start new topic
Ответов (1 - 24)
klop
сообщение Nov 3 2006, 10:23
Сообщение #2


Местный
***

Группа: Свой
Сообщений: 433
Регистрация: 28-02-06
Пользователь №: 14 788



Цитата(Валентиныч @ Nov 3 2006, 13:08) *
Требуется программно изменять тактовую частоту контроллера (Мега8-Мега64). Допустим - от 6.0 МГц до 12.0 МГц, дискретно, с шагом ~100-200 кГц. Стабилизация частоты, естественно, кварцем.
Может быть кто-то уже решал подобную задачу?
Есть ли специализированные МС типа синтезаторов на эти частоты? Важно, чтобы можно было задавать частоту (коэффициенты предделителя синтезатора) именно тем контроллером, который и будет тактироваться синтезатором.


ICS307 по моеу. Делитель видимо понадобится. Делалось давно для ASIC на основе ядра AVR.
Go to the top of the page
 
+Quote Post
singlskv
сообщение Nov 3 2006, 10:26
Сообщение #3


дятел
*****

Группа: Свой
Сообщений: 1 681
Регистрация: 13-05-06
Из: Питер
Пользователь №: 17 065



Посмотрите вот это FS6377
Может быть оно Вам подойдет
Go to the top of the page
 
+Quote Post
CDT
сообщение Nov 3 2006, 11:45
Сообщение #4


Местный
***

Группа: Свой
Сообщений: 303
Регистрация: 3-03-05
Пользователь №: 3 044



Цитата(Валентиныч @ Nov 3 2006, 13:08) *
Требуется программно изменять тактовую частоту контроллера (Мега8-Мега64). Допустим - от 6.0 МГц до 12.0 МГц, дискретно, с шагом ~100-200 кГц. Стабилизация частоты, естественно, кварцем.
Может быть кто-то уже решал подобную задачу?
Есть ли специализированные МС типа синтезаторов на эти частоты? Важно, чтобы можно было задавать частоту (коэффициенты предделителя синтезатора) именно тем контроллером, который и будет тактироваться синтезатором.

А заставить контроллер формировать нужные интервалы не удается?


--------------------
Опыт - чудесная вещь: легко использовать, можно продать, трудно пропить.
Go to the top of the page
 
+Quote Post
Валентиныч
сообщение Nov 3 2006, 13:04
Сообщение #5


Профессионал
****

Группа: Свой
Сообщений: 553
Регистрация: 17-02-05
Из: Свердловская обл.
Пользователь №: 2 712



Цитата(CDT @ Nov 3 2006, 16:45) *
А заставить контроллер формировать нужные интервалы не удается?

Нет, в том то и дело. Обрабатываются быстрые реал-тайм процессы (периодичность внешних событий ~ 4 ms). Алгоритм обработки достаточно сложен, время на обработку едва укладывается в период вн. событий. Применение более скоростного камня исключено техзаданием. И только изменение тактовой частоты позволит реализовать некоторые дополнительные опции.
Но это уже совсем другой вопрос.
Высокочастотные синтезаторы мне известны, но по ряду причин нежелательны для использования. Отсюда и возник вопрос о формировании достаточно стабильного внешнего CLK-генератора для работы в требуемом диапазоне (указан в первом сообщении). Дискретность изменения частоты не принципиальна, и может быть от 10 до 300 кГц. Общая перестройка частоты относительно реперных 8 МГц (эта частота должна присутствовать в сетке частот синтезатора обязательно!) желательна +/- 2-3 МГц (тоже не столь принципиально).


--------------------
Закономерность: Чем больше узнаю, тем меньше знаю...
Любые мнения, даже ошибочные, имеют право на существование.
Чем лучше узнаю людей, тем больше нравятся собаки...
Go to the top of the page
 
+Quote Post
Persona
сообщение Nov 4 2006, 13:42
Сообщение #6


Участник
*

Группа: Новичок
Сообщений: 22
Регистрация: 2-11-06
Из: Киев
Пользователь №: 21 916



Не совсем ясное тех. задание..
А если просто OSCCAL изменять у АВР? Довольно широкий предел.. Да и стоимость решения = 0.
Go to the top of the page
 
+Quote Post
Diusha
сообщение Nov 5 2006, 04:41
Сообщение #7


Вечный студент
****

Группа: Участник
Сообщений: 500
Регистрация: 11-09-06
Из: Питер
Пользователь №: 20 262



«А если просто OSCCAL изменять у АВР?»
Автору вопроса нужна кварцованность

Имел как-то дело с микросхемкой. Как зовут, не помню; если интересно – откопаю. Кварцованная. Выдает 8, 16, 20, 25, 33, 40, 50, 60, 80 МГц.

А что если взять АВРку с бОльшей памятью и наклонировать блоков с разным кол-вом NOP`ов, например (гадаю, ес-но, задачи не знаю)
Go to the top of the page
 
+Quote Post
Валентиныч
сообщение Nov 5 2006, 10:00
Сообщение #8


Профессионал
****

Группа: Свой
Сообщений: 553
Регистрация: 17-02-05
Из: Свердловская обл.
Пользователь №: 2 712



Цитата(Diusha @ Nov 5 2006, 09:41) *
«А если просто OSCCAL изменять у АВР?»
Автору вопроса нужна кварцованность

Абсолютно правильно.

Цитата
Имел как-то дело с микросхемкой. Как зовут, не помню; если интересно – откопаю. Кварцованная. Выдает 8, 16, 20, 25, 33, 40, 50, 60, 80 МГц.

Высокочастотные синтезаторы знакомы, и есть в наличии.
Суть вопроса в том, чтобы получить "сетку" частот 6-12 МГц с шагом 100-300 кГц без использования дополнительных делителей. Исключительно на одном чипе.

Цитата
А что если взять АВРку с бОльшей памятью и наклонировать блоков с разным кол-вом NOP`ов, например (гадаю, ес-но, задачи не знаю)
.
В этом случае получим набор временнЫх интервалов, а не набор тактовых частот. sad.gif
Требуется изменять именно CLK.


--------------------
Закономерность: Чем больше узнаю, тем меньше знаю...
Любые мнения, даже ошибочные, имеют право на существование.
Чем лучше узнаю людей, тем больше нравятся собаки...
Go to the top of the page
 
+Quote Post
defunct
сообщение Nov 5 2006, 13:21
Сообщение #9


кекс
******

Группа: Свой
Сообщений: 3 825
Регистрация: 17-12-05
Из: Киев
Пользователь №: 12 326



Цитата(Валентиныч @ Nov 3 2006, 13:08) *
Требуется программно изменять тактовую частоту контроллера (Мега8-Мега64). Допустим - от 6.0 МГц до 12.0 МГц, дискретно, с шагом ~100-200 кГц. Стабилизация частоты, естественно, кварцем.

А можно поинтересоваться для какой цели могут потребоваться такие манипуляции с осциллятором?
Энергосбережения практически никакого..
Могу предположить, что AVRка применяется для генерации формы сигнала, а частота будет задаваться внешним генератором..

Цитата
Обрабатываются быстрые реал-тайм процессы (периодичность внешних событий ~ 4 ms). Алгоритм обработки достаточно сложен, время на обработку едва укладывается в период вн. событий.

Мне всегда казалось, что производительность AVR прямопропорциональна частоте. Какой резон в снижении тактовой частоты, если и так производительности едва хватает на обработку периода вн. события?
Go to the top of the page
 
+Quote Post
Валентиныч
сообщение Nov 6 2006, 16:02
Сообщение #10


Профессионал
****

Группа: Свой
Сообщений: 553
Регистрация: 17-02-05
Из: Свердловская обл.
Пользователь №: 2 712



Цитата(defunct @ Nov 5 2006, 18:21) *
Мне всегда казалось, что производительность AVR прямопропорциональна частоте. Какой резон в снижении тактовой частоты, если и так производительности едва хватает на обработку периода вн. события?

Резон есть, но "на пальцах" рассказать сложно, да это и не тема топика.
Если в двух словах: алгоритм обработки использует большой табличный массив, адресация которого прямопропорциональна значению, накопленному в таймере обнуляемому и запускаемому по внешнему событию. Изменение CLK позволит "триммировать" адреса, читай - изменять табличные данные.


--------------------
Закономерность: Чем больше узнаю, тем меньше знаю...
Любые мнения, даже ошибочные, имеют право на существование.
Чем лучше узнаю людей, тем больше нравятся собаки...
Go to the top of the page
 
+Quote Post
slog
сообщение Nov 6 2006, 17:50
Сообщение #11


Знающий
****

Группа: Свой
Сообщений: 961
Регистрация: 28-11-05
Пользователь №: 11 489



Вижу 2 варианта:
1. В PLIS делитель с переменным коэфициентом деления.
2. ГУН + микросхема синтезатора с ФАПЧ, но в 1 чип это не очень лезет, да и рассыпухи много.


--------------------
В действительности всё не так, как на самом деле.
Go to the top of the page
 
+Quote Post
_artem_
сообщение Nov 6 2006, 17:52
Сообщение #12


учащийся
*****

Группа: Свой
Сообщений: 1 065
Регистрация: 29-10-05
Из: города контрастов
Пользователь №: 10 249



Наверно на cpld можно будет сделать программируемый делитель на фиксированное количество частот.

опередили )


--------------------
Зачем лаять на караван , когда на него можно плюнуть?

Go to the top of the page
 
+Quote Post
_artem_
сообщение Nov 6 2006, 18:03
Сообщение #13


учащийся
*****

Группа: Свой
Сообщений: 1 065
Регистрация: 29-10-05
Из: города контрастов
Пользователь №: 10 249



Аааа а вот и более интересная идея - таймер авр можно использовать как переменный делитель для синтезатора.Отдельным будет низкочастотный опорный кварцованный генератор . Выход output capture таймера на xor (на второй вход xor'а - низкочастотный кварцованный генератор), rc цепочка и фазорастный сигнал на гун запитываюший тактовой саму авр.
Вам понадобится одна микруха ГУН , XOR и пассивы few RC. Частоту будете менять посредством делителя таймера програмно. Я такой реализации еще в инете не видел (хотя я мало что видел) ). Так что если напишете авторское свидетельство не забудьте вписать меня туда ))


--------------------
Зачем лаять на караван , когда на него можно плюнуть?

Go to the top of the page
 
+Quote Post
singlskv
сообщение Nov 6 2006, 18:42
Сообщение #14


дятел
*****

Группа: Свой
Сообщений: 1 681
Регистрация: 13-05-06
Из: Питер
Пользователь №: 17 065



Цитата(_artem_ @ Nov 6 2006, 21:03) *
Аааа а вот и более интересная идея - таймер авр можно использовать как переменный делитель для синтезатора.Отдельным будет низкочастотный опорный кварцованный генератор . Выход output capture таймера на xor (на второй вход xor'а - низкочастотный кварцованный генератор), rc цепочка и фазорастный сигнал на гун запитываюший тактовой саму авр.
Вам понадобится одна микруха ГУН , XOR и пассивы few RC. Частоту будете менять посредством делителя таймера програмно. Я такой реализации еще в инете не видел (хотя я мало что видел) ). Так что если напишете авторское свидетельство не забудьте вписать меня туда ))

А что будет в этой схеме при включении контроллера, когда таймер еще не настроен ?
Go to the top of the page
 
+Quote Post
Валентиныч
сообщение Nov 6 2006, 19:04
Сообщение #15


Профессионал
****

Группа: Свой
Сообщений: 553
Регистрация: 17-02-05
Из: Свердловская обл.
Пользователь №: 2 712



Цитата(singlskv @ Nov 6 2006, 23:42) *
А что будет в этой схеме при включении контроллера, когда таймер еще не настроен ?

Резонный вопрос, но, как мне кажется, решаемый.
Хотя идея в целом интересная, по количеству корпусов не самая оптимальная - ГУН, XOR и (Артем, видимо, забыл) сам кварцевый генератор.
Неужели в природе нет готовых низкочастотных синтезаторов? sad.gif


--------------------
Закономерность: Чем больше узнаю, тем меньше знаю...
Любые мнения, даже ошибочные, имеют право на существование.
Чем лучше узнаю людей, тем больше нравятся собаки...
Go to the top of the page
 
+Quote Post
_artem_
сообщение Nov 6 2006, 19:43
Сообщение #16


учащийся
*****

Группа: Свой
Сообщений: 1 065
Регистрация: 29-10-05
Из: города контрастов
Пользователь №: 10 249



если у Вас есть XOR то их должно быть целых четыре - как раз то что нужно для 32 кГц часового генератора.

and VCO with PLL :
http://focus.ti.com/docs/prod/folders/print/tlc2932a.html

"А что будет в этой схеме при включении контроллера, когда таймер еще не настроен ?"

Начальную частоту ГУНа можно подобрать в определенных пределах достаточных для срабатывания петли фапч. В диапазон 6-12 МГц не так уж и трудно попасть. А дальше перебором таймера пока не захватит (если полоса фапч узкая).


--------------------
Зачем лаять на караван , когда на него можно плюнуть?

Go to the top of the page
 
+Quote Post
Nanobyte
сообщение Nov 6 2006, 19:58
Сообщение #17


За битами по регистрам гоняюсь
***

Группа: Свой
Сообщений: 457
Регистрация: 24-04-06
Из: Таганрог
Пользователь №: 16 446



Цитата(Валентиныч @ Nov 6 2006, 23:04) *
... Неужели в природе нет готовых низкочастотных синтезаторов? sad.gif

Здесь уже обсуждались ПЛИС, внешние XOR и т.п. А гораздо удобнее и проще поставить изделие от AD - AD9850. Загнал по SPI несколько байтов в регистр и всё, голова отдыхает от пенталгина. Цена вопроса - ~10-12 уе. Шаг можно задавать хоть доли герца. Верхняя частота - 60 МГц, нижняя близка к 0. Правда, остаётся вопрос начального запуска AVR, пока генератор ещё не настроен.


--------------------
Курсор влево, курсор вправо - считается хакерством. FORMAT C: производится без предупреждения
Go to the top of the page
 
+Quote Post
slog
сообщение Nov 7 2006, 07:49
Сообщение #18


Знающий
****

Группа: Свой
Сообщений: 961
Регистрация: 28-11-05
Пользователь №: 11 489



Цитата(Валентиныч @ Nov 6 2006, 22:04) *
Цитата(singlskv @ Nov 6 2006, 23:42) *
А что будет в этой схеме при включении контроллера, когда таймер еще не настроен ?

Резонный вопрос, но, как мне кажется, решаемый.
Хотя идея в целом интересная, по количеству корпусов не самая оптимальная - ГУН, XOR и (Артем, видимо, забыл) сам кварцевый генератор.
Неужели в природе нет готовых низкочастотных синтезаторов? sad.gif


Синтезаторов полно, в 1-ом корпусе, + кварц, но так чтобы сразу и вместе с ГУНом, я не видел.


--------------------
В действительности всё не так, как на самом деле.
Go to the top of the page
 
+Quote Post
ARIM
сообщение Nov 8 2006, 10:10
Сообщение #19


Частый гость
**

Группа: Свой
Сообщений: 94
Регистрация: 14-04-05
Из: Россия
Пользователь №: 4 130



Цитата(Валентиныч @ Nov 3 2006, 13:08) *
Требуется программно изменять тактовую частоту контроллера (Мега8-Мега64). Допустим - от 6.0 МГц до 12.0 МГц, дискретно, с шагом ~100-200 кГц. Стабилизация частоты, естественно, кварцем.
Может быть кто-то уже решал подобную задачу?
Есть ли специализированные МС типа синтезаторов на эти частоты? Важно, чтобы можно было задавать частоту (коэффициенты предделителя синтезатора) именно тем контроллером, который и будет тактироваться синтезатором.

Внешний кварцованный генератор на счетчик с параллельной загрузкой типа ИЕ10, ИЕ18 . Контроллер тактировать с выхода переполнения(переноса). Управлять загрузкой счетчика с контроллера. Для обеспечения скважности 50% Fclk_avr можно выход переполнения завести через триггер. или еще как.
Go to the top of the page
 
+Quote Post
Валентиныч
сообщение Nov 8 2006, 13:02
Сообщение #20


Профессионал
****

Группа: Свой
Сообщений: 553
Регистрация: 17-02-05
Из: Свердловская обл.
Пользователь №: 2 712



To All: спасибо всем за желание помочь!
К сожалению, так и не получил ответ на заданный вопрос: нет ли готового однокорпусного синтезатора с требуемыми параметрами?
Варианты решения задачи с внешней объвязкой (ГУНы, ФАПЧ, счетчики и прочее) мне давно и хорошо известны, но не применимы в данном конкретном случае.
Нужен именно однокорпусной девайс. Если кто знает - буду признателен подсказке. Все остальное можно не обсуждать.


--------------------
Закономерность: Чем больше узнаю, тем меньше знаю...
Любые мнения, даже ошибочные, имеют право на существование.
Чем лучше узнаю людей, тем больше нравятся собаки...
Go to the top of the page
 
+Quote Post
Petka
сообщение Nov 8 2006, 13:09
Сообщение #21


Профессионал
*****

Группа: Свой
Сообщений: 1 453
Регистрация: 23-08-05
Пользователь №: 7 886



Цитата(Валентиныч @ Nov 8 2006, 16:02) *
To All: спасибо всем за желание помочь!
К сожалению, так и не получил ответ на заданный вопрос: нет ли готового однокорпусного синтезатора с требуемыми параметрами?
Варианты решения задачи с внешней объвязкой (ГУНы, ФАПЧ, счетчики и прочее) мне давно и хорошо известны, но не применимы в данном конкретном случае.
Нужен именно однокорпусной девайс. Если кто знает - буду признателен подсказке. Все остальное можно не обсуждать.

Вам же уже предложили использовать DDS! Если задаёте вопрос, то читайте пожалуйста ответы внимательно.
Go to the top of the page
 
+Quote Post
Diusha
сообщение Nov 10 2006, 03:23
Сообщение #22


Вечный студент
****

Группа: Участник
Сообщений: 500
Регистрация: 11-09-06
Из: Питер
Пользователь №: 20 262



Cкажете, извращенец… А что если в качестве генера использовать МК Сценикс SX18? Тактовая до 75 МГц, 1команда/такт, 18 ножек, примерно $4.
Go to the top of the page
 
+Quote Post
strr
сообщение Nov 10 2006, 14:07
Сообщение #23


Участник
*

Группа: Участник
Сообщений: 26
Регистрация: 8-06-06
Пользователь №: 17 870



Посмотрите в сторону DS1075

Сообщение отредактировал strr - Nov 10 2006, 14:16
Go to the top of the page
 
+Quote Post
Diusha
сообщение Nov 11 2006, 04:01
Сообщение #24


Вечный студент
****

Группа: Участник
Сообщений: 500
Регистрация: 11-09-06
Из: Питер
Пользователь №: 20 262



«Cкажете, извращенец…»
Извините, если кто не так понял. Это я о себе. Что предлагаю в качестве генера использ. другой МК.

Я тут еще подумал. По-моему все-таки не плохой вариант. Коэф. деления можно получить практически любой, хоть дробный (подсказка: кто сказал, что все периоды CLK д.б. одинаковыми?)
Go to the top of the page
 
+Quote Post
Валентиныч
сообщение Nov 11 2006, 05:00
Сообщение #25


Профессионал
****

Группа: Свой
Сообщений: 553
Регистрация: 17-02-05
Из: Свердловская обл.
Пользователь №: 2 712



Всем спасибо!
Вопрос "отпал" сам по себе. Заказчик изменил ТЗ.
Но высказанные выше мнения были учтены.


--------------------
Закономерность: Чем больше узнаю, тем меньше знаю...
Любые мнения, даже ошибочные, имеют право на существование.
Чем лучше узнаю людей, тем больше нравятся собаки...
Go to the top of the page
 
+Quote Post

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

 


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


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