Mündəricat:
- Addım 1: Şeylər Alın
- Addım 2: Telefonu ayırın
- Addım 3: Tellərin nə etdiyini təyin edin
- Addım 4: Dialeri PIC çipinə qoşun
- Addım 5: Kodu yığın
- Addım 6: Test
- Addım 7: Ardınca gedin
Video: Rotary Dialer PIC İnterfeysi: 7 addım
2024 Müəllif: John Day | [email protected]. Son dəyişdirildi: 2024-01-30 07:48
Özümü çoxlu fırlanan telefonlarla tapdım. Əslində, baxdığım hər yerdədirlər. Nə vaxtsa onlardan daha azını görəcəyim ümidi ilə onları parçalamağa və hissələri başqa məqsədlər üçün yenidən istifadə etməyə başladım.
Nədənsə fırlanan idarəetmə elementini PIC çipi ilə birləşdirməyin yaxşı bir fikir olacağını beynimə aldım. Hal -hazırda bunun üçün yalnız bir neçə qeyri -müəyyən istifadə düşünə bilərəm və bunların heç biri xüsusilə faydalı deyil, amma gələcəkdə bununla sərin bir şey edəcəyimi ümid edirəm.
Addım 1: Şeylər Alın
Ehtiyacınız olacaq: 1 - Döner telefon 3 - 220 ohm rezistorlar2 - 0.1uF kondansatörler 2 - 20K müqavimət (10K ilə 47K arasında bir şeyi əvəz edə bilər) 2 - LEDlər1 - PIC inkişaf lövhəsi (Əsas Mikro inkişaf mühitindən istifadə etdim) 1-20 MHZ rezonator və ya büllur1 - Çörək lövhəsi1 - 5V enerji mənbəyi1 - Bir ayağa yaxın bir tel bağlama1 - Tornavida1 - Tel çıxarıcı
Addım 2: Telefonu ayırın
Dönən telefonunuzu açın. İçəridə bir neçə əsas hissəni görəcəksiniz; fırlanan kadran, zəngi, iki kriko, çəngəl açarı və ümumiyyətlə metal qovşağa bənzər bir şeylə örtülmüş əsas dövrə.
Dönər çeviricidən bu qovşaq qutusuna bənzər bir şeyə gedən dörd tel olacaq. Tellər, sıxılmış vintlərdən bir az çox yerində tutulmalıdır. Vintləri gevşetin və telləri ayırın. Bundan sonra, fırlanan çeviricini telefonun özündən ayırın.
Addım 3: Tellərin nə etdiyini təyin edin
Aşağıdakı diaqramda göstərildiyi kimi iki LED bağlayın.
İki ağ tel, kadr çevrildikdə sizə xəbər verən açarı bağlayan cüt olmalıdır. Mavi və yaşıl tel hansı nömrənin yığıldığını bilmənizi təmin edən cüt olmalıdır. Buna görə də, düyməni çevirdiyiniz zaman ağ tellərə qoşulmuş LED açılmalı və düyməni buraxdığınız zaman mavi və yaşıl tellərə qoşulmuş LED sizin sayınız qədər yanıb sönməlidir. yığılıb (videoya baxın). Məsələn, 8 -ə zəng etsəniz, yaşıl və mavi telə qoşulmuş LED 8 dəfə sönəcək və yanacaq. Bunun səbəbi, telefon nömrəsini yığmağın bir yolu, yığmağa çalışdığınız rəqəmin neçə dəfə əlaqəni tez bir zamanda kəsmək olmasıdır. Yenə də 8 -i yığmaq üçün əlaqəni 8 dəfə sürətlə kəsmək lazım gələcək.
Addım 4: Dialeri PIC çipinə qoşun
Şəkildə göründüyü kimi fırlanan çeviricini PIC çipinə qoşun. Diqqət yetirin, RC-zamanlama istifadə edərək fırlanan çevirici vəziyyətində oxuyuram. Başqa sözlə, PIC çipi bir kondansatörün boşalma müddətini hesablayır (müqavimət əlavə edildikdə dəyişir).
20K müqavimətinin gəldiyi yer budur. Bunu girişə əlavə etmək, qapalı və açıq fırlanan keçid bağlantısından gələn siqnal arasında aydın bir fərq yaratmağa imkan verir.
Addım 5: Kodu yığın
Çipi proqramlaşdırmaq üçün Basic Micro -da mövcud olan MBasic inkişaf mühitindən istifadə etdim. MBasic, sadəcə olaraq, PIC çipləri ilə istifadə üçün nəzərdə tutulmuş bir Basic versiyasıdır. Daha universal (faydalı) bir dilə asanlıqla çevrilə bilər. Kod mahiyyətcə kiminsə döngəni çevirdiyini və sonra yığımın ilkin vəziyyətinə qayıdana qədər siqnalda kənar algılama (aşağı yüksək keçidləri təyin edən) təyin edir. Siqnal keçidini neçə dəfə hesabladıqdan sonra LED -i buna uyğun olaraq yanıb -sönür. Məsələn, 3-ü yığarsanız, PIC üç aşağı keçid sayacaq və sonra LED-i 3 dəfə yanıb-sönəcək. LED, təxmin etdiyiniz kimi, bunun işləməsi üçün lazımsızdır və sizə görünən rəy vermək üçün yalnız oradadır. Lazım bildiyiniz hər hansı bir çıxış cihazını əvəz edə bilərsiniz. ********************* Budur bir kod: ********************* CPU = 16F877MHZ = 20CONFIG 16254clicker var wordstartcountin var wordcountclicks var wordrepvar var wordclacker var wordlargefig var wordmain: countclicks = 0repvar = 0'sets/sıfırlanır dəyərlər yüksək B2rctime B2, 1, startcountincountclicks = 0 əgər startcountin> 10 yoxlanılıbsa əsas proqrama sahibdirsə alt proqrama keçir '================ countmeup: yüksək B1rctime B1, 1, clackerets dəyərləri sayma qrupu ilə müqayisə edir' =========== ===== countmeuploop: yüksək B1rctime B1, 1, clicker'sayarlama dəyərini yoxlayırlarlargefig = clacker + 100, eşik üçün '0-dan daha böyük, lakin mümkün olan pin-yüksək dəyərlərdən daha kiçik olan bir dəyər təyin edir. + 1endif hər dəfə aşağıdan yuxarıya keçid qeydə alındıqda yüksək B2 saatı B2, 1, startcountinif startcountin <10 sonra sayına vurduqda> 0 sonra blinkelsegoto mainendifendif'yi yoxlayaraq kadranın geri döndüyünü yoxlayır nitial vəziyyətə sahib olduqda və bir nömrə yığılmışsa LED rejiminə keçir 'əks halda, əgər heç bir nömrə yığılmamışsa mainclacker = clicker'ə gedir müqayisə dəyərini cari pin dəyərinə sıfırlayın Countupuploop'BÜTÜN bu rejimdə heç bir ara vermir ! '=============== yanıb -sönən: repvar = repvar + 1'Bu rutinin hər bir təkrarını sayar yüksək B3pause 1000low B3pause 1000'yığır LEDif repvar = kliklər sonrarepvar = 0göndərirsə təkrarlama, LED -in yanıb sönmə sayına bərabərdir, sonra əsas işə qayıdır
Addım 6: Test
Hər şeyi mənim kimi etdinizsə, işləməlidir (videoya baxın).
İşləmirsə, hər şeyi düzgün bağladığınızdan və kodun düzgün kopyalandığından əmin olun. Ayrıca, rezonatorunuzun (və ya kristalınızın) 20 MHZ olduğuna əmin olun. Öz kodunuzu yazmısınızsa, aşağı yüksək keçidləri yoxlayan rutində heç bir fasilə olmadığından əmin olun.
Addım 7: Ardınca gedin
Bir LED -in yanıb -sönməsindən başqa, fırlanan kadr üçün başqa bir növ istifadəni düşünün.
Tövsiyə:
I²C İnterfeysi ilə Statik LCD Sürücü Necə Hazırlanır: 12 Addım
I²C İnterfeysi ilə Statik LCD Sürücü Necə Hazırlanır: Maye Kristal Ekranlar (LCD) yaxşı vizual xüsusiyyətlərə, aşağı qiymətə və aşağı enerji istehlakına görə ticarət və sənaye tətbiqlərində geniş istifadə olunur. Bu xüsusiyyətlər LCD-ni batareya ilə işləyən qurğular üçün standart bir həll halına gətirir
USB Klaviaturaya DIY Analog Dialer: 4 addım
USB Klaviatura üçün DIY Analog Dialer: Bu layihəni yalnız əyləncə üçün hazırladım, amma bu şey hər şeylə normal bir klaviatura kimi işləyir
Arduino ilə Aritech üçün Ev Alarmı İnternet Dialer: 6 addım
Arduino ilə Aritech üçün Ev Alarmı İnternet Dialer: Bir çox Avropa ölkəsində istifadə edilən çox yaygın bir Ev və iş siqnalı Aritech siqnal panelləridir. Bunlar 2000 -ci illərin əvvəllərinə qədər yüz minlərlə qurulub və bir çoxu bu gün də evlərdə var - ümumiyyətlə yenidən nişanlanırlar
I2C Sensor İnterfeysi ilə Başlarsınız? - ESP32s istifadə edərək MMA8451 interfeysi: 8 addım
I2C Sensor İnterfeysi ilə Başlarsınız? - MMA8451 -in ESP32 -lərdən istifadə edərək interfeysi: Bu təlimatda, nəzarətçi ilə işləyən (Arduino, ESP32, ESP8266, ESP12 NodeMCU) işləyən I2C cihazının (Akselerometr) necə işə salınması, qoşulması və alınması haqqında hər şeyi öyrənəcəksiniz
MIDI addım interfeysi: 12 addım (şəkillərlə)
MIDI Addım İnterfeysi: İspan versiyası burada.Bu təlimatda sizə " Simon Says " və MIDI interfeysi kimi. Hər iki rejim də ayaqlarınızla oynanılacaq. Arka Plan Layihə ona görə doğuldu ki