Isi kandungan:
- Langkah 1: Keluarkan Dail Dari Telefon
- Langkah 2: Kenalpasti Suis
- Langkah 3: Buat Litar
- Langkah 4: Kembangkan Kod
- Langkah 5: Periksa Ia Berfungsi
- Langkah 6: Hubungkannya dengan Sesuatu yang Berguna
Video: Antaramuka Panggilan Telefon Putar ke Arduino: 6 Langkah (dengan Gambar)
2024 Pengarang: John Day | [email protected]. Diubah suai terakhir: 2024-01-30 11:13
Telefon berputar lama boleh digunakan untuk beberapa tujuan dalam projek Arduino anda - gunakannya sebagai peranti input baru, atau gunakan Arduino untuk mengaitkan telefon putar ke komputer anda. Ini adalah panduan yang sangat asas yang menerangkan cara menghubungkan dail ke Arduino, dan dapatkan nombor yang dihantarkan ke komputer melalui pautan bersiri Arduino.
Langkah 1: Keluarkan Dail Dari Telefon
Langkah pertama adalah mengeluarkan unit dail dari telefon. Saya menggunakan telefon GPO dari tahun 1970-an. Pada telefon ini, dail muncul terus - saya hanya perlu menariknya. Sekiranya tidak, anda mungkin perlu membuka telefon dan mengetahui cara melepaskannya. Terdapat lima kabel yang disambungkan ke bahagian belakang unit dail. Di telefon saya, ini adalah sambungan sekop biasa, jadi saya melonggarkan skru dan mengeluarkannya. Sekiranya anda ingin memasang semula telefon anda, ingatlah untuk merakam wayar warna mana yang menuju ke sambungan mana.
Langkah 2: Kenalpasti Suis
Setelah dail keluar, agak mudah untuk melihat bagaimana dail menukar pergerakan putaran menjadi nadi. Cuba putar dail dengan tangan dan perhatikan pergerakan di bahagian belakang. Anda mesti melihat suis membuat dan mematikan litar dengan pantas - jadi jika anda mendail '9', suis harus menggunakan sembilan kali. Bagi anda yang mungkin tidak pernah menggunakan putar putar sebelumnya - ingat bahawa pendailan hanya berlaku apabila anda membiarkan pergi nombornya dan biarkan ia berputar kembali. Saya telah mendokumentasikan bagaimana ia berfungsi untuk telefon saya dalam Nota foto di bawah. Terdapat juga video kabur mekanisme yang berfungsi.
Langkah 3: Buat Litar
Setelah anda menemui suis yang sedang dibuat dan pecah, anda seharusnya dapat mengenal pasti sambungan dengan mengikuti wayar kembali ke terminal sambungan. Dalam kes saya, kedua-dua sisi suis disambungkan ke dua terminal paling kiri. Sambungkan terminal ini ke beberapa wayar pelompat, dan dapatkan prototaip! Suis di dail saya selalu aktif, dan rosak untuk setiap nadi semasa mendail, jadi saya menggunakan litar yang sangat mudah di bawah. Pin 2 akan menjadi TINGGI untuk setiap nadi semasa dail berputar. Apabila telefon tidak didail, suis di unit dail ditutup (yang disebut suis TUTUP NORMAL, untuk alasan yang jelas) sehingga litar menghubungkan pin 2 ke tanah (yang ke Arduino RENDAH). Ini kerana terdapat lebih banyak rintangan melalui perintang 470 ohm daripada perintang 10K. Semasa telefon didail, suis dibuka dan ditutup dengan cepat (untuk 9, ia akan dibuka dan ditutup lagi sembilan kali, ingat). Apabila suis terbuka, pin 2 tidak disambungkan ke tanah - sebaliknya disambungkan ke bekalan 5V melalui rintangan 10470 ohm. Ini ditafsirkan oleh Arduino sebagai TINGGI. Sekiranya dail anda mempunyai suis TERBUKA NORMAL, kemudian menukar kedudukan perintang 10K dan dail harus melakukan silap mata.
Langkah 4: Kembangkan Kod
Sekarang kita memerlukan beberapa kod untuk Arduino untuk menghitung denyutan dan menghantar jumlah keseluruhan setiap nombor yang dipanggil kembali melalui port bersiri. Kod saya ada di bawah. Oleh kerana kami berurusan dengan mekanikal di sini, alat anda mungkin berbeza. Cuba mainkan dengan pemalar debounce dan 'berapa lama kita menunggu sebelum mengandaikan dail telah selesai berpusing' pemalar. Saya telah mencuba memberikan komennya dengan kemas. Mudah-mudahan cukup mudah.int needToPrint = 0; int count; int in = 2; int lastState = LOW; int trueState = LOW; long lastStateChangeTime = 0; int cleared = 0; // constantsint dialHasFinishedRotatingAfterMs = 100; int debounceDelay = 10; batal persediaan () {Serial.begin (9600); pinMode (in, INPUT);} gelung void () {int reading = digitalRead (in); if ((millis () - lastStateChangeTime)> dialHasFinishedRotatingAfterMs) {// dail tidak dipanggil, atau baru sahaja selesai didail. jika (needToPrint) {// jika baru sahaja selesai didail, kami perlu menghantar nombor itu ke baris // siri dan menetapkan semula kiraannya. Kami mengubah kiraan sebanyak 10 kerana '0' akan menghantar 10 denyutan. Serial.print (kiraan% 10, DEC); needToPrint = 0; kiraan = 0; dibersihkan = 0; }} jika (membaca! = lastState) {lastStateChangeTime = millis (); } if ((millis () - lastStateChangeTime)> debounceDelay) {// debounce - ini berlaku sebaik sahaja stablized jika (membaca! = trueState) {// ini bermaksud bahawa suis telah berubah dari tertutup-> terbuka atau sebaliknya. trueState = membaca; if (trueState == TINGGI) {// tambah bilangan denyutan jika ia tinggi. kira ++; needToPrint = 1; // kita perlu mencetak nombor ini (setelah dail selesai berputar)}}} lastState = membaca;}
Langkah 5: Periksa Ia Berfungsi
Pastikan ia berfungsi dengan membuka tetingkap bersiri (saya menggunakan skrin pada mesin unix, anda mungkin ingin menggunakan Hyperterm atau yang serupa pada Windows), dan cuba mendail beberapa nombor. Pastikan bahawa program bersiri itu ditetapkan untuk dibaca dari USB- > penyesuai bersiri di Arduino anda (periksa menu Alat> Serial Port dalam perisian Arduino jika anda lupa apa itu), dan kadar baud 9600 bps. Anda akan melihat nombor yang betul muncul semasa ia didail.
Langkah 6: Hubungkannya dengan Sesuatu yang Berguna
Saya datang dengan fail Quartz Composer di Mac saya untuk mengambil input dan memberikannya dengan baik ke skrin. Sebaik sahaja ia berada dalam mesin sebagai data bersiri, anda boleh melakukan apa sahaja dengannya. Menunggu untuk mendengar idea anda! Saya akan tampil dengan sebuah video yang 'beraksi' dan mencetak nombor ke skrin secepat mungkin apabila saya mendapatkan seseorang memegang kamera untuk saya - berharap saya mempunyai tiga tangan.
Disyorkan:
Telefon Mudah Alih Putar Gaya Retro: 4 Langkah (dengan Gambar)
Telefon Bergerak Rotary Gaya Retro: Projek ini didorong oleh keperluan praktikal dan ingin melakukan sesuatu yang menyeronokkan. Seperti kebanyakan keluarga moden, kami berhenti memiliki " rumah " telefon (berkabel) bertahun-tahun yang lalu. Sebaliknya, kami mempunyai kad SIM tambahan yang dikaitkan dengan " lama " nombor rumah
Bermula dengan Antaramuka Sensor I2C ?? - Antaramuka MMA8451 Anda Menggunakan ESP32s: 8 Langkah
Bermula dengan Antaramuka Sensor I2C ?? - Antaramuka MMA8451 Anda Dengan Menggunakan ESP32: Dalam tutorial ini, anda akan mempelajari semua tentang Cara memulakan, menyambung dan mendapatkan peranti I2C (Accelerometer) yang berfungsi dengan pengawal (Arduino, ESP32, ESP8266, ESP12 NodeMCU)
Putar Telefon Pusing ke Radio dan Perjalanan Sepanjang Masa: 5 Langkah (dengan Gambar)
Hidupkan Telefon Pusing ke Radio dan Perjalanan Sepanjang Masa: Saya menggodam telefon putar menjadi radio! Angkat telefon, pilih negara dan satu dekad, dan dengarkan muzik hebat
Antaramuka Dua Kawat (DMX) Dengan Skrin dan Butang: 5 Langkah (dengan Gambar)
Antaramuka Dua Kawat (DMX) Dengan Skrin dan Butang: DMX adalah protokol yang digunakan untuk mengawal lekapan lampu tahap dan kesan khas. Setiap peranti mempunyai salurannya sendiri yang bertindak balas. Saluran ini dapat dipilih oleh suis DIP atau paparan dengan butang. Terdapat banyak cara untuk memilih
Cara Membuat Panggilan Telefon Percuma Dengan Menggunakan Skype .: 4 Langkah
Bagaimana Membuat Panggilan Telefon Percuma Dengan Menggunakan Skype: Saya tidak pasti mengapa saya menyiarkannya kecuali untuk fakta bahawa saya masih ingat zaman dahulu pad pad dan lain-lain sebelum kemalangan teknologi pada awal tahun 2000-an. Dulu adalah perkara paling keren di dunia untuk membuat panggilan jarak jauh percuma dari mana-mana syarikat