📜 ⬆️ ⬇️

Definition of numbers by ear

In this article I will talk about a simple program for processing , which "listens" to the microphone and determines the numbers dialed on the phone in tone mode.

Foreword


Univer stayed in the past about ten years ago, but all this time nostalgic feelings and longing for science have not left me. There is a feeling that I did not complete my education, or we ran too fast. Fortunately, modern platforms allow you to feel like a student all your life.

Lab writing No. 3 from the course “Basics of digital signal processing” LETI on the platform openedu pushed me to write this article.

Principle of operation


If you click on the buttons of the phone (or here ), you can hear that each character has its own frequency, or rather even two, and this combination uniquely encodes the character.
Our task is to select the two strongest frequencies from the noisy signal and check whether they encode a character in accordance with the table:
1209 Hz1336 Hz1477 Hz1633 Hz
697 Hzone23A
770 Hzfourfive6B
852 Hz7eight9C
941 Hz*0#D

I used processing because it has all the primitives for working with the microphone and the Fourier transform.
')
The algorithm is as follows:


What happened


You can build and run the program in the form of standalone jar from source , you can use the phone or this page to generate sounds.



The next step I want to implement the same thing on the Arduino.

Source: https://habr.com/ru/post/429700/


All Articles