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

 
 
2 страниц V   1 2 >  
Reply to this topicStart new topic
> Программное изменение 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
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

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

 


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


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