ВходНаше всё Теги codebook 无线电组件 Поиск Опросы Закон Воскресенье
24 ноября
190273 Топик полностью
rezident (18.04.2010 09:33, просмотров: 263) ответил Лeoнид Ивaнoвич на Все-таки если вернуться к вопросу: как проще сделать режим генерации меандра?
Я с полгода назад реализовывал DDS для управления асинхронником. Понадобился режим, когда вместо синуса на выход подается меандр. Оказалось, что как синус не искажай, он все равно будет трапецией. Поэтому я в программе сделал такой финт: когда задание для амплитуды превышало максимальный уровень, то я принудительно искажал синусоиду до меандра путем замены отсчетов синуса их максимально возможными амплитудными значениями. Т.е. допустим у меня 8-ми битное квантование по уровню (от -127 до +128). Если задание амплитуды >= 128, то понятно, что должно наступить ограничение и синус будет искажаться. Для такого случая я работал по другой ветке программы и формировал таблицу синуса в виде двух значений -127 и +128. Типо -127, -127, -127, -127, -127, 128, 128, 128, 128, 128, 128 и т.д.