Свежие обсуждения
Измерения

DDS-генератор на AVR - нужна помощь

1 13 189

Факт внедрения валкодера в тиньку дал надежду широким массам применить одну простую тиньку и всё. Тинька при этом используется почти под завязку, ну и что? Зато дёшево и сердито.

 

а каким мес... образом тинька будет общаться со Старшим Братом?

 

А зачем ей? Она оказалась самодостаточна.

 

Я думаю, что стоит остановиться на минимальном варианте. Народ подтянется, и если будет желание делать дальше, то сможет появиться версия DDS-2.( как у уважаемого GO RLC-2).

 

GM: Тинька при этом используется почти под завязку, ну и что? Зато дёшево и сердито.
Типичный программистский подход! Уцепился за конкретный мк и начинает мозгокрутствовать! Чем-то пожертвуем, но ещё одну функцию впихнём! Уже ног у корпуса не хватает - фигня, мультиплекситуем, на выходе внешние регистры поставим! (На работе рядом такой коллега сидит, надоело ругаться...)
Моё скромное мнение по разработке.
Хорошо и дёшево не бывает.
Всем не угодишь, у профи и начинающего совсем раные требования.
DDS сам по себе не цель, а средство получения хороших метрологических параметров генератора.
...
...
ИМХО, как уже неоднократно предлагалось, надо применить 2 мк, управляющий и DDS. Индикатор, например LDC 16х2 необходим, интерфейс кнопки + светодиоды убогий по нынешним временам. Меню надо... Получается дорого для конкретного чела? Ну что ж, делай на мосте Вина
Насчёт повышенного джиттера меандра не понял. Формирователь из синуса на компараторе даст меньший джиттер? Почему нельзя использовать встроенный в мк шим? Длительность импульса разную получать, не только меандр... Наверное, говорю глупости, не программист, а на таймере импульс переменной длительности не получить? Взводим в нуле синуса, отсчитываем заданное кол-во тактов, сбрасываем... В конце концов можно поставить переключатель того, что генерим, синус или импульсы. Если генерим имп., для меня логичным было бы отображать не частоту, а период и длит. импульсов...
Моя почта nivanov@inbox.ru

 

NPI: Типичный программистский подход! Уцепился за конкретный мк и начинает мозгокрутствовать! Чем-то пожертвуем, но ещё одну функцию впихнём! Уже ног у корпуса не хватает - фигня, мультиплекситуем, на выходе внешние регистры поставим! (На работе рядом такой коллега сидит, надоело ругаться...)
Каждый подход имеет право на жизнь У меня был противоположный случай - коллега программер уперся рогом - не вписать прогу в контроллер, запудрил начальству мозг, меня обязали сделать двухголовую плату. Сделал. Вручил. Потом начали гонять тесты, смотрю - понять ничего не могу - ведущий контроллер всю работу делает, второй типа буфер. Я спрашиваю коллегу - в чем дело? А он в ответ - время поджимало, две проги писать некогда было, так я ужался немного (хотя вопил что все на пределе и решил задачу на одном камне. Так и отдали заказчику... Так что время покажет. А людей, которые могут вытянуть все из железа и даже немного больше лично я уважаю. Только без крайностей .

NPI: надо применить 2 мк, управляющий и DDS.
Я тут продвигаю идею с масштабированием генератора, типа начинающий собрал на светодиодах и кнопках, покатался, посмотрел что делать может, сравнил, что ему даст апгрейд - добавил еще плату, заменил прошивку, радуется жизни... Тока про тип МК никто кроме меня высказаться не хотит. Тогда пойду по дефолту мега16 в планаре и ни..ет

NPI: Насчёт повышенного джиттера меандра не понял. Формирователь из синуса на компараторе даст меньший джиттер?
Тут Вы сильно ошибаетесь, действительно DDS даст на высоких частотах офигенный джиттер. Компаратор, если его нормально сделать даст меньше.

NPI: Почему нельзя использовать встроенный в мк шим? Длительность импульса разную получать, не только меандр...
Можно, только у авр-ок таймера 16 разрядные, подумайте, какой шаг по частоте будет? Правильно переменный, причем с увеличением частоты шаг будет все больше и больше...
Однако огромный плюс таймера - без вычислительных затрат получаем: а) генерацию прямоугольных импульсов некоторой частоты; б) возможность регулировки скважности того, что генерируем. Так и запишем

NPI: Индикатор, например LDC 16х2 необходим,
NPI: Если генерим имп., для меня логичным было бы отображать не частоту, а период и длит. импульсов...
По поводу того, что и чем отображать - дело десятое, я вообще на телефонные дисплеи поглядываю: цена нормальная, габарит тоже, графика, интерфейс SPI подобный... Поживем - увидем.

 

madgrey: я вообще на телефонные дисплеи поглядываю: цена нормальная, габарит тоже, графика, интерфейс SPI подобный
Ну что Вас на убожество-то тянет? Вспомните незабвенный ЕГГОГ...

 

NPI: madgrey: я вообще на телефонные дисплеи поглядываю: цена нормальная, габарит тоже, графика, интерфейс SPI подобный
Ну что Вас на убожество-то тянет? Вспомните незабвенный ЕГГОГ...

А с каких пор у дисплеев от стационаров появился SPI ? Я про дисплеи от мабил.
А на них например вот такие вещи можно делать

http://www.youtube.com/v/e338Rx4RDh8&hl=en_US&fe...

Человек (R2-D2 на VRTP) на славу поработал над интерфейсом...

А про ЕГГОГ Вы правильно напомнили, меня он на МК-52 донимал, обязательно в ТЗ занесу!

 

2NPI
У меня чисто утилитарный подход, если не возражаете.

Не знаю вашего коллегу, может он и дело говорит, надо его послушать , но вот вы явно не в теме. Смотрите сами.

1) Улучшится ли основная функции ддс, если поставить ещё один МК? Нет, стабильность, частота выдачи выборок и разрядность цап останутся прежние.

2) Можно ли изменять частоту валкодером в тиньке? Да можно. При шаге 10 кГц три полных оборота валкодера перекрывают диапазон 10-700 кГц

3) Будет это быстрее, если валкодер будет подключен к другому МК? Пожалуй нет, надо на одном ввести, передать с одного на другой и исполнить на другом.

4) Нету кнопок. Есть валкодер со встроенной нажимной кнопкой, этого достаточно, хотя и неудобно.

Итак, вы видите, метрологические параметры генератора ни на йоту не изменились, валкодер справляется со своими дьютиз. ТАК КАКОГО ЖЕ ЛУЯ СТАВИТЬ ВТОРОЙ МК? На тиньке, конечно, свет клином не сошёлся, просто она у меня есть, что ж мне её выбросить в угоду некоторым? Лучше всего поставить атмегу48, у нее озу больше, можно выйти на рубеж 2500квыб/с.

Формирователь из синуса на компараторе даст минимальный джиттер, поверьте.

На таймере можно получить импульс переменной длительности. Но к сожалению, в МК имеются только целые делители. Например, чтобы получить 500 кГц меандр надо 20000/40, всё нормуль, а вот если надо получить 501 кГц меандр нужен делитель 20000/501=39.92, где ж его взять-то такой некруглый? Я уж не говорю про меандр 501,017 кГц. На ддс это запросто.

(Здесь не в тему, поэтому замечу в скобках. У меня был когда-то проектик, генерил импульсы от 25 нс до 1с любой скважности, никакого джиттера, но 501.017 кГц и он не смог бы сгенерить .)

 

Ставить второй МК имеет смысл в том случае, если есть возможность передавать с него на ддс код частоты.
Так чтобы ддс принимала этот код без срывов генерации. Тогда потребительские свойства можно сделать на высоте.
Если нет - тогда цепляем частотомер.