Şimdi Ara

PIC Programlama bilen varmı ?

Daha Fazla
Bu Konudaki Kullanıcılar: Daha Az
2 Misafir - 2 Masaüstü
5 sn
10
Cevap
0
Favori
1.520
Tıklama
Daha Fazla
İstatistik
  • Konu İstatistikleri Yükleniyor
0 oy
Öne Çıkar
Sayfa: 1
Giriş
Mesaj
  • Beyler Aşşağıda belirteceğim gibi sadece bunlardır ;

    1.PIC(MOD): Burda Işıklar Sadece Kayacaktır
    2.PIC(MOD): Burda Işıklar Sadece Yanın Sönecektir.
    3.PIC(MOD): Burda Işılar Sadece Kayıp Yanacaktır
    4.PIC(MOD): Burdan Işıklar Button İle Çalışacaktır Yani Ben Ne Zaman Basarsam O Zaman Yanancak Bıraktığım Zaman Sönecektir.

    Ve bunlar 64 tane lede bağlı olucaktır.Ben sizden sadece bu 4PIC'in kodlarını ve proteus için şemasını istiyorum.Yardımcı olursanız çok sevinirim.



    < Bu mesaj bu kişi tarafından değiştirildi Mehmet_Ali61 -- 12 Temmuz 2014; 2:17:08 >



    _____________________________
  • #include <main.h>

    void main()
    {

    set_tris_b (0x00) ;
    output_b (0x00) ;
    {
    while(1)
    output_high(pin_b0);
    delay_ms(300);
    output_low(pin_b0);
    delay_ms(300);
    output_high(pin_b1);
    delay_ms(300);
    output_low(pin_b1);
    delay_ms(300);

    }
    }


    Arkadaşlar Bu kod 2.PIC'in kodu sadece yanıp sönecek ama burda sadece 2 taneyi çalıştırıyor ben 64 taneden çalıştırmak istiyorum ve çok hızlı bir şekilde yanıp sönücek yani şimdi delay_ms(300)'ü delay_ms(1)'mi yapıcam



    < Bu mesaj bu kişi tarafından değiştirildi Mehmet_Ali61 -- 12 Temmuz 2014; 2:16:09 >
    _____________________________
  • 64 ledi tek tek kontrol etmek sadece 1 picle mümkün değil malesef. Yeterli portu yok. delay_ms, milisaniye cinsinden bekleme oluyor. 1 çok düşük olur 10, 50 vs. yapabilirsin. Ledleri grup şeklinde bağlayarak ya da decoder entegresi kullanarak 64 ledi kontrol edebilirsin ancak. Eğer bu bir ödevse, ufak araştırmalarla çok kısa sürede yapabilirsin. Hazır olarak istemen, sana fayda sağlamaz.
    _____________________________
  • kaan0 kullanıcısına yanıt
    Bu bir ödev değil bu benim kendi icadım ve yani hiçbir şekilde 1 pic ile 64 ledi kontrol edemezmiyim ? Bide Tek Tek kontrol etmiycem Mesala Ben 1.PIC Gelen butona bastım pic kendi kendi ledleri yanıp söndürecek karışık bir şekilde ?
    _____________________________
  • Anladım. Yukarıda bahsettiğim gibi kontrol edebilirsiniz fakat araya decoder koymanız gerek. Elinizde proteus varsa 4028 yazarak decoder entegresine ulaşabilirsiniz. Bu entegre sayesinde pic'in 4 bacağını kullanarak 10 ledi kontrol edersiniz. 64 led için 7 decoder ve pic'in 28 bacağını kullanırsınız bir portta 8 bit olduğundan 28 bit için 4 port kullanırsınız. Yani PIC 18F4520 vs. gibi en az 4 portu olan bir pic'e ihtiyacınız var.

    Benim tavsiye ettiğim decoderin 4 girişi 10 çıkışı var girişlere girdiğin binary sayıları çıkışta gösteriyor. Bu şekilde 64 lede efekt verebilirsin.

    Bu arada icat biraz fazla kaçmış. Deney diyelim.
    _____________________________
  • kaan0 kullanıcısına yanıt
    Haklısın deney diyelim ve bunun proteus'da hazırlamak uğraştırmıyorsa bana bi hazırlayıp göstere bilirmisiniz veya şu linkteki resimde verdiğim gibi neyi neye bağlıycaz ? Bide binary kod demişsiniz buna neden ihtiyacım var ?
    http://i.imgur.com/eqaLy4T.png

    ------------------------------------------------------------------------------------------------------------------------------------

    Ayrıyetten ledleri grup şeklinde bağlamak böyle oluryor dimi ?

    http://320volt.com/wp-content/uploads/2010/02/led-harf-olusumu.png

    -------------------------------------------------------------------------------------------------------------------------------------

    Bunun gibi mesela ama 217 led yerine 64 led olucak bunu nasıl yapmış olabilir ? Ve bulduğum bilgileri paylaşıyorum buyur.

    http://www.youtube.com/watch?v=PA1v0oSxQvc


    Ve küçük bir araştırma yaptım bunlar led matrix olarakta geçiyor. http://www.youtube.com/watch?v=g0VkgF8Dbhs

    http://www.diegosprojects.blogspot.com.tr/2011/09/led-5x7-matrix.html

    http://www.youtube.com/watch?v=x8GGUUq4_b8

    http://ommslab.blogspot.co.uk/p/lab-1.html

    http://www.youtube.com/watch?v=MgUGqtQqfZE


    Not: Ben elektronikten pek anlamam şahsen ben bilgisayarlardan anlarım diyiyim benim babam 50 senelik bir elektronik ustası o yüzden ona bu süprizi hazırlıyorum.



    < Bu mesaj bu kişi tarafından değiştirildi Mehmet_Ali61 -- 12 Temmuz 2014; 4:20:31 >
    _____________________________




  • Mehmet_Ali61 kullanıcısına yanıt
    Hocam matrix yapacaksanız binary olayı iptal oluyor. Zaten gereksiz malzeme kullanımı olacaktı.

    Grup şeklinde bağlamak o şekilde fakat gruplardaki ledler birbirinden bağımsız kontrol edilemez.

    Proteusta görüntü şu şekilde olacak:
     PIC Programlama bilen varmı ?


    Buradaki mavi şey dot matrix display diye geçiyor. Kendi içinde bağlantıları şu şekilde:
     PIC Programlama bilen varmı ?


    Siz ledleri bu şekilde 8x8 bağlarsanız dot matrix display elde etmiş olursunuz.

    Şimdi kontrol olayına gelirsek burada dot matrix displaydan çıkan 8+8=16 uçlardan ledlerin anotlarından (- uçlardan) gelenleri 8 adet npn bjt transistörlerle toprağa (-) bağlayacaksınız. Bu transistörlerin base uçlarını da pic'e gireceksiniz. Dot matrix displayin kalan katot uçlarını da pic'e gireceksiniz. Tabi pic lojik 1 seviyesinde yanlış hatırlamıyorsam 250mA veriyor. Bu akım direk bağlanan ledleri yakar. Uygun değerde direnç bağlamak gerek. Ledlerin 2v düşürüp 20mA harcadığını varsayarsak,
    5V-2V=0.02A.R'den R=150 ohm çıkar. Yani katot uçları ve pic arasına 150'şer ohm direnç bağlayacaksınız. Aynı şekilde transistörlerin baseleri ile pic arasına da 1000'er ohm direnç bağlayacaksınız. bağlantı bu şekilde sonrasında örneğin 1. satır ve 1. sütuna lojik 1 verirseniz 1. lamba yanar vs. yani x ve y koordinatları gibi. Umarım anlatabilmişimdir.



    < Bu mesaj bu kişi tarafından değiştirildi kaan0 -- 12 Temmuz 2014; 5:14:49 >
    _____________________________




  • Yapay Zeka’dan İlgili Konular
    Daha Fazla Göster
  • Öncelikle gerçekten çok teşekkür ederim benimle ilgilendiğiniz için inşallah bu iyilğnizi öderim bir gün.

    Ben her ledi 1 tuşun altına koymayı planlıyordum bunda öyle bir olanağımız varmı peki ? Bide Bunlar hep Arduino diye birşey kullanıyorlar nedir bu ?

    Mesela burdaki adamın yaptığı gibi ; Mesala hepsi kırmızı karışık şekilde ilerliyorlar olay budur

    http://www.youtube.com/watch?v=x8GGUUq4_b8
    http://www.youtube.com/watch?v=prXhgmQMqTQ

    Bunlar normal ledlerden yapmışlar benimde böyle birşeyi yapmam mümküm mü ? mümkünse nasıl olucak bunun hakkında bir bilgi vermisiniz ?

    ------------------------------------------------------------------------------------------------------------------------------------------------------
    Eğer olmuycaksada
    1.PIC'de : Grup şeklinde ledleri sadece hızlı şekilde yanıp söndürürüm.
    2.PIC'de : Ledler sadece açık dururlar.
    3.PIC'de : Bir butona basınca yanıcak bırakınca sönücek

    Bu mümkünmüdür ? Mümkünse ben böyle birşey yaptım ama sağ yukarıdaki volt u bağlayamadım bide bu vold dcammeter ve işe yarıyor, ben normal halinin fotoğrafıını atarmısınız ?

    http://i.imgur.com/pxrQUOh.png

    Kullancağım Kod Yanıp sönmesi için işe yarar dimi ;

    #include <main.h>

    void main()
    {

    set_tris_b (0x00) ;
    output_b (0x00) ;
    {
    while(1)
    output_high(pin_b0);
    delay_ms(50);
    output_low(pin_b0);
    delay_ms(50);

    }
    }

    Ayrıyetten şu işarediklerim adı ne diye geçiryor proteus'de ?

    http://i.imgur.com/NHtizdZ.png

    NOT: Biliyorum çok soru soruyorum sizi sıkıyorsam kusura bakmayın özür dilerim.


    Son olarakta yukarıdaki proteus bu kadar mı crystal falan kullanmıyoruz anladığım kadarıyla.



    < Bu mesaj bu kişi tarafından değiştirildi Mehmet_Ali61 -- 12 Temmuz 2014; 14:45:17 >
    _____________________________




  • Mehmet_Ali61 kullanıcısına yanıt
    Yardım edebildiysem ne mutlu bana.

    Her ledi bir tuşun altına koyma olayını tam anlayamadım. 64 led'e 64 tane de tuş mu bağlamak istiyorsunuz?

    Arduino denen şey, açık kaynak kodlu, içinde atmega mikrodenetleyici barındıran bir programlama platformudur. Yani nasıl microchip firması pic serisi mikrodenetleyiciler üretiyorsa, atmel firması da atmega, attiny gibi mikrodenetleyiciler üretiyor ve bir grup insan, bu atmel mikrodenetleyicilerden bir geliştirme kartı oluşturmuşlar. Deney seti diyelim.

    Yukarıda birbirine bağlanmış ledler vermiştim resim olarak. Sağ tarafında da bu ledlerin toplu halde görünümü var. Bu dikdörtgen 7x5 şeklinde bağlı ledler dot matrix display denen şeyi oluşturuyorlar. Siz ister hazır olarak 8x8 dox matrix display satın alıp bunu kullanırsınız, isterseniz de 64 adet ledi, resimde gösterilen şekilde bağlayıp kendi 8x8 dot matrix displayinizi oluşturursunuz. Gönderdiğiniz videolarda devreleri kuran kişiler kendi dot matrix displaylerini yapmışlar.

    Yani 64 adet ledi uygun şekilde birbirine bağladıktan sonra, pic ile bunları kontrol edebilir, yazı yazdırabilir ya da efekt ekleyebilirsiniz. Yani şu resimdeki gibi;
     PIC Programlama bilen varmı ?
    şekilde ledleri bağlayacaksınız, R1'e ve C1'e elektrik verdiğinizde, sol en üstteki led yanar. Bu şekilde 8+8 toplamda 16 uç kullanarak, 64 ledi bağımsız kontrol edeceksiniz. Tabi burada R1'den R8'e kadar olan bağlantıları 150'şer ohmla pic'e bağlayacaksınız, C1'den C8'e kadar olan bacakları da tek tek transistörlerle toprağa bağlayıp, 1000'er ohmluk dirençlerle bu transistörlerin baselerini pic'e gireceksiniz. Bunları zaten önceki mesajımda gönderdiğim isis resmine bakarak çözümleyebilirsiniz.



    Diğer devreye gelince,

    1.Pic, 2.Pic diye verdiğiniz kısımla 3 ayrı pic kullanmayı mı kasediyorsunuz? Bunları tek bir pic ile de yapabilirsiniz.

    Verdiğiniz proteus isis resminde bağlantılar yanlış. Bu şekilde bağlarsanız tüm ledler aynı anda yanar ya da söner. Birbirinden bağımsız şekilde çalıştırmak için Önceki mesajımda belirttiğim gibi ledleri bağlamalısınız. Voltmetre, elemanın üzerinde düşen gerilimi ölçmek için kullanılmış. DC ampermetre ise bir led grubunun kaç amper çektiğini gözlemlemek için konulmuş. Bunları bağlamasanız da devre çalışır. Bunlar ölçüm yapmak için.


    Kodunuza gelecek olursak;

    #include <main.h>

    void main()
    {

    set_tris_b (0x00) ; --- Burada B portu tamamen çıkış yapılmış. Yani RB0'dan RB7 bacaklarına kadar olan bacaklar, giriş değil çıkış için kullanılacak.
    output_b (0x00) ; ---- Burada B portuna bağlı bacaklar 0 yapılıyor.
    {
    while(1) --------------- While(1) demek, pic'e bu kısmın altındaki bölümü durmadan tekrar et demek.
    output_high(pin_b0);-- Bu komut, RB0 bacağını 1 yapıyor. Yani bu bacağa bağlı olan elemana elektrik gidiyor.
    delay_ms(50);-------- Burada 50 milisaniye bekleniyor.
    output_low(pin_b0);-- Sonra RB0 bacağı tekrar 0 yapılıyor, led sönüyor.
    delay_ms(50); ------- Tekrar 50 ms bekleniyor.

    }
    }

    Bu kod ile, tüm ledler aynı anda yanar, sonra aynı anda söner. Bana kalırsa, efektli bir devre yapmak için biraz daha araştırma yapmanız gerek. Fazla zor bir devre değil. Şuan yaz okulundayım ve hafta içi sınavlarım var. Zaman sıkıntınız yoksa, bayram tatilinde devreyi isis'ten çizip kodunu mikroC ile yazarım.

    İşaretledikleriniz soldan sağa,
    1- Generator mode> DC generator (Güç kaynağı)
    2- Virtual instruments mode> DC Ammeter (Ampermetre akım ölçmek için.)
    3- 2 numaranın aynısı
    4- Virtual instruments mode> DC Voltmeter

    Zamanım oldukça sorularınıza cevap vermeye çalışırım. Birşeyler öğrenmenize en ufak katkım olursa ne mutlu bana.
    _____________________________




  • kaan0 kullanıcısına yanıt
    Abi Cidden çok teşekkür ediyorum gerçekten bana baya katkın oldu hiç bilmediğim şeyleri öğrendim çok sağol.
    -------------------------------------------------------------------------------------------------------------------------------------------------------------------

    http://i.imgur.com/m692kxy.png

    Bunları cristale bağlamam lazım mı ?

    Ve bunları 64 tane'ye çoğaltabilirmiyim ?

    -----------------------------------------------------------------------------------------------------------------------------------------------------------

    Abi ben bunları 64 led yaptım fakat bu sefer devre çalışmadı acaba güç mü yetmiyor ne yapmam gerekiyor ?

    http://i.imgur.com/NJZy3QU.png



    -----------------------------------------------------------------------------------------------------------------------------------------------------------

    http://i.imgur.com/GiGATUG.png

    Artık işin hemen hemen sonuna geldik burda ledler istediğim gibi çalışıyor :)

    Bunuda hallettim mi işin %90'na geldim demektir.

    Yukarıdaki resimde 4 Tane PIC var her pic için ayrı ayrı 64 tane led kullanmıycam 4 pic de 64 Tane Lede bağlı olucak mesala ordan buton çekicem 1.Buttona bastım
    1.PIC çalışacak 2.Buttona bastım 2.PIC çalışacak....... Olay günlerimizi yaşıyoruz herhalde :)

    Sınavlarında da kolay gelsin sana Allah zihin açıklığı versin.



    < Bu mesaj bu kişi tarafından değiştirildi Mehmet_Ali61 -- 13 Temmuz 2014; 4:16:06 >
    _____________________________




  • 
Sayfa: 1
- x
Bildirim
mesajınız kopyalandı (ctrl+v) yapıştırmak istediğiniz yere yapıştırabilirsiniz.