К тому же так как в цифровой технике нет отрицательных потенциалов, каким же образом можно их описать(отрец. полуволна)
Я так понимаю без "аналога" не обойтись?
Может кто знает хорошие ссылки с описанием..?
прежде чем задавать такие вопросы, сформулируй свои требования: диапазон частот, допустимые искажения и т.п. Иначе, согласись, твой вопрос лишен смысла.Scorpline писал(а):Для формирования использовать буду ЦАП.
...и достаточно ли использовать размер массива в один байт?
не получится ли "корявый" синус....
Ты, наверное, имел ввиду разрядность массива, а не размер?Scorpline писал(а):Для формирования использовать буду ЦАП.
...и достаточно ли использовать размер массива в один байт?
не получится ли "корявый" синус....
Опаньки! Да тут еще и два синуса... Тогда и глубину модуляции надо знать. А так чистота синтеза сигнала будет в основном зависеть от джиттера программного цикла при выводе на ШИМ или в ЦАП. Ступенчатость сигнала можно достаточно легко убрать приличным ФНЧ, а вот паразитную ЧМ(ФМ) уже никуда не денешь...Scorpline писал(а):Вообще надо получить синус 420Гц ампл.=10в
На счет искажений не знаю... просто не сталкивался еще с таковыми в цифровых сигналах
Мне бы пока с этим разобраться.
Потом данный сигнал надо промодулировать(АМ) частотой в 8Гц,
с возможностью его плавного изменения от 0.5в до 10в
Вот собственно и все.
Помилуйте, уважаемый, зачем заполнять память пустой информацией... Для синтеза синусоиды ДОСТАТОЧНО таблицы значений на первые 90 градусов и правильной работы с косвенной адресацией массива, а также переключатель знака(при необходимости, например в преобр. Фурье).VIRGO писал(а):Вот массив в десятичке:
128 (0 град. 2.5 вольт)
148, 167, 185, 200, 213, 222, 228
230 (90 град. 4.5 вольт)
228, 222, 213, 200, 185, 167, 148
128 (180 град. 2.5 вольт)
108, 89, 71, 56, 43, 34, 28
26 (270 град. 0.5 вольт)
28, 34, 43, 56, 71, 89, 108
Можно использовать ШИМ с последующим RC фильтром второго порядка. А можно матрицу R-2R.
Ну собственно пишите таблицу синуса на первые 90 градусов, а затем программу, которая извлекает очередное значение по прерыванию и засылает его в ШИМ или ЦАП. Прерывание делаем по таймеру, причем частота реквестов должна быть равна частоте синтезируемого сигнала умноженой на количество дискретов в синусе ЗА ПЕРИОД(таблица будет вчетверо короче).Scorpline писал(а):Глубна более 100%. ...вообщем мне надо получать пачки импульсов.
Может и без второго синуса получится.. Просто создавать паузу на выходе ЦАПа (нулевой уровень) ?
...я конечно понимаю что джитеры ремапинги и латентности это все хорошо с точки зрения продвинутых програмистов...ARV писал(а):КРАМ все верно говорит, хотя, имхо, шибко накручено...
в примерах SiLabs, которые идут в комплекте с диском ПО (который идет в комплекте с комплектом разработчика) есть пример для формирования трехфазной системы синусов - посмотри, там все очень хорошо расписано. в принципе, этот пример можно и с сайта SiLabs скачать, где-то в апноутах он есть. не найдешь - обращайся, вышлю, у меня есть.Scorpline писал(а):Но я пока начинаю осваивать контроллеры(пишу для C8051F120).