Sisällysluettelo:

Liitä pyörivä puhelinvalitsin Arduinoon: 6 vaihetta (kuvilla)
Liitä pyörivä puhelinvalitsin Arduinoon: 6 vaihetta (kuvilla)

Video: Liitä pyörivä puhelinvalitsin Arduinoon: 6 vaihetta (kuvilla)

Video: Liitä pyörivä puhelinvalitsin Arduinoon: 6 vaihetta (kuvilla)
Video: Heureka Klassikot - Pyörivä pää 2024, Marraskuu
Anonim
Liitä pyörivä puhelinvalitsin Arduinolle
Liitä pyörivä puhelinvalitsin Arduinolle
Liitä pyörivä puhelinvalitsin Arduinolle
Liitä pyörivä puhelinvalitsin Arduinolle

Vanhaa pyörivää puhelinta voidaan käyttää moniin tarkoituksiin Arduino -projekteissasi - käytä sitä uudena syöttölaitteena tai liitä pyörivä puhelin tietokoneeseen Arduinon avulla. Arduinolle ja saat valitun numeron tietokoneeseen Arduinon sarjayhteyden kautta.

Vaihe 1: Poista valitsin puhelimesta

Poista valitsin puhelimesta
Poista valitsin puhelimesta
Poista valitsin puhelimesta
Poista valitsin puhelimesta
Poista valitsin puhelimesta
Poista valitsin puhelimesta

Ensimmäinen askel on irrottaa valintayksikkö puhelimesta. Käytän jonkinlaista GPO -puhelinta 1970 -luvulta, ja tässä puhelimessa valitsin ponnahti suoraan ulos - minun piti vain vetää sitä. Jos näin ei tapahdu, sinun on ehkä avattava puhelin ja selvitettävä, miten se irrotetaan. Valintayksikön takaosaan oli kytketty viisi kaapelia. Puhelimessani nämä olivat tavallisia lapioyhteyksiä, joten löysin ruuvit ja vedin ne ulos. Jos haluat koota puhelimesi uudelleen, muista tallentaa, mikä värijohto mihin yhteyteen menee.

Vaihe 2: Tunnista kytkin

Tunnista kytkin
Tunnista kytkin

Kun valitsin on pois päältä, pitäisi olla suhteellisen helppo nähdä, kuinka valitsin muuttaa pyörivän liikkeen pulsseiksi. Kokeile pyörittää valitsinta käsin ja katsella liikettä takana. Sinun pitäisi nähdä kytkin, joka muodostaa ja katkaisee piirin nopeasti - joten jos valitset '9', kytkimen pitäisi kytkeytyä yhdeksän kertaa. Niille, jotka eivät ehkä ole koskaan käyttäneet kiertovalitsinta ennen - muista, että valinta tapahtuu vain, kun annat Siirry numeroon ja anna sen kääntyä takaisin. Olen dokumentoinut, miten se toimii puhelimessani alla olevan valokuvan muistiinpanoissa.

Vaihe 3: Tee piiri

Tee piiri
Tee piiri
Tee piiri
Tee piiri

Kun olet löytänyt valmistettavan ja rikkoutuneen kytkimen, sinun pitäisi pystyä tunnistamaan liitännät seuraamalla johtoja takaisin liittimiin. Minun tapauksessani kytkimen molemmat puolet on kytketty kahteen vasempaan päätelaitteeseen. Kytke nämä liittimet joihinkin hyppyjohtoihin ja hanki prototyyppi! Valitsimessani oleva kytkin on aina päällä, ja se on rikki kullekin pulssille soittaessani, joten käytin alla olevaa hyvin yksinkertaista piiriä. Nasta 2 siirtyy KORKEA jokaiselle pulssille, kun valitsin pyörii. Kun puhelimeen ei soiteta, valintayksikön kytkin on suljettu (ns. NORMALLY CLOSED -kytkin, ilmeisistä syistä), joten piiri yhdistää nastan 2 maahan (mikä Arduinoon on matala). Tämä johtuu siitä, että 470 ohmin vastuksen kautta on paljon vähemmän vastusta kuin 10K: n vastus. Kun kytkin on auki, nasta 2 ei ole kytketty maahan - sen sijaan se on kytketty 5 V: n syöttöön 10470 ohmin vastuksen kautta. Arduino tulkitsee tämän HIGH: ksi.

Vaihe 4: Kehitä koodi

Kehitä koodi
Kehitä koodi

Nyt tarvitsemme jonkin koodin, jotta Arduino voi laskea pulssit ja lähettää kokonaismäärän numeroa kohti, joka on valittu takaisin sarjaportin kautta. Koska me käsittelemme täällä mekaanisia laitteita, omasi voivat olla erilaisia. Yritä leikkiä debounce -vakion ja "kuinka kauan odotamme ennen kuin oletamme, että valitsin on lopettanut pyörimisen" vakio. Olen yrittänyt kommentoida sitä niin siististi kuin voin. Toivottavasti se on melko yksinkertaista. void setup () {Serial.begin (9600); pinMode (in, INPUT);} void loop () {int reading = digitalRead (in); if ((millis () - lastStateChangeTime)> dialHasFinishedRotatingAfterMs) {// valitsinta ei soiteta tai se on juuri valmis. if (needToPrint) {// jos sen valinta on vasta päättynyt, meidän on lähetettävä numero sarja // -riville ja nollattava lasku. Muutamme lukua 10: llä, koska '0' lähettää 10 pulssia. Sarjajälki (määrä % 10, DEC); needToPrint = 0; määrä = 0; poistettu = 0; }} if (lukeminen! = lastState) {lastStateChangeTime = millis (); } if ((millis () - lastStateChangeTime)> debounceDelay) {// debounce - tämä tapahtuu, kun se on pysäytetty, jos (lukeminen! = trueState) {// tämä tarkoittaa, että kytkin on joko mennyt kiinni -> auki tai päinvastoin. trueState = lukeminen; if (trueState == HIGH) {// lisää pulssien määrää, jos se on korkea. laskea ++; needToPrint = 1; // meidän on tulostettava tämä numero (kun valitsin on pyörinyt)}}} lastState = lukeminen;}

Vaihe 5: Tarkista, että se toimii

Tarkista, että se toimii avaamalla sarjaikkuna (käytän unix-koneen näyttöä, haluat ehkä käyttää Hypertermiä tai vastaavaa Windowsissa) ja yritä valita joitakin numeroita. > sarjasovitin Arduinossa (tarkista Arduino-ohjelmiston Työkalut-> Sarjaportti-valikko, jos unohdat, mikä se on) ja siirtonopeus 9600 bps. Sinun pitäisi nähdä oikea numero, kun se valitaan

Vaihe 6: Kiinnitä se johonkin hyödylliseen

Kiinnitä se johonkin hyödylliseen!
Kiinnitä se johonkin hyödylliseen!

Keksin Quartz Composer -tiedoston Macilleni ottamaan syötteen ja näyttämään sen kauniisti näytölle. Kun se on koneessa sarjatiedoksi, voit tehdä mitä tahansa sen kanssa. Odotan kuulevan ideoitasi! Teen videon siitä "toiminnassa" ja tulostan numerot näytölle heti, kun saan jonkun pitämään kameraa puolestani - toivoisin, että minulla olisi kolme kättä.

Suositeltava: