Например TDA7294

Форум РадиоКот :: Просмотр темы - Множитель/делитель на микроконтроллере
Форум РадиоКот
https://radiokot.ru/forum/

Множитель/делитель на микроконтроллере
https://radiokot.ru/forum/viewtopic.php?f=58&t=59172
Страница 1 из 4

Автор:  Perevozchik707 [ Сб ноя 26, 2011 17:23:33 ]
Заголовок сообщения:  Множитель/делитель на микроконтроллере

Всем привет.
Вопрос в следующем. Есть прямоугольные импульсы на входе. На выходе нужно получить импульсы по количеству на 1,25 меньше чем на входе. Проще говоря нужен делитель частоты с дробным коэффициентом. Можно ли сделать такой на контроллёре или может есть какие нибудь микросхемы делители которые смогут помочь в решении этого вопроса? Пример: есть 50 импульсов, на выходе надо 40. Есть 100 импульсов, на выходе надо 80... И т.д.
Заранее спасибо за ответы.

Автор:  Kavka [ Сб ноя 26, 2011 18:45:25 ]
Заголовок сообщения:  Re: Как сделать делитель на контроллёре.

Первое что приходит в голову - это PLL.
Хотя всё зависит от частоты. Если частота не очень велика, и требования по точности не очень велики, то можно и на микроконтроллере попробовать.

Автор:  Perevozchik707 [ Сб ноя 26, 2011 18:51:42 ]
Заголовок сообщения:  Re: Как сделать делитель на контроллёре.

На сколько я понимаю... Это фазовая подстройка? Мне кажется это слишком сложно круто для такой задачи....

Автор:  Kavka [ Сб ноя 26, 2011 19:06:32 ]
Заголовок сообщения:  Re: Как сделать делитель на контроллёре.

Зависит от частоты. У вас какой диапазон частот на входе?

Автор:  Jack_A [ Вс ноя 27, 2011 01:16:49 ]
Заголовок сообщения:  Re: Как сделать делитель на контроллёре.

Тут микроконтроллер нужен как рыбе велосипед.

Вложение:
Div1_25.JPG [9.03 KiB]
Скачиваний: 6089


И не на 1,25, а в 1,25 раза уменьшить частоту.

Автор:  К@Т [ Вс ноя 27, 2011 01:44:18 ]
Заголовок сообщения:  Re: Как сделать делитель на контроллёре.

Jack_A писал(а):
Тут микроконтроллер нужен как рыбе велосипед.ИзображениеИ не на 1,25, а в 1,25 раза уменьшить частоту

Как называетса то что Вы курили и где достать?

Автор:  akl [ Вс ноя 27, 2011 04:20:46 ]
Заголовок сообщения:  Re: Как сделать делитель на контроллёре.

Perevozchik707 писал(а):
...Можно ли сделать такой на контроллёре... Пример: есть 50 импульсов, на выходе надо 40. Есть 100 импульсов, на выходе надо 80...
Т.е. на каждые 5 входных импульсов схема должна генерировать 4 выходных. Может это попробуете, предварительно заложив в исходнике
Код:
CONST_M_N:
   .DB   4,5   ;M=4,N=5
;   .DB   12,13   ;M=12,N=13

viewtopic.php?p=658124#p658124

Автор:  BCluster [ Вс ноя 27, 2011 06:24:46 ]
Заголовок сообщения:  Re: Как сделать делитель на контроллёре.

По фазе и пр. требований нет? Частоты какие? Скважность постоянная?

Автор:  Panda_Y2K [ Вс ноя 27, 2011 07:52:45 ]
Заголовок сообщения:  Re: Как сделать делитель на контроллёре.

akl писал(а):
Perevozchik707 писал(а):
...Можно ли сделать такой на контроллёре... Пример: есть 50 импульсов, на выходе надо 40. Есть 100 импульсов, на выходе надо 80...
Т.е. на каждые 5 входных импульсов схема должна генерировать 4 выходных. Может это попробуете, предварительно заложив в исходнике
Код:
CONST_M_N:
   .DB   4,5   ;M=4,N=5
;   .DB   12,13   ;M=12,N=13

viewtopic.php?p=658124#p658124


Неееее так не пойдет. А если пришло 4 импульса или 3 на выходе не должна же быть пустота...
Тут таймер надо использовать, измерять период и генерировать свою последовательность синхронно с входной.

Автор:  КРАМ [ Вс ноя 27, 2011 09:16:30 ]
Заголовок сообщения:  Re: Как сделать делитель на контроллёре.

Panda_Y2K писал(а):
Тут таймер надо использовать, измерять период и генерировать свою последовательность синхронно с входной.

Что Вы понимаете под термином СИНХРОННО? :)))
Разные нецельнократные частоты не могут быть синхронны по определению...
Решается задача ЭЛЕМЕНТАРНО.
Два независимых процесса, которые объединяет ОДНА переменная. Первый процесс создает ее значение (для него это функция). Второму процессу переменная приходится аргументом.
Т.е. делаем обычный периодомер с усреднением (длина буфера фильтра КИХ уточняется по потребности).
Далее делим период на 1,25 и присваиваем полученное значение нашей переменной.
В ЭТО ЖЕ САМОЕ ВРЕМЯ, совершенно асинхронно, второй процесс генерирует выходной период величиной в эту самую переменную.
Вот и вся проблема.

Автор:  Аlex [ Вс ноя 27, 2011 10:12:30 ]
Заголовок сообщения:  Re: Как сделать делитель на контроллёре.

От ТС ни слова не прозвучало по поводу частоты.
Его фраза была
Цитата:
На выходе нужно получить импульсы по количеству на 1,25 меньше чем на входе.
.
По этому, судя по словам ТС, ему смело можно предлагать вариант с подсчётом кол-ва импульсов и пропуском ненужных.
ТС не указал ни диапазон чаастот, не сказал нужно ли сохранять скважность на выходе, не уточнил максимальное время отклика выходного сигнала на входной, и т.д.... Просто, тупо, спросил - "Можно поделить ?".

Автор:  otest [ Вс ноя 27, 2011 13:11:24 ]
Заголовок сообщения:  Re: Как сделать делитель на контроллёре.

Цитата:
От ТС ни слова не прозвучало по поводу частоты.

А ТС здесь и не нужен. Только мешать будет.

Автор:  Jack_A [ Вс ноя 27, 2011 14:00:56 ]
Заголовок сообщения:  Re: Как сделать делитель на контроллёре.

К@Т писал(а):
Jack_A писал(а):
Тут микроконтроллер нужен как рыбе велосипед.

Как называетса то что Вы курили и где достать?


Называется "Справочник по цифровым микросхемам". Достать можно в любой библиотеке. Если до библиотеки по тундре на оленях далеко, можно взять простейший симулятор - хоть WB, хоть любимый многими Противнус - и убедиться, что если блокировать каждый 5-й импульс, то это и будет деление числа импульсов на 1.25
Вложение:
1_25.JPG [25.53 KiB]
Скачиваний: 920

Автор:  Perevozchik707 [ Вс ноя 27, 2011 15:10:52 ]
Заголовок сообщения:  Re: Как сделать делитель на контроллёре.

На работе был...
1) Действительно я ошибся написав на 1,25 меньше, конечно В 1,25 раза меньше....
2) Частота импульсов будет варьироваться от 0 до 400Гц
Что бы проще понять обьясню, для чего это нужно: Тюненгуется мотор. Установлен компьютер управления мотором позволяющий крутить его до 10000 об/мин и он крутиться до этого значения... Тахометра позволяющего поставить его на штатное место с показаниями до 10 тыс просто не бывает в природе. Были произведены замеры штатного тахометра. Так вот весь диапозон (а это до 8000 тыс об) он ложится при подачи на него 400 импульсов. При 50 импульсах показывает 1000 об... и т.д. Вот и родилась идея как бы растянуть шкалу до 10000 тыс. Графическую шкалу переделать - не проблема....

Автор:  akl [ Вс ноя 27, 2011 15:16:23 ]
Заголовок сообщения:  Re: Как сделать делитель на контроллёре.

Вопрос вырос из этой темы? viewtopic.php?f=20&t=42091

Автор:  Аlex [ Вс ноя 27, 2011 15:21:55 ]
Заголовок сообщения:  Re: Как сделать делитель на контроллёре.

Цитата:
Вот и родилась идея как бы растянуть шкалу до 10000 тыс.
Так Вам, как я понял, нужно наоборот увеличить частоту. Т.е., при 8000 об/мин. , прибор должен показывать 10000 ?

Автор:  Perevozchik707 [ Вс ноя 27, 2011 15:22:49 ]
Заголовок сообщения:  Re: Как сделать делитель на контроллёре.

akl писал(а):
Вопрос вырос из этой темы? viewtopic.php?f=20&t=42091

Чисто теоритически понимаю, что то устройство (viewtopic.php?f=20&t=42091) могло бы решить и эту задачу. Но к сажелению оно так и не заработало.( Сейчас же решаем вопрос именно по тахометру...

Автор:  Perevozchik707 [ Вс ноя 27, 2011 15:24:41 ]
Заголовок сообщения:  Re: Как сделать делитель на контроллёре.

Аlex писал(а):
Цитата:
Вот и родилась идея как бы растянуть шкалу до 10000 тыс.
Так Вам, как я понял, нужно наоборот увеличить частоту. Т.е., при 8000 об/мин. , прибор должен показывать 10000 ?

Нет, нет. Именно уменьшить в 1,25. Ведь если 400 (а это уже конец шкалы на штатном тахометре) ещё и умножить на 1,25, то тахометр вообще тогда "завернётся" на второй круг....

Автор:  Аlex [ Вс ноя 27, 2011 15:27:01 ]
Заголовок сообщения:  Re: Как сделать делитель на контроллёре.

Т.е. прибор, уже при 400Гц, показывает максимум, а движок может ещё быстрее крутить ? И вы просто растянете шкалу до 1000.

Автор:  Perevozchik707 [ Вс ноя 27, 2011 15:31:46 ]
Заголовок сообщения:  Re: Как сделать делитель на контроллёре.

Аlex Совершенно верно. Тоесть за место 8000 тыс рисуем 10000 и ужимаем шкалу. Ну это если так.... по простому написать....

Страница 1 из 4 Часовой пояс: UTC + 3 часа
Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group
http://www.phpbb.com/