Mündəricat:

Ümumi keçid oğurlayıcısı: 3 addım
Ümumi keçid oğurlayıcısı: 3 addım

Video: Ümumi keçid oğurlayıcısı: 3 addım

Video: Ümumi keçid oğurlayıcısı: 3 addım
Video: Menecment İxtisası Barəsində Ümumi Məlumat (iş imkanları, keçid balları) | İxtisaslarımız #1 2024, Iyul
Anonim
Ümumi keçid oğurlayıcısı
Ümumi keçid oğurlayıcısı

Bu məqalədə fiziki açarları idarə edən bərk vəziyyətdə bir mikrokontrolör cihazının necə qurulacağı təsvir edilmişdir. Bir mikro nəzarətçi proqramçınız olduğunu düşünərək (4 $ və ya daha çox) etmək çox ucuzdur. Dövrün özü mənasız bir mürəkkəbliyə malikdir.

Bu layihə çox sadədir və heç bir təəccüblü yeni texnika tələb etmir. Yaxşı bir ilk mikrokontrolör layihəsi olaraq xidmət edərdi. Bu məqalədə montaj mənbəyi kodu sizə veriləcəkdir. İş yerində həqiqətən sərin bir patronum var. Bəzən bir -birimizə praktik zarafatlar etməyi sevirik. Təəssüf ki, onun üçün elm adamıyam. Buradakı məqsədim, iş yerindəki müxtəlif cihazları qısa müddət ərzində müəmmalı şəkildə açmaqdır. Radiolar, səs -küylü printerlər, hətta adi bir obyektdə gizlədilən musiqili doğum günü kartları. Üstəlik, layihə, çıxış pinlərinin özləri ilə məşğul ola biləcəyindən daha ağır yükləri AVR ilə necə idarə etdiyinizə bir nümunədir. Çıxış sancaqları sizə yalnız kiçik bir gərginlik və çox məhdud bir cərəyan verdiyindən bu çox müxtəlif şeylərdir. Həqiqətən də çox ağır yükləri idarə etmək üçün bu dövrə bir röle ilə genişləndirilə bilər.

Addım 1: Dizayn və Dövrə

Dizayn və Dövrə
Dizayn və Dövrə

Bu layihə üçün demək olar ki, hər hansı bir mikro nəzarətçi, 5v gərginlik tənzimləyicisi və NPN tranzistorundan istifadə edə bilərsiniz. Mən istifadə etdim:

1x ATtiny26L-8PU (~ 2 $) 1x TL780 5v gərginlik tənzimləyicisi (~ 0,7 $) 1x N2222 tranzistor (~ 0,07 $) 1x 9v batareya və ya yerdən qənaət etmək üçün 12v uzaqdan idarəetmə batareyası… və əlbəttə mənim etibarlı STK500, indi ZIF ilə prizlər əlavə edildi! Əsas dizayn budur: Mikro nəzarətçi iki zamanlama döngəsindən keçir. Cihazın nə vaxt açılacağını təyin etmək üçün uzun bir döngə və cihazın nə qədər açıq qalacağını təyin etmək üçün qısa bir döngə. Problem yaratmağın vaxtı gəldikdə, mikro nəzarətçi məntiqi yüksək pin 14 (Ən Az PORTA Bit) göndərir. Bu, tranzistoru işə salır. Kelepçeleri bir keçiddəki elektrik naqillərinə bağlamısınızsa, bu, keçid arasındakı müqavimətin birdən çox yüksəkdən 1 ohmdan aşağı düşməsinə səbəb olur ki, bu da əksər cihazların açarı nəzərə alması üçün kifayətdir. Transistorların da diod olduğunu unutmayın, buna görə işləmirsə … sıxacların polaritesi yəqin ki səhvdir, onları dəyişdirin! Ayrıca, bu cihaz, 8v -dən çox potensialı olan, yaxşı bir 9v batareya tələb edir … çox güc istifadə etmir. İstifadə edilməmiş sancaqlar çoxdur, buna görə əlbəttə ki, daha çox xaos üçün daha çox açarı idarə etmək üçün istifadə edə bilərsiniz, amma bu mənim məqsədlərim üçün kifayət idi. Növbəti addım, bu işi davam etdirmək üçün yazdığım mənbə kodudur. "Açıq" və "söndürülmüş" vəziyyətlər üçün standart uzunluqlar təxminən 10 saniyə və 13 dəqiqədir. Kodda bu dəyərlərin necə dəyişdiriləcəyinə dair şərhlər var. Nəhayət, taymerləri düzəltmək üçün "nop" funksiyasından (heç bir şey etmədən bir CPU dövrü sərf edir) geniş istifadə etməyinizi xahiş edirik. Nə qədər istifadə etdiyinizə diqqətli deyilsinizsə, rjmp funksiyasını poza biləcəyi üçün qeyri -adi bir şeydir!

Addım 2: Mənbə Kodu

BAŞLAMAQ:

. INCLUDE "tn26def.inc"; Tərif faylı. Bir nüsxəyə ehtiyacınız varsa bunun üçün Google. clr r30 clr r29 clr r28 clr r27 ldi r28, 0b00000000 ldi r27, 0b11111111 ldi r26, 0b00000000 clr r25 DDRA, r27 out PORTA, r28 TIMER: inc r30 nop nop nop nop nop nop nop nop noop noop nop nop yox nop cpi r30, 0b11111111 breq TIMER2 rjmp TIMER TIMER2: nop nop nop nop nop nop nop nop nop nop nop nop nop nop nop nop nop nop nop nop nop nop nop inc r29 TpER r11 t2 nop nop yox nop nop nop nop nop nop nop nop nop nop nop inc r25 cpi r25, 0b11111111; "off" vaxtını azaltmaq üçün bu rəqəmi aşağı salın FUNC rjmp TIMER FUNC: yox nop cpi r28, 0x00 breq FUNC2 dec r28 clr r30 clr r29 cl25 r25 out of PORTA, r28 rjmp TIMER FUNC2: nop nop inc r28 out of PORTA, r28 clr r25 clr r30 clr r29 rjmp TIMER4 TIMER4: no rop no no no nop nop yox nop yox nop yox cpi r30, 0b11111111 breq TIMER5 rjmp TIMER4 TIMER5: yox nop yox nop nop nop inc r29 cpi r29, 0b11111 111 TIMER6 rjmp TIMER4 TIMER6: inc r25 cpi r25, 0b00000011; "On" vaxtını artırmaq üçün bu sayını artırın FUNC rjmp TIMER4

Addım 3: Son Qeyd

Əylən, amma unutma ki, tranzistorun içindən nə qədər güc çəkə biləcəyinə dair məhdudiyyətlər var. Yəni şəbəkə gərginliyi yoxdur! Transistorun çox sürətli yüklənməsinin yanında, bu cihaz alternativ siqnalları yaxşı idarə etməyəcək … aşağıda təsvir olunan modifikasiyanı tətbiq etməsəniz * və * bir röle əlavə edin: Qısqac polaritesindən narahat olmaq sizi əsəbiləşdirirsə, ikinci bir tranzistora bağlayın. ilk tranzistorla eyni mənbəyə bağlı olan, lakin əks konfiqurasiyada kollektor və emitentə malik olan əsas lövhə. Bu şəkildə, sıxacları necə bağladığınızdan asılı olmayaraq, mikrokontrolördən çıxan yüksək bir məntiq həmişə açarı "açacaq". Unutmayın ki, bu sistemdəki sızma cərəyanı klaviatura matrisi kimi bəzi həssas açarları aktivləşdirmək üçün kifayət ola bilər, bu proqram üçün bir sıra rezistor əlavə etməyiniz lazım ola bilər. Unutmayın ki, batareyadan istifadə etmək əvəzinə hədəf cihazdan güc ala bilərsiniz. Nəhayət … cihazı çap funksiyaları olan qədim bir mühasibat kalkulyatoruna quraşdırdım. Bağlandıqda hansı IC sancaqlarının kağız tədarükünə səbəb olacağını müəyyən etmək üçün bir klip istifadə edərək klaviatura matrisini tərs tərtib etdim və cihazla birlikdə düzgün pinləri bağladım. Sonra, çap funksiyasını söndürməyə imkan verən keçidi deaktiv etdim. Cihaz hər dəfə 10 saniyə ərzində, hər dəfə 10 saniyə ərzində, olduqca səs-küylü kağız tədarükünü işə salır, həm də bu hiper-iyrənc musiqi ad günü kartlarından birinin dövrəsi ilə yaxşı işləyirdi, iş yerim indi daha qəribədir!

Tövsiyə: