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

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

1 60 189

GM, а можно от 0,1Гц?
Для синуса, наверно, такая частота и не нужна, а для пилы или меандра - да, помогает настраивать схемы автоматики и логику.

 

Можно, не вопрос. Таблицы синуса, пилы и меандра будут заложены, хоть я и против меандра, но пусть каждый пользует на своё усмотрение. А вам ещё шим сделаю, как эксклюзивчик

 

GM: А вам ещё шим сделаю, как эксклюзивчик
Макс. частота ШИМа будет 1 МГц ?

 

И нам, и нам.

 

Tadas: Макс. частота ШИМа будет 1 МГц ?
На тиньке столько не сделаешь, надо ставить другой чип, скажем 45-ю тиню, восьминожку, там плл есть 64 МГц. А от 64 МГц такта можно получить 256-точечный шим с частотой 250 кГц. Ну а тиня 2313 может аппаратно дать регулируемые с дискретом в 50 нс период и заполнение от 150 нс до 3275 мкс. Кому-то и этого будет более чем достаточно для практики.

AlexPivkin: И нам, и нам.
Двойные нули получат в любом случае.

 

GM: Таблицы синуса, пилы и меандра будут заложены, хоть я и против меандра...

Вы же говорили, что синтезированый меандр страдает джитером, по этому его нужно делать из синуса.

Я, собственно, так и собирался. Тем более, что сделать не сложно - например, на выход синуса через разделительный конденсатор поставить один элемент логики 561ЛА7 с резистором ООС между выходом и входом (аля усилитель-компаратор), а за ним - такой же элемент. Получим на выходе меандр такой же частоты, как и синус. Усилить или умощнить который очень просто (при необходимости). А то и просто выводить через буферный логический элемент с изменяемым напряжением питания пределах 3В...15В для согласования с различными сериями логики.

А освободившееся место в МК лучше использовать для чего-то другого полезного - улучшения того, что есть или добавления новых функций (тот же ШИМ, например, если влезет)...

 

Ну да, страдает, не отказываюсь. Но народ как-то в штыки воспринял идею компаратора, отсюда и решение оставить таблицу меандра. Цена вопроса - 256 байт. Кстати, есть тиня 4313 в таком же корпусе как и 2313, там флеши 4 КБ. Надо бы просветить её на предмет народности: стоимость, доставабельность...

 

GM: Кстати, есть тиня 4313 в таком же корпусе как и 2313, там флеши 4 КБ
или м8 почти за те же деньги

GM: о народ как-то в штыки воспринял идею компаратора, отсюда и решение оставить таблицу меандра. Цена вопроса - 256 байт.
зачем таблица во flash ? используйте RAM, таблицу генерируйте программно. а может для меандра и не нужна никакая таблица ? счетчик дальше середины буфера - пишем 1цы, ближе - 0ли.

 

ATMega8 до 16 МГц работает, надо 20.

qwer: зачем таблица во flash? используйте RAM, таблицу генерируйте программно, а может для меандра и не нужна никакая таблица ? счетчик дальше середины буфера - пишем 1цы, ближе - 0ли.
ОЗУ тоже мало, всего 128 байт. Да и не думаю, что анализ адреса счётчика и запись 0/1 будет быстрее, чем просто выборка из таблицы без анализа. Поймите, в программе нет времени для анализа, никто не смотрит, куда указывает счётчик, текущее значение просто выбирается из таблицы и выдаётся на цап. Да и программа будет другая, что же ещё столько же плодить? Там помимо генерации много чего делается, обработка валкодера, удаление дребезга от кнопки, выбор шага, светики...

Добавил. Оценил время анализа - 3 такта, выборка из флеши - 3 такта. Да, экономится 256 байт, зато программа вгрубе удваивается - 2*1348=2696 байт, уже в тиню не помещается. Получается, как в анекдоте: "Моня, зачем нам эти шутки?"

Вам был вопросик, вы его проигнорировали, или вы писатель?

 

GM: Есть простое решение, посоветуйте подходящий параллельный цап на 14/16 бит, 2-3 msps
пока не нашел. можно попробовать скаскадировать 2 8-битных: выход первого (старшие разряды) подается на VRef второго (младшие). на резисторном суматоре не получится.