Led tabela Animasyon Devresi

Led tabela Animasyon Devresi

Led tabela Animasyon Devresi

Biz bu konuda basit bir animasyon devresinin mantığını anlatacagız.

İlk led tabela animasyonu nedir onu bilmek gerekir. Led Animasyon, ledlerle oluşturdugumuz bütünün parça parça veya istediğimiz şekilde yanmasını saglayarak görsel bir şov oluşturmadır ve bu devreler piyasada gerçekten ciddi paralara satılıyor.

Bizde düşündük evde yapabileceğiniz basit bir animasyon devresini anlatalım dedik.İlk başta vurguladıgım  ledlerin bir bölümünü  animasyonlu şekilde yakmayı  3 lü ya da 5 li şekilde ledlerimizi seri baglayarak sağşayabiliriz bu hem baglayacagımız direncin degerini düşürecektir hem de yani çektigi akım düşecektir;

 

 

Led animasyon

Led animasyon

 

 

Şekilde de görüldügü gibi ledlerin + ları direkt verilmiş sadece – leri tetiklendiğinde veriliyor yani biz – yi kontrol ederek seri baglı ledleri yakıyoruz.Tabi PIC’imizi gerekli yazılımı attıktan sonra bunu devre çalışacak.

 

Biz bu animasyon devresini kendi devremizde yaptık sonuçları,

Animasyon devresini deneme amaçlı yaptıgım devrede ledler sıra ile dıştan içe,içten dışa sıra ile yanıyor daha sonra hepsi birden yanıp sönüyor

Led animasyon

Led animasyon

led animasyon 2

led animasyon 2

Devrenin CCS DİLİ ile yazılmış programı

Program 170 satır olup daha kısa şekilde yazılabilirdi acele ile yazıldıgı için uzun oldu tabi ama program iş görüyor.

baski devresi ve

#include <16f877a.h> // Kullanılacak denetleyicinin başlık dosyası tanıtılıyor.

#fuses XT,NOWDT,NOPROTECT,NOBROWNOUT,NOLVP,NOPUT,NOWRT,NODEBUG,NOCPD // Denetleyici konfigürasyon ayarları

#use delay(clock=4000000) // Gecikme fonksiyonu için kullanılan osilatör frekansı belirtiliyor

#use fast_io(b) // Port yönlendirme komutları B portu için geçerli

/********* ANA PROGRAM FONKSİYONU********/

void main ()
{
setup_psp(PSP_DISABLED); // PSP birimi devre dışı
setup_timer_1(T1_DISABLED); // T1 zamanlayıcısı devre dışı
setup_timer_2(T2_DISABLED,0,1); // T2 zamanlayıcısı devre dışı
setup_adc_ports(NO_ANALOGS); // ANALOG giriş yok
setup_adc(ADC_OFF); // ADC birimi devre dışı
setup_CCP1(CCP_OFF); // CCP1 birimi devre dışı
setup_CCP2(CCP_OFF); // CCP2 birimi devre dışı

set_tris_b(0x00); // RB0 portu tümüyle çıkış olarak ayarlandı.

output_b(0x00); //

//basla:
//output_toggle(pin_b0); // RB0 ucunun çıkış durumu tersleniyor
//delay_ms(500); // 500 ms’lik gecikme veriliyor
//output_toggle(pin_b1); // RB1 ucunun çıkış durumu tersleniyor
// delay_ms(500);
basla:
//output_toggle(pin_b0); // RB6 ucunun çıkış durumu tersleniyor
delay_ms(500);
output_high(pin_b6);
delay_ms(500);
output_low(pin_b6);
delay_ms(500);
output_high(pin_b3);
delay_ms(500);
output_low(pin_b3);
delay_ms(500);
output_high(pin_b0);
delay_ms(500);
output_low(pin_b0);
delay_ms(500);
output_high(pin_b5);
delay_ms(500);
output_low(pin_b5);
delay_ms(1000);
output_high(pin_b6);
output_high(pin_b3);
output_high(pin_b0);
output_high(pin_b5);
delay_ms(1000);
output_low(pin_b6);
output_low(pin_b3);
output_low(pin_b0);
output_low(pin_b5);
delay_ms(500);
output_high(pin_b6);
output_high(pin_b3);
output_high(pin_b0);
output_high(pin_b5);
delay_ms(500);
output_low(pin_b6);
output_low(pin_b3);
output_low(pin_b0);
output_low(pin_b5);
delay_ms(1000);
output_high(pin_b6);
delay_ms(100);
output_low(pin_b6);
delay_ms(100);
output_high(pin_b3);
delay_ms(100);
output_low(pin_b3);
delay_ms(100);
output_high(pin_b0);
delay_ms(100);
output_low(pin_b0);
delay_ms(100);
output_high(pin_b5);
delay_ms(100);
output_low(pin_b5);
delay_ms(1000);//2
output_high(pin_b0);
delay_ms(100);
output_low(pin_b0);
delay_ms(100);
output_high(pin_b3);
delay_ms(100);
output_low(pin_b3);
delay_ms(100);
output_high(pin_b6);
delay_ms(100);
output_low(pin_b6);
delay_ms(100);
output_low(pin_b5);
delay_ms(1000);//2
output_high(pin_b0);
delay_ms(100);
output_low(pin_b0);
delay_ms(100);
output_high(pin_b3);
delay_ms(100);
output_low(pin_b3);
delay_ms(100);
output_high(pin_b6);
delay_ms(100);
output_low(pin_b6);
delay_ms(100);
output_high(pin_b6);
output_high(pin_b3);
output_high(pin_b0);
output_high(pin_b5);
delay_ms(100);

output_low(pin_b6);
output_low(pin_b3);
output_low(pin_b0);
output_low(pin_b5);
delay_ms(100);

output_high(pin_b6);
delay_ms(100);
output_low(pin_b6);
delay_ms(100);
output_high(pin_b3);
delay_ms(100);
output_low(pin_b3);
delay_ms(100);
output_high(pin_b0);
delay_ms(100);
output_low(pin_b0);
delay_ms(100);
output_high(pin_b5);
delay_ms(100);
output_low(pin_b5);
delay_ms(100);
output_high(pin_b6);
delay_ms(100);
output_low(pin_b6);
delay_ms(100);
output_high(pin_b3);
delay_ms(100);
output_low(pin_b3);
delay_ms(100);
output_high(pin_b0);
delay_ms(100);
output_low(pin_b0);
delay_ms(100);
output_high(pin_b5);
delay_ms(100);
output_low(pin_b5);
delay_ms(100);

goto basla;

} // basla etiketine dallanılıyor

 Devrenin Ares Çizimi ve Programı için TIKLAYINIZ.

indir

  • Yazıyı Beğendin mi?  
Önceki Yazı
elektrik

1988 Karabük dogumluyum ilköğretim ve ortaöğretimimi karabükte tamamladım.Ankara Üniversitesi Endüstriyel Otomasyon Mezuniyet=2008, Gazi üniversitesi Elektrik Öğretmenligi Mezuniyet=2012, Katü Elektrik-Elektronik Mühendisligini yarıda bırakıp Gazi Üniversitesi Elektrik Elektronik Mühendisliği okuyorum. facebooktan takip etmek için; https://www.facebook.com/yasinhocammm

Benzer Yazılar

Yapına Yorumlar (8)

Bir Cevap Yazın

E-posta hesabınız yayınlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir

*
*