Подскажите софтовый декодер dtmf для ардуины.

Тема в разделе "Проводная и беспроводная связь", создана пользователем Ariadna-on-Line, 24 янв 2020.

  1. Ariadna-on-Line

    Ariadna-on-Line Гуру

    Пробовал примеры на алгоритме Гёрцеля. Гонял в Протеусе. Подавал сигналы с виртуальных генераторов на виртуальную же Ардуину. - Чертовщина с определением частот. Цикл за циклом - то идеально обе, то обе фигня, то одна из двух. Без системы. Еще - Пробовал пример из библиотеки FFT. Амплитуды частот выделяет правильно и стабильно, но превращать комбинации частот в "кнопки" - нет такой функции. Прежде чем переписывать под свою задачу решил спросить. Может кто уже сделал ? Желательно именно на "Гёрцеле" ! Про возможности SIM800 - знаю, но это не то. Вообще - хочу сделать язык общения Ардуин вроде как у R2D2.
    ПС. На днях с женой смотрели про японский супердорогой робот-пылесос. Точнее - как он не работает, потому что не может поймать сигнал GPS. Матерились оба, но жена сильнее. Это какой нах GPS обыкновенной уборщице ? Прогресс - хорошо, но здесь скорее дебилизьм.
     
    Последнее редактирование: 24 янв 2020
  2. Asper Daffy

    Asper Daffy Иксперд

  3. Ariadna-on-Line

    Ariadna-on-Line Гуру

    Спасибо. Но именно это я тестировал. Беру библиотечный пример. Задаю искомую частоту, компилю скетч, подаю разные частоты и никаких признаков опознавания. Толи я чето не понимаю...
     
  4. Ariadna-on-Line

    Ariadna-on-Line Гуру

    Господа искушенные программисты! Библа arduinoFFT имеет функцию выделения "доминирующей" частоты.
    Код (C++):
     Serial.println("Computed magnitudes:");
      PrintVector(vReal, (samples >> 1), SCL_FREQUENCY);
      double x = FFT.MajorPeak(vReal, samples, samplingFrequency);
      Serial.println(x, 1); //Print out what frequency is the most dominant.
    Но если я правильно понимаю, выделяет за раз ОДНУ частоту. Для DTMF надо ДВЕ частоты за раз. Отсюда вопросы:
    1. Есть ли описания параметров функций MajorPeak - их там пол-дюжины.
    1. Можно ли с текущей библиотекой такое.
    2. Не возьмется ли кто добавить такую функцию.
     

    Вложения:

    • FFT_DTMF.JPG
      FFT_DTMF.JPG
      Размер файла:
      64,1 КБ
      Просмотров:
      32