|
|
Регистрация Восстановить пароль |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
|
Опции темы | Поиск в этой теме |
21.02.2022, 10:27 | #1 |
Регистрация: 19.02.2022
Сообщений: 9
|
Генератор синусоиды Arduino DDS
Генератор синусоиды, как уменьшить максимальную выходную частоту до 15 Гц ?
помогите пенсионеру, программирование плохо в голову входит, что нужно подправить? http://interface.khm.de/index.php/la...ave-generator/ Код:
Последний раз редактировалось ra9ane; 21.02.2022 в 11:06. |
21.02.2022, 15:19 | #2 |
Участник клуба
Регистрация: 21.11.2007
Сообщений: 1,063
|
48-я строка
Код:
I am not a wizard, I am just learning.
Последний раз редактировалось Desc; 21.02.2022 в 15:22. |
21.02.2022, 15:27 | #3 |
Регистрация: 19.02.2022
Сообщений: 9
|
|
21.02.2022, 15:36 | #4 |
Участник клуба
Регистрация: 21.11.2007
Сообщений: 1,063
|
Если совсем ни чего не происходит, проверяйте:
правильность установки тактовой частоты; таблицу PWM; корректность всего кода.
I am not a wizard, I am just learning.
|
21.02.2022, 15:50 | #5 |
Регистрация: 19.02.2022
Сообщений: 9
|
схема работает смотрю на осциллографе частота изменяется, но мне нужно ограничить частоту, чтобы можно было плавно регулировать от 0,1 - 15 Гц выше мне не нужно
|
21.02.2022, 19:06 | #6 |
Участник клуба
Регистрация: 21.11.2007
Сообщений: 1,063
|
Ну так переменная dfreq это и есть граничная частота.
Ставте значение dfreq = 15.0; И константу подправьте на: const double refclk=31372.54902; P. S. По вашей же ссылке на проект есть ссылка на DDS калькулятор: Link: dds_calc
I am not a wizard, I am just learning.
|
21.02.2022, 20:05 | #7 |
Регистрация: 19.02.2022
Сообщений: 9
|
[QUOTE=Desc;1844914]Ну так переменная dfreq это и есть граничная частота.
Ставте значение dfreq = 15.0; И константу подправьте на: const double refclk=31372.54902; Ваши цифры мне не подошли, нужно видимо разбираться в этом калькуляторе. Буду "морщить репу" и методом научного тыка подбирать цифры. dfreq=15.0; // initial output frequency = 1000.o Hz а ниже dfreq dfreq=analogRead(0); tword_m=pow(2,32)*dfreq/refclk; // calulate DDS new tuning word Последний раз редактировалось ra9ane; 21.02.2022 в 20:45. |
22.02.2022, 21:08 | #8 |
Регистрация: 19.02.2022
Сообщений: 9
|
[QUOTE=Desc;1844914]Ну так переменная dfreq это и есть граничная частота.
Ставте значение dfreq = 15.0; И константу подправьте на: const double refclk=31372.54902; Как я понял прочитав форум http://arduino.ru/forum/obshchii/dds...-h-most?page=1 что не возможно понизить частоту генератора OCR2A влияет только на скважность, частота не меняется. |
22.02.2022, 21:15 | #9 |
Участник клуба
Регистрация: 21.11.2007
Сообщений: 1,063
|
Вы синус рисуете опираясь на тактовую частоту резонатора, отсчитывая такты.
Плюс в данном случае еще и флеш задействован для записи таблицы оцифровки этой самой скважности. Кроме кода, на выходе должен быть физический фильтр среза тактовой частоты (по вашей ссылке в первом посте есть описание). Без него не получится сконструировать генератор. P. S. Таблица тактов влияет на точность, чем больше тактов тем выше точность на выходе. Граничный предел -- граничная частота ядра. Но и не следует забывать что каждое действие кода это так-же такты.
I am not a wizard, I am just learning.
Последний раз редактировалось Desc; 22.02.2022 в 21:27. Причина: Добавил P. S. |
22.02.2022, 21:24 | #10 | |
Регистрация: 19.02.2022
Сообщений: 9
|
dds_calc
Цитата:
рассчитывается параметр Tuning Word M=B7*СТЕПЕНЬ(2;B12)/B13 Куда его применить в программе не понимаю |
|
|
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Photoshop dds | maks1331 | Моделирование, изометрия, photoshop, 3d редакторы | 5 | 03.02.2017 00:33 |
График синусоиды | Sour1 | Помощь студентам | 2 | 16.12.2015 23:28 |
Текст по контуру синусоиды | Abbath1349 | Win Api | 0 | 29.12.2010 19:20 |
Эмулятор диспетчера процессов. Бегущие синусоиды. | JarBem | Помощь студентам | 1 | 13.12.2010 10:16 |
Алгоритм подсчета числа вершин синусоиды? | Mixasik | Помощь студентам | 8 | 07.06.2009 18:39 |