Sadržaj:
- Korak 1: Idite nabavite stvari
- Korak 2: Razdvojite telefon
- Korak 3: Odredite šta žice rade
- Korak 4: Povežite brojčanik sa PIC čipom
- Korak 5: Sastavite kôd
- Korak 6: Testiranje
- Korak 7: Idite dalje
Video: PIC sučelje rotacijskog birača brojača: 7 koraka
2024 Autor: John Day | [email protected]. Zadnja izmjena: 2024-01-30 08:09
Našao sam se u izobilju rotacionih telefona. U stvari, oni su svuda gdje god pogledam. U nadi da ću ih jednog dana možda vidjeti manje, počeo sam ih rastavljati i dijelove ponovno koristiti u druge svrhe.
Iz nekog razloga mi je palo na pamet da bi povezivanje rotacijske kontrole s PIC čipom bila dobra ideja. Trenutno se mogu sjetiti samo nekoliko neodređenih upotreba za to, a nijedna nije posebno korisna, ali nadam se da ću s tim u budućnosti učiniti nešto cool.
Korak 1: Idite nabavite stvari
Trebat će vam: 1 - rotacijski telefon 3 - 220 ohmski otpornici2 - 0,1uF kondenzatori 2 - 20K otpornik (može zamijeniti bilo što između 10K i 47K) 2 - LED1 - PIC razvojna ploča (koristio sam razvojno okruženje Basic Micro) 1 - 20 MHZ rezonator ili kristal1 - Oglasna ploča1 - Izvor napajanja 5V1 - Stopa priključne žice1 - Odvijač1 - Skidač žice
Korak 2: Razdvojite telefon
Otvorite svoj rotacijski telefon. U unutrašnjosti ćete primijetiti nekoliko osnovnih dijelova; okretni brojčanik, zvono, dvije utičnice, prekidač kuke i osnovno kolo koje je obično zatvoreno u metalnu razvodnu kutiju.
Bit će četiri žice koje vode od rotacijskog birača do ove razvodne kutije. Žice bi trebale biti pričvršćene malo više od zategnutih vijaka. Otpustite vijke i odspojite žice. Nakon toga odspojite rotacijski brojčanik sa samog telefona.
Korak 3: Odredite šta žice rade
Priključite dvije LED diode kao što je prikazano na donjem dijagramu.
Dvije bijele žice trebale bi biti par koji zatvara prekidač i koji vam daje do znanja kada okrenete brojčanik. Plava i zelena žica trebaju biti par koji vam omogućuje da znate koji je broj biran. Kao takvo, kada okrenete brojčanik, LED dioda spojena na bijele žice bi se trebala uključiti, a kada pustite brojčanik, LED spojen na plavu i zelenu žicu trebao bi treptati uključeno i isključeno onoliko puta koliko je vaš broj birano (pogledajte video). Na primjer, ako pozovete 8, LED dioda spojena na zelenu i plavu žicu će se isključiti i upaliti 8 puta. To se događa zato što je jedan od načina biranja telefonskog broja brzo prekidanje veze koliko puta želite unijeti cifru. Dakle, opet, za biranje 8 morali biste brzo prekinuti vezu 8 puta.
Korak 4: Povežite brojčanik sa PIC čipom
Spojite rotacijski brojčanik na PIC čip kako je prikazano na dijagramu. Primijetite da čitam u stanju rotacijskog brojčanika koristeći RC-vrijeme. Drugim riječima, PIC čip broji koliko je puta potrebno da se kondenzator isprazni (što se mijenja kad se doda otpor).
Tu dolazi 20K otpornik. Dodavanje ovoga na ulaz omogućava jasnu razliku između signala iz zatvorene i otvorene veze okretnog prekidača.
Korak 5: Sastavite kôd
Za programiranje čipa koristio sam razvojno okruženje MBasic dostupno od Basic Micro. MBasic je, jednostavno, varijacija Basic -a dizajnirana za upotrebu sa PIC čipovima. Lako se može pretvoriti u univerzalniji (korisniji) jezik. Kôd u osnovi određuje kada je netko okrenuo brojčanik, a zatim vrši detekciju rubova na signalu (određivanje nisko-visokih prijelaza) dok se brojčanik ne vrati u početno stanje. Nakon zbroja koliko puta mjeri prijelaz signala, tada prema tome treperi LED dioda. Na primjer, ako pozovete 3, PIC će prebrojati tri nisko-visoka prijelaza, a zatim će 3 puta zasvijetliti LED. Kao što ste možda zaključili, LED dioda nije potrebna da bi ovo radilo i samo je tu da vam pruži vidljive povratne informacije. Možete zamijeniti bilo koji izlazni uređaj koji smatrate potrebnim. ********************* Evo nekoliko kodova: ********************* CPU = 16F877MHZ = 20CONFIG 16254clicker var wordstartcountin var wordcountclicks var wordrepvar var wordclacker var wordlargefig var wordmain: countclicks = 0repvar = 0'sets/resets valueshigh B2rctime B2, 1, startcountincountclicks = 0if startcountin> 10 to check up to get up to countup> ide na potprogram ako ima goto main '================ countmeup: high B1rctime B1, 1, clacker'sets usporedi valuegoto countmeuploop' =========== ===== countmeuploop: visoka B1pctime B1, 1, clicker'checks counting valuelargefig = clacker + 100'se postavlja vrijednost za prag koji će biti veći 'od 0, ali manji od mogućih pin-high vrijednosti akofigfig <klikač thencountclicks = countclicks + 1endif'adds 1 vrijednost svaki put kada se zabilježi prijelaz od niskog do visokog B2rctime B2, 1, startcountinif startcountin <10 thenif countclicks> 0 thengoto blinkelsegoto mainendifendif'checks da vidi je li brojčanik odskočio natrag na i nitijalno stanje 'ako ima i broj je biran ide u LED rutinu' u suprotnom slučaju, ako nije biran nijedan broj, ide u mainclacker = kliker 'vraća vrijednost usporedbe na trenutnu vrijednost pina, da bi prebrojio meuploop'no pauzira se SVE u ovoj rutini ! '================ žmigavac: repvar = repvar + 1'broji svako ponavljanje ove rutinevisoka B3pauza 1000niska B3pauza 1000'treperi LED diodu ako je repvar = countclicks tadarepvar = 0pređi na glavni način ponavljanja jednaka broju puta kada bi LED dioda trebala treptati, a zatim se vraća na glavnu rutinu, da biste prešli na treperenje
Korak 6: Testiranje
Ako ste učinili sve isto što i ja, trebalo bi raditi (pogledajte video).
Ako ne radi, provjerite jeste li sve pravilno ožičili i je li kôd pravilno kopiran. Također, budite sigurni da je vaš rezonator (ili kristal) 20 MHZ. Ako ste sami napisali kôd, pobrinite se da nema pauza u rutini koja provjerava ima li nisko-visokih prijelaza.
Korak 7: Idite dalje
Smislite neku drugu vrstu upotrebe okretnog točkića osim treptanja LED diode.
Preporučuje se:
Zamjena rotacijskog davača ISDT Q6: 4 koraka
Zamjena rotacijskog kodera ISDT Q6: Ovaj vodič služi kako bi pomogao ljudima koji su Q6 koderi s vremenom prešli u sh*t da postanu neupotrebljivi. Moj se počeo pomicati u nasumičnim, neredovnim smjerovima, pa čak i nakon što je preformulirao lemne spojeve i očistio koder alkoholom, to je i dalje bilo neispravno
556 Vrijeme pruža ulaz sata za 2 dekadna brojača koji će pokretati 20 LED -ova: 6 koraka
556 Vrijeme osigurava unos sata u 2 dekadna brojača koji će pokretati 20 LED -ova: Ova instrukcija će pokazati kako će tajmer 556 osigurati ulaze sata na 2 brojača decenije. Brojači decenije će pokretati 20 LED -a. LED diode će treptati u nizu od 10
Vodič za komplet rotacijskog kodera: 5 koraka
Komplet rotacijskog kodera Vodič: Opis: Ovaj komplet rotacijskog davača može se koristiti za mjerenje položaja i brzine motora. To je vrlo jednostavan komplet koji se sastoji od senzora optičkog snopa (opto prekidač, fototranzistor) i komada diska s prorezima. Može se povezati na bilo koji mikrokontroler
Arduino meni na Nokia 5110 LCD -u pomoću rotacijskog kodera: 6 koraka (sa slikama)
Arduino meni na Nokia 5110 LCD -u pomoću rotacijskog kodera: Dragi prijatelji, dobrodošli u još jedan vodič! U ovom videu ćemo naučiti kako izgraditi vlastiti meni za popularni Nokia 5110 LCD ekran kako bismo naše projekte učinili prilagođenijima korisnicima i sposobnijim. Započnimo! Ovo je projekt
Kako protumačiti smjer rotacije s digitalnog rotacijskog prekidača sa PIC -om: 5 koraka
Kako protumačiti smjer rotacije s digitalnog rotacijskog prekidača sa PIC -om: Cilj ovog uputstva je ilustrirati kako spojiti digitalni (kvadraturno kodirani) rotacijski prekidač s mikrokontrolerom. Ne brinite, objasnit ću šta? Kvadraturno kodirano? znači za nas. Ovo sučelje i prateći softver neće