PIC12F629 mikrodenetleyici üzerine kurulu elektronik zar uygulamasının yazılımı MikroC ile hazırlanmış zarlar için 14 adet led kullanılıyor çiftli elektronik zar 3 saniyede bir butona basıldığında rast gele sonuç veriyor 15 saniye içinde kullanılmaz ise uyku moduna geçiyor sonrasında butona basılırsa devre normal çalışmaya devam ediyor. Elektronik zar devresine ait kaynak yazılım kodları isis simülasyon dosyası ve sprint layout ile hazırlanan pcb çizimi var.
Bu devre, yandığında iki zar ve bir PIC12F629 mikro denetleyicisi oluşturan 14 LED kullanan iki standart zarın elektronik bir versiyonunu uygular. Sıradan elektronik olmayan zarlarda olduğu gibi, örneğin “tavla” oynamak için, aynı anda 1’den 6’ya kadar rastgele ve bağımsız iki değer verilir.
Düğmeye basarak, 3 saniye içinde. sonraki kombinasyon verilir, ardından bir sonraki düğmeye basılana kadar LED’ler söner. Düğmeye 15 saniye içinde basılmazsa, cihaz, test cihazına göre 1 μA’dan fazla olmayan bir akım tüketimi ile uyku moduna geçer. Tuşa tekrar bastığınızda cihaz normal çalışmasına devam eder. Cihazda açma/kapama düğmesi yoktur, her zaman kullanıma hazırdır ve bir tuş dokunuşuyla hemen açılır. Basit bir hesaplama, üç ucuz tuz piliyle çalıştırıldığında, şarjın zarın 10.000 “atılması” için yeterli olduğunu gösterir (LED’ler yandığında ortalama akım 15 mA’dır). Ve uyku modunda, yıllarca olabilir …
Sınırlı sayıda çıkış nedeniyle, dinamik bir gösterge uygulanır – her bir “kemik”, diğeriyle dönüşümlü olarak 10 ms boyunca yanar. Her bir “kemik”, üç grupta (1, 2 ve 4 LED) toplanan LED’lerden oluşur, parlaklıklarının kombinasyonu altı değerin tümünü verir. Aynı ada sahip gruplar birbirine bağlanır ve akım sınırlayıcı dirençler R2-R4 aracılığıyla mikrodenetleyicinin GP0 – GP2 bağlantı noktalarına bağlanır. D4 ve D11 dışındaki tüm LED’ler çiftler halinde seri olarak bağlanır. D4, D11 devresinde (burada seri olarak iki değil, grupta bir LED), 3,5 – 4,7 V’luk bir besleme voltajında farklı grupların parıltısının parlaklığını eşitlemek için VD1 ve VD2 diyotları tanıtılır. Aynı amaçla, direnç R2’nin direnci yarıya indirilir (grupta iki paralel LED zinciri vardır). Her bir “kemiği” oluşturan LED’lerin birleşik katotları, sırasıyla GP4 ve GP5 bağlantı noktalarına bağlanır. Dinamik gösterge frekansı – 50 Hz. S1 düğmesi, normal giriş olarak yapılandırılmış GP3 girişine bağlanır.
Çıkış değerlerinin rastgeleliği aşağıdaki şekilde sağlanır. TMR1 zamanlayıcısı 1 MHz’de saatlidir, yani her 0,065 saniyede bir taşar. Düğmeye basıldığında, zamanlayıcının durumu sabittir ve düğmeye basma sıklığının öznel doğası nedeniyle tamamen rastgeledir. Bir “kemiğin” değeri, zamanlayıcının düşük baytından ve diğerinin – yüksek baytından hesaplanır.
Cihaz, 4,5 V’luk bir voltaja sahip üç adet AA pil ile çalışır. LED’lerin parlaması, 3,5 V’luk bir pil voltajına kadar yeterince parlak kalır. Kendi birkaç mikroamper tüketimine sahip stabilizatörlerin yüksek maliyeti ve kıtlığı nedeniyle, cihazın bataryaya doğrudan bağlantısının uygulanmasına karar verildi. Bu, ömrünün sonunda bir miktar karartmaya neden olur, ancak ultra düşük bekleme akımı tüketimine izin verir.
Cihaz, 50 mm x 60 mm boyutlarında bir baskılı devre kartı üzerine monte edilmiştir.
Elektronik Zar MikroC Yazılımı
#define Butt GPIO.F3 #define On 0 // button on - GP3=0 void main() { unsigned char LED1, LED2, i, Timer = 0, Time_off = 0; TRISIO = 0; GPIO = 0; INTCON = (1<<GPIE); // IOC=0b00001000; // enable int. on change GP3 T1CON = 1 ; // TMR1-on, 1/65535 CMCON = 7 ; while(1) { if (PIR1.TMR1IF == 1) { PIR1.TMR1IF = 0; Time_off++ ; // increment off-timer to 1 at each 65ms } if (Butt == On) { Time_off = 0; // clear off-timer LED1 = (TMR1L%6)+1; // LED2 = (TMR1H%6)+1; // rand. led1 and led2 for (i=0; i<150; i++) // indication 150*20ms = 3 sec. { GPIO = (1<<4)|LED1; Delay_ms(10); GPIO = (1<<5)|LED2; Delay_ms(10); } GPIO = 0; } else { if (Time_off > 250) { // to sleep in 15s Time_off = 0; INTCON.GPIF=0; GPIO = 0; asm sleep; } } } }
Elektronik Zar Devre Şeması
Kaynak: cxem.net/mc/mc352.php
Şifre-Pass: 320volt.com
Yayım tarihi: 2015/02/26 Etiketler: çiftli elektronik zar, elektronik zar devresi, microchip pic projeleri, PIC12F629 Örnekleri
Hangı devre elemanları kac tane kullanılıyor ?
Hocam ben kurdum devreyi plakete de. Butona bastığımda bir taraftaki ledler yanıyo diğer taraftaki ledler yanmıyor çok nadir yanıyor sebebi nedir ?
hocam bu + ve -yi areste nasıl bağlıyoruz. beceremedim! yardım eder misin?
Areste pad koy oralara