Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Программная инженерия > Микроконтроллеры, робототехника, схемотехника, 3D принтеры
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 22.02.2022, 21:28   #11
ra9ane
 
Регистрация: 19.02.2022
Сообщений: 9
По умолчанию

Цитата:
Сообщение от Desc Посмотреть сообщение
Вы синус рисуете опираясь на тактовую частоту резонатора, отсчитывая такты.
Плюс в данном случае еще и флеш задействован для записи таблицы оцифровки этой самой скважности.
Кроме кода, на выходе должен быть физический фильтр среза тактовой частоты (по вашей ссылке в первом посте есть описание). Без него не получится сконструировать генератор.

P. S.
Таблица тактов влияет на точность, чем больше тактов тем выше точность на выходе. Граничный предел -- граничная частота ядра.
Фильтр на выходе у меня стоит и после него выходит синусоида, смотрю на осциллографе, без фильтра выдает прямоугольник.
ra9ane вне форума Ответить с цитированием
Старый 22.02.2022, 21:34   #12
Desc
Участник клуба
 
Аватар для Desc
 
Регистрация: 21.11.2007
Сообщений: 1,063
По умолчанию

Цитата:
Сообщение от ra9ane Посмотреть сообщение
dfreq =в калькуляторе находится в ячейке В7
рассчитывается параметр
Tuning Word M=B7*СТЕПЕНЬ(2;B12)/B13
Куда его применить в программе не понимаю
Вот измените его на 15 (dfreq), нажмите Enter. И посмотрите на значение B17. Это есть ваш tword_m
А теперь впишите полученное значение (tword_m) в ячейку F7, нажмите Enter. И получите Output Frequency Hz=
I am not a wizard, I am just learning.

Последний раз редактировалось Desc; 22.02.2022 в 21:37.
Desc вне форума Ответить с цитированием
Старый 22.02.2022, 21:41   #13
Desc
Участник клуба
 
Аватар для Desc
 
Регистрация: 21.11.2007
Сообщений: 1,063
По умолчанию

Функция:
Код:
void setup()
{
  pinMode(11, OUTPUT);     // pin11= PWM  output / frequency output
 
  Setup_timer2();
  // disable interrupts to avoid timing distortion
  cbi (TIMSK0,TOIE0);              // disable Timer0 !!! delay() is now not available
  sbi (TIMSK2,TOIE2);              // enable Timer2 Interrupt
  dfreq=1000.0;                    // initial output frequency = 1000.o Hz
  tword_m=pow(2,32)*dfreq/refclk;  // calulate DDS new tuning word 
}
это стартовая установка генерации импульсов.
Измерения и изменение частоты выполняются функцией:
Код:
void loop()
{
  while(1) {
     if (c4ms > 250) {                 // timer / wait fou a full second
      c4ms=0;
      dfreq=analogRead(0);             // read Poti on analog pin 0 to adjust output frequency from 0..1023 Hz
      cbi (TIMSK2,TOIE2);              // disble Timer2 Interrupt
      tword_m=pow(2,32)*dfreq/refclk;  // calulate DDS new tuning word
      sbi (TIMSK2,TOIE2);              // enable Timer2 Interrupt 
    }
  }
 }
строка:
Код:
dfreq=analogRead(0);
непосредственно измеряет состояние потенциометра и задает значение dfreq
I am not a wizard, I am just learning.

Последний раз редактировалось Desc; 22.02.2022 в 21:44.
Desc вне форума Ответить с цитированием
Старый 22.02.2022, 21:56   #14
ra9ane
 
Регистрация: 19.02.2022
Сообщений: 9
По умолчанию

Вот и получается что в стартовой установке генерации импульсов параметр
dfreq=1000.0; // initial output frequency = 1000.o Hz
не влияет ни на что, а используется только измерение состояния потенциометра
dfreq=analogRead(0); // read Poti on analog pin 0 to adjust output frequency from 0..1023 Hz
я его кручу частота изменяется
ra9ane вне форума Ответить с цитированием
Старый 22.02.2022, 22:12   #15
ra9ane
 
Регистрация: 19.02.2022
Сообщений: 9
По умолчанию делитель

Регулировка получается только электрически, а не программно
Изображения
Тип файла: jpg делитель.jpg (8.1 Кб, 15 просмотров)
ra9ane вне форума Ответить с цитированием
Старый 22.02.2022, 22:18   #16
Desc
Участник клуба
 
Аватар для Desc
 
Регистрация: 21.11.2007
Сообщений: 1,063
По умолчанию

Цитата:
Сообщение от ra9ane Посмотреть сообщение
я его кручу частота изменяется
от сколько до сколько изменяется?

P. S.
Цитата:
Сообщение от ra9ane Посмотреть сообщение
// read Poti on analog pin 0 to adjust output frequency from 0..1023 Hz
этот комент актуален при dfreq=1000.0;
если dfreq=15.0; то комент будет справедлив примерно так:
// read Poti on analog pin 0 to adjust output frequency from 0..14.999 Hz

P. P. S.
Кстати. На какой частоте тактируется кристал вашей ардуинки?
I am not a wizard, I am just learning.

Последний раз редактировалось Desc; 22.02.2022 в 22:37. Причина: Добавил P. S.
Desc вне форума Ответить с цитированием
Старый 22.02.2022, 23:00   #17
Desc
Участник клуба
 
Аватар для Desc
 
Регистрация: 21.11.2007
Сообщений: 1,063
По умолчанию

Если не тайна. Нафика Вам такой генератор 0-15 Гц?
При определенной мощности излучателя на частоте 7 Гц останавливается сердце человека.
I am not a wizard, I am just learning.
Desc вне форума Ответить с цитированием
Старый 23.02.2022, 10:49   #18
digitalis
Старожил
 
Аватар для digitalis
 
Регистрация: 04.02.2011
Сообщений: 4,537
По умолчанию

По моему, это миф.
Когда-то при сдаче ТБ у меня спросили: почему 50Гц представляет наибольшую опасность? Вообще-то экзамен по ТБ - это не место для почемучивания, тут надо механически отбарабанивать чеканные правила из ПТБ и ОТ. "А почему?" - спрашиваю? "Потому, что это частота близка к частоте сердечных сокращений" - объясняют. Я при#^*л. ЧСС - 60...70 в минуту, а 50Гц - это в секунду! Но спорить не стал - мне нужен был зачёт, а не истина.
digitalis вне форума Ответить с цитированием
Старый 02.03.2022, 16:58   #19
Nif-naf
Форумчанин
 
Аватар для Nif-naf
 
Регистрация: 05.09.2016
Сообщений: 131
По умолчанию

Попробуи уменьшить тактовую частоту
Немного о GoAsm.
Nif-naf вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
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