MT8870 DTMF Decoder Module
The MT8870 based DTMF (Dual Tone Multi-Frequency) decoder module is commonly used to control robots with a mobile phone, it is also used in different kinds of home automation projects where mobile dial pad input is required. This module works as a tone decoder that uses its 3.5 mm audio connector socket to get the input audio signal. It is popularly used for mobile and fixed telephone voice dialing and recording related functions. MT8870 DTMF Decoder Module – Overview The binary output digits are available on the output pin Q1 to the pin Q4. In this module, there are onboard LEDs that can be very useful to identify the output state signal of the binary pins. The DTMF module has a 3.5 mm audio input Jack that can be easily connected with a mobile phone by using a 3.5mm audio jack. It is very useful to add dual-tone multi-frequency decoding in any microcontroller based projects. MT8870 Interfacing diagram |
Az MT8870 alapú DTMF (Dual Tone Multi-Frequency) dekóder modult általában a robotok mobiltelefonos vezérléséhez használják, és különféle otthoni automatizálási projektekben is használják, ahol mobil tárcsázás szükséges. Ez a modul hangdekóderként működik, amely 3,5 mm-es audio csatlakozóaljzattal használja a bemeneti hangjelet. Népszerűen használják mobil és vezetékes telefonos hanghívásokhoz és a kapcsolódó funkciók rögzítéséhez. —– MT8870 DTMF dekóder modul – áttekintés A DTMF általában hangalapú tárcsázó készülékekben található meg, például mobiltelefonokban vagy telefonos számbillentyűkben. A tárcsázó billentyű megnyomásakor két külön szinusz hullám kombinációja jön létre, amely egy egyedi frekvenciajel, amelyet dekódolhat és bináris kimenetként állíthat elő. Az MT8870 alapú DTMF modul pontosan ugyanezt csinálja. A megnyomott gomb könnyen azonosítható a bináris kimenet ellenőrzésével. Bináris kimenetet képes előállítani, ha 0-9 számból, A – D betűkből, * és # szimbólumból érkezik hangbemenet. Az MT8870 DTMF modul fontos alkatrészeit az alábbiakban jelöljük. —– A bináris kimeneti számjegyek a Q1 kimeneti tűn és a Q4 tűn érhetők el. Ebben a modulban fedélzeti LED-ek találhatók, amelyek nagyon hasznosak lehetnek a bináris csapok kimeneti állapotjelének azonosításához. —– A DTMF modul 3,5 mm-es audio bemeneti csatlakozóval rendelkezik, amely könnyen csatlakoztatható mobiltelefonhoz egy 3,5 mm-es audio aljzat használatával. Nagyon hasznos kettős tónusú, több frekvenciás dekódolást adni bármilyen mikrovezérlő alapú projektben. —– MT8870 Összekötő ábra A DTMF dekóder modulok bármilyen mikrovezérlővel összekapcsolhatók, például PIC, Arduino stb. Ehhez 4 digitális I / O tűre van szükség ahhoz, hogy a 4 bináris bit kimeneti tűhöz csatlakozzanak. Ehhez 5 voltos tápfeszültségre is szükség van a modul tápellátásához. Az alábbi ábrán egy egyszerű interfészes példa látható, ahol egy általános mikrovezérlő egység látható. További információ erről a forrásszövegrőlTovábbi fordítási információhoz forrásszöveg szükséges Visszajelzés küldése Oldalsó panelek |
Arduino program:
#define m11 3
#define m12 4
#define m21 5
#define m22 6
//—————————————-
#define D0 19
#define D1 18
#define D2 17
#define D3 16
//—————————————-
void forward()
{
digitalWrite(m11, HIGH);
digitalWrite(m12, LOW);
digitalWrite(m21, HIGH);
digitalWrite(m22, LOW);
}
// ————————————–
void backward()
{
digitalWrite(m11, LOW);
digitalWrite(m12, HIGH);
digitalWrite(m21, LOW);
digitalWrite(m22, HIGH);
}
//————————————–
void left()
{
digitalWrite(m11, HIGH);
digitalWrite(m12, LOW);
digitalWrite(m21, LOW);
digitalWrite(m22, LOW);
}
//————————————-
void right()
{
digitalWrite(m11, LOW);
digitalWrite(m12, LOW);
digitalWrite(m21, HIGH);
digitalWrite(m22, LOW);
}
//————————————-
void Stop()
{
digitalWrite(m11, LOW);
digitalWrite(m12, LOW);
digitalWrite(m21, LOW);
digitalWrite(m22, LOW);
}
//———————————–
void setup()
{
pinMode(D0, INPUT);
pinMode(D1, INPUT);
pinMode(D2, INPUT);
pinMode(D3, INPUT);
//———————————–
pinMode(m11, OUTPUT);
pinMode(m12, OUTPUT);
pinMode(m21, OUTPUT);
pinMode(m22, OUTPUT);
}
//———————————–
void loop()
{
int temp1=digitalRead(D0);
int temp2=digitalRead(D1);
int temp3=digitalRead(D2);
int temp4=digitalRead(D3);
if(temp1==0 && temp2==1 && temp3==0 && temp4==0)
forward();
else if(temp1==0 && temp2==0 && temp3==1 && temp4==0)
left();
else if(temp1==0 && temp2==1 && temp3==1 && temp4==0)
right();
else if(temp1==0 && temp2==0 && temp3==0 && temp4==1)
backward();
else if(temp1==1 && temp2==0 && temp3==1 && temp4==0)
Stop();
}
Üzenet küldés: ITT