DTMF DECODER "HW-005" (MT8870 chip) []

Outils pour utilisateurs

Outils du site


DTMF DECODER "HW-005" (MT8870 chip)

Différences

Ci-dessous, les différences entre deux révisions de la page.

Lien vers cette vue comparative

Les deux révisions précédentesRévision précédente
Prochaine révision
Révision précédente
documentation:electronique:modules_kits:dtmf_decoder:index [2021/01/24 13:48] – [PINOUT] f1slsdocumentation:electronique:modules_kits:dtmf_decoder:index [2023/01/17 06:48] (Version actuelle) – [DTMF (Dual Tone Multi Frequency)] f1sls
Ligne 10: Ligne 10:
   * 2.54” Pin pitch   * 2.54” Pin pitch
   * Board Dimension: 37 x 25 x 12 mm (l x w x h)   * Board Dimension: 37 x 25 x 12 mm (l x w x h)
 +
 +==== DOCUMENTATION ====
 +  * {{ :documentation:electronique:modules_kits:dtmf_decoder:mt8870-dtmf-audio-decoder-module-datasheet.pdf |MT8870 Datasheet}}
 +  * {{ :documentation:electronique:modules_kits:dtmf_decoder:mt8870-schematic-diagram.pdf |Module Schematic Diagram}}
  
 ===== BLOCK DIAGRAM ===== ===== BLOCK DIAGRAM =====
Ligne 18: Ligne 22:
  
 {{:documentation:electronique:modules_kits:dtmf_decoder:dtmf-decoder-pinout.jpg?direct&600|}} {{:documentation:electronique:modules_kits:dtmf_decoder:dtmf-decoder-pinout.jpg?direct&600|}}
 +\\ 
 +{{:documentation:electronique:modules_kits:dtmf_decoder:mt8870-dtmf-audiospeech-decoding-telephone-module.jpg?direct&400|}}
 +
  
 ^ PIN ^ FUNCTION              ^ COMMENT                                                                          ^ ^ PIN ^ FUNCTION              ^ COMMENT                                                                          ^
Ligne 30: Ligne 37:
 | GND | Ground                |                                                                                  | | GND | Ground                |                                                                                  |
  
 +\\ 
 +{{:documentation:electronique:modules_kits:dtmf_decoder:mt8870-state.jpg?direct&400|}}
 ===== INTERFACING ===== ===== INTERFACING =====
 {{:documentation:electronique:modules_kits:dtmf_decoder:mt8870-interfacing-diagram.png?direct&600|}} {{:documentation:electronique:modules_kits:dtmf_decoder:mt8870-interfacing-diagram.png?direct&600|}}
 +
 +===== MT-8870 =====
 +{{:documentation:electronique:modules_kits:dtmf_decoder:mt8870-dtmf-ic-block-diagram.jpg?direct&400|}}
 +\\ 
 +{{:documentation:electronique:modules_kits:dtmf_decoder:mt8870-dtmf-ic-pinout.png?direct&600|}}
 +===== CODE SAMPLES =====
 +
 +==== ARDUINO LIBS ====
 +
 +  * https://www.arduino.cc/reference//en/libraries/mt8870/
 +  * https://github.com/RobTillaart/MT8870
 +==== Sample 1 ====
 +
 +{{:documentation:electronique:modules_kits:dtmf_decoder:dtmf_interfacing_diagram.png?direct&400|}}
 +\\ 
 +{{:documentation:electronique:modules_kits:dtmf_decoder:mt8870-circuit-.jpg?direct&400|}}
 +
 +<code c>
 +void setup() {
 +  Serial.begin(9600);
 +  pinMode(3, INPUT);
 +  pinMode(4, INPUT);
 +  pinMode(5, INPUT);
 +  pinMode(6, INPUT);
 +  pinMode(7, INPUT);
 +}
 +
 +void loop() {
 +  uint8_t number;
 +  bool signal ;  
 +  signal = digitalRead(3);
 +  if(signal == HIGH) /* If new pin pressed */
 +   {
 +    delay(250);
 +    number = ( 0x00 | (digitalRead(7)<<0) | (digitalRead(6)<<1) | (digitalRead(5)<<2) | (digitalRead(4)<<3) );
 +      switch (number)
 +      {
 +        case 0x01:
 +        Serial.println("Pin Pressed : 1");
 +        break;
 +        case 0x02:
 +        Serial.println("Pin Pressed : 2");
 +        break;
 +        case 0x03:
 +        Serial.println("Pin Pressed : 3");
 +        break;
 +        case 0x04:
 +        Serial.println("Pin Pressed : 4");
 +        break;
 +        case 0x05:
 +        Serial.println("Pin Pressed : 5");
 +        break;
 +        case 0x06:
 +        Serial.println("Pin Pressed : 6");
 +        break;
 +        case 7:
 +        Serial.println("Pin Pressed : 7");
 +        break;
 +        case 0x08:
 +        Serial.println("Pin Pressed : 8");
 +        break;
 +        case 0x09:
 +        Serial.println("Pin Pressed : 9");
 +        break;
 +        case 0x0A:
 +        Serial.println("Pin Pressed : 0");
 +        break;
 +        case 0x0B:
 +        Serial.println("Pin Pressed : *");
 +        break;
 +        case 0x0C:
 +        Serial.println("Pin Pressed : #");
 +        break;    
 +      }
 +  }
 +}
 +</code>
 +
 +===== DTMF (Dual Tone Multi Frequency) =====
 +
 +^  Hz    1209  ^  1336  ^  1477  ^  1633  ^
 +^  697  |    1      2      3      A   |
 +^  770  |    4      5      6      B   |  
 +^  852  |    7      8      9      C   |
 +^  941  |    *      0      #      D   |
  
documentation/electronique/modules_kits/dtmf_decoder/index.1611492493.txt.gz · Dernière modification : de f1sls