|
- /*
- 【Arduino】168種傳感器模塊系列實(shí)驗(yàn)(資料+代碼+圖形+仿真)
- 實(shí)驗(yàn)一百四十五:MT8870 DTMF語(yǔ)音解碼板模塊 電話撥號(hào)控制音頻解碼處理電路
- 第二項(xiàng)實(shí)驗(yàn):重復(fù)播放合成DTMF雙音多頻8675309撥號(hào)音
- 1、安裝 "Tone.h"庫(kù): IDE-工具-管理庫(kù)-搜索-安裝
- 2、項(xiàng)目測(cè)試 :發(fā)送電話號(hào)碼8675309到串口
- 3、需要材料:喇叭1個(gè),68Ω電阻兩個(gè)
- 4、硬件連接:在D11,D12引腳各接一個(gè)68Ω電阻一端,
- 68Ω電阻另一端接喇叭,然后喇叭另一端接地。
- */
- #include <Tone.h>
- Tone freq1;
- Tone freq2;
- const int DTMF_freq1[] = { 1336, 1209, 1336, 1477, 1209, 1336, 1477, 1209, 1336, 1477 };
- const int DTMF_freq2[] = { 941, 697, 697, 697, 770, 770, 770, 852, 852, 852 };
- void setup()
- {
- Serial.begin(9600);
- freq1.begin(11);
- freq2.begin(12);
- }
- void playDTMF(uint8_t number, long duration)
- {
- freq1.play(DTMF_freq1[number], duration);
- freq2.play(DTMF_freq2[number], duration);
- }
- void loop()
- {
- int i;
- uint8_t phone_number[] = { 8, 6, 7, 5, 3, 0 , 9 };
- for (i = 0; i < sizeof(phone_number); i ++)
- {
- Serial.print(phone_number[i], 10);
- Serial.print(' ');
- playDTMF(phone_number[i], 500);
- delay(600);
- }
- Serial.println();
- delay(4000);
- }
復(fù)制代碼
|
|