Ana Sayfa PIC|ULAK PIC|ULAK ile Gece Lambası

PIC|ULAK ile Gece Lambası

4 min read
2
0
831

Merhaba arkadaşlar,

Bu yazımızda, MekatronikLAB firmasının üretmiş olduğu  PIC mikrodenetleyiciler ile proje geliştirme kiti PIC|ULAK ile adına gece lambası dediğimiz uygulamayı gerçekleştirdik. :)

Uygulamamızda daha öncede kullanmış olduğumuz adc özelliğini kullandık. Burda elimizde ki potansiyometre yardımıyla analog olarak 0-1023 değerini elde etmekteyiz. Bu değerleri RGB ledin oluşturacağı renk sayısına bölerek oranlayarak potansiyometreyi döndürerek farklı renkleri elde ettik.

RGB-LED

 

 

 

 

 

 

RGB led hakkında bilgi vericek olursak, bağlantı şeması resimde görülmekte olup, ortak uç GND ye bağlanır. Hangi rengi yakmak istiyorsak o uca lojık 1 verilir.

Malzemeler

  • pic|ulak
  • rgb led
  • potansiyometre
  • 1k direnç

Bağlantı Şeması

?????????????????????????

CCS C Kodları


#include <18f2550.h> // pic tanıtılıyor.
#device adc=10 // 10 bitlik adc kullanılıyor.
#use delay (clock=4000000) // osilatör frekansı
#fuses XT,NOWDT,NOPROTECT,NOBROWNOUT,NOLVP,NOPUT,NOWRT,NODEBUG,NOCPD // sigorta ayarları
unsigned long int bilgi; //bilgi adındaişaretsiz tamm sayı tanımlanıyor.

void main()
{
set_tris_b(0x00); // B portu çıkış
output_b(0x00); // B portu sıfırlanıyor.

setup_adc(adc_clock_div_32); // ADC clock frekansı fosc/32
setup_adc_ports(AN0); // A0 pini analog giriş olarak ayarlanıyor.
set_adc_channel(0); // A0 pini adc işlemine tabi tutuluyor.
delay_ms(20); // gecikme veriliyor.
while(TRUE)
{
bilgi=read_adc(); // okunan adc sonucu bilgi değişkenine aktarılıyor.
if(bilgi>0 && bilgi<=100) // RGB ledin kapalı olduğu kısım.
{
output_low(pin_b0);
output_low(pin_b1);
output_low(pin_b2);

}
if(bilgi>101 && bilgi<=230) // KIRMIZI
{
output_high(pin_b0);
output_low(pin_b1);
output_low(pin_b2);
}
if(bilgi>231 && bilgi<=360) // YEŞİL
{
output_high(pin_b1);
output_low(pin_b0);
output_low(pin_b2);
}
if(bilgi>361 && bilgi<=490) // MAVİ
{
output_high(pin_b2);
output_low(pin_b1);
output_low(pin_b0);
}
if(bilgi>491 && bilgi<=620) // SARI
{
output_high(pin_b0);
output_high(pin_b1);
output_low(pin_b2);
}
if(bilgi>621 && bilgi<=750) // MAGENTA
{
output_high(pin_b0);
output_high(pin_b2);
output_low(pin_b1);
}
if(bilgi>751 && bilgi<=880) // CYAN
{
output_high(pin_b1);
output_high(pin_b2);
output_low(pin_b0);
}
if(bilgi>751 && bilgi<=880) // BEYAZ
{
output_high(pin_b0);
output_high(pin_b1);
output_high(pin_b2);
}
}

}

Devrenin Çalışma Videosu

 

Buna Benzer Yazılar Göster !
Daha Fazlasını Yükle - Sinan Sözügüzel
Daha Fazla Göster -  PIC|ULAK

2 Yorumlar

  1. Yusuf

    29 Temmuz 2016 at 20:41

    Bunu arduinoya uyarlaya bilir misiniz

    Reply

    • Bilal Kaya

      Bilal Kaya

      31 Temmuz 2016 at 08:57

      Merhaba Yusuf,tabiki arduino ile rgb led uygulamaları ile ilgili örnekler mevcuttur.

      Reply

Bir Cevap Yazın

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

Bak Bakalım ?

PIC|ULAK ile Otomatik Kapı Uygulaması

Merhaba arkadaşlar, Bu yazımızda, MekatronikLAB firmasının üretmiş olduğu  PIC mikrodenetl…