PIC Programlama

Konu, 'PIC Programlama' kısmında Yunus Emre tarafından paylaşıldı.

  1. Yunus Emre

    Yunus Emre Yetkili Kişi Bölüm Sorumlusu

    Kayıt:
    7 Şubat 2015
    Mesajlar:
    17
    Beğeniler:
    12
    Meslek:
    Elektronik Mühendisi
    En İyi Cevap:
    0
    Değerlendiriler:
    +13 / 0 / -0
    PIC (Peripheral Interface Controller), Microchip firmasının ürettiği mikro denetleyicilere verilen addır. Çeşitli firmaların ürettiği çeşitli mikroişlemci ve mikro denetleyiciler vardır. Bunlardan en çok kullanılanlardan olan Microchip firmasının ürettiği kısaltılarak PIC olarak adlandırılan çip ailesidir. Çok yaygın bir kullanım alanına sahip olan PIC'ler elektroniğe hobi olarak başlayanlardan tutunda profesyonel olarak elektronik ile ilgilenen herkesinin ihtiyacını karşılarlar. PIC'leri çeşitli diller ile programlayabiliriz. Bunun için bir dil öğrenmeli ve bu dile ait derleyiciyi kullanarak PIC'e uygun kodları yazmamız gerekmektedir. Yazdığımız kodlar sayesinde PIC'lere yapmasını istediğimiz işlemleri yaptırabiliriz. Biz burada genel olarak PIC programlama üzerinde dursakta diğer firmaların ürettiği çipler ile ilgilide bilgi paylaşımı yapacağız. PIC'ler ile ilgili devreleri ve programları devre arşivimize ekleyeceğiz oradan edinebilirsiniz.
     
    • Beğen Beğen x 5
  2. mustafa

    mustafa MB Üyesi

    Kayıt:
    14 Şubat 2015
    Mesajlar:
    4
    Beğeniler:
    1
    En İyi Cevap:
    0
    Değerlendiriler:
    +1 / 0 / -0
    çok iyi olur gerçekten arıyorum ne zamandır
     
    • Beğen Beğen x 1
  3. Yunus Emre

    Yunus Emre Yetkili Kişi Bölüm Sorumlusu

    Kayıt:
    7 Şubat 2015
    Mesajlar:
    17
    Beğeniler:
    12
    Meslek:
    Elektronik Mühendisi
    En İyi Cevap:
    0
    Değerlendiriler:
    +13 / 0 / -0
    Merhaba Mustafa,
    yardımcı olmamızı istediğiniz konuları yazarsanız o konuda yardımcı olmaya çalışırız. Formumuz yeni oluştuğu için ilerleyen zamanlarda yüklemeleri yapacağız.
     
    • Beğen Beğen x 2
  4. Volkan Ünal

    Volkan Ünal Yetkili Kişi Moderatör

    Kayıt:
    18 Şubat 2015
    Mesajlar:
    136
    Beğeniler:
    87
    Meslek:
    Öğrenci
    En İyi Cevap:
    3
    Değerlendiriler:
    +100 / 0 / -0
    pıc programlama da yardımcı olabilirim.
     
    • Beğen Beğen x 3
  5. asdoper

    asdoper MB Üyesi

    Kayıt:
    18 Şubat 2015
    Mesajlar:
    2
    Beğeniler:
    2
    En İyi Cevap:
    0
    Değerlendiriler:
    +2 / 0 / -0
    Hem takipçilere hem de sitenin takipçi sayısına pozitif katkıda bulunacağını düşündüğüm konular bu sitede irdelensin isterim, Örneğin:
    Arduino
    Android/IOS8 programlama (wifi, server/client)
    Matlab
     
    • Beğen Beğen x 2
  6. bringtheactions

    bringtheactions MB Üyesi

    Kayıt:
    23 Şubat 2015
    Mesajlar:
    2
    Beğeniler:
    0
    Meslek:
    öğrenci
    En İyi Cevap:
    0
    Değerlendiriler:
    +0 / 0 / -0
    pic programlamayı öğrenmeyi isterim :)
     
  7. mustafa

    mustafa MB Üyesi

    Kayıt:
    14 Şubat 2015
    Mesajlar:
    4
    Beğeniler:
    1
    En İyi Cevap:
    0
    Değerlendiriler:
    +1 / 0 / -0
    dersler şeklinde vermeyi düşünüyormusunuz forumda.yani kademeli olarak
     
  8. Yunus Emre

    Yunus Emre Yetkili Kişi Bölüm Sorumlusu

    Kayıt:
    7 Şubat 2015
    Mesajlar:
    17
    Beğeniler:
    12
    Meslek:
    Elektronik Mühendisi
    En İyi Cevap:
    0
    Değerlendiriler:
    +13 / 0 / -0
    Yoğun talep olursa bölüm yöneticileri olarak bu konuda bir karara varırız. Sizlerle paylaşacağımız devrelerin program kısımlarında o programı açıklayacak satırlar koymayaçalıcağız. Bunun dışında dediğim gibi yoğun talep olursa bir karara varırız.
     
  9. Volkan Ünal

    Volkan Ünal Yetkili Kişi Moderatör

    Kayıt:
    18 Şubat 2015
    Mesajlar:
    136
    Beğeniler:
    87
    Meslek:
    Öğrenci
    En İyi Cevap:
    3
    Değerlendiriler:
    +100 / 0 / -0
    Akşama pic programla da display kullanımını anlatacağım arkadaşlar.
     
    • Beğen Beğen x 4
  10. Hasan Basri Karakaya

    Hasan Basri Karakaya Yetkili Kişi Moderatör

    Kayıt:
    7 Şubat 2015
    Mesajlar:
    49
    Beğeniler:
    73
    Meslek:
    Elektrik-Elektronik Mühendisi
    En İyi Cevap:
    2
    Değerlendiriler:
    +78 / 0 / -0
    Üniversite:
    K.S.Ü.
    Volkan bey paylaşimlariniz çok hoş, ancak anlatmak istediğiniz konulari sifirdan ve temelden alsaniz daha çok verim aliriz diye düşünüyorum.
     
  11. Volkan Ünal

    Volkan Ünal Yetkili Kişi Moderatör

    Kayıt:
    18 Şubat 2015
    Mesajlar:
    136
    Beğeniler:
    87
    Meslek:
    Öğrenci
    En İyi Cevap:
    3
    Değerlendiriler:
    +100 / 0 / -0
    Hocam anlatma kabiliyetim çok iyi değil. o yüzden en iyi anlatabildiklerimden gideyim diyorum.Uygun zamanda çekip atacağım.Yoğunluktan dolayı atamadım
     
  12. Volkan Ünal

    Volkan Ünal Yetkili Kişi Moderatör

    Kayıt:
    18 Şubat 2015
    Mesajlar:
    136
    Beğeniler:
    87
    Meslek:
    Öğrenci
    En İyi Cevap:
    3
    Değerlendiriler:
    +100 / 0 / -0
    Arkadaşlar videonun sonunda Q0-Q7 kadar olan kısım için giriş demişim.Onlar çıkış bacaklarımız olacaktır.Bandicam imkanlarından dolayı 10dk sonra video kapanmış ve diğer anlattıklarımı duvarlara anlatmışım smile ifade simgesien kısa zamanda 74hc595 entegresi ile sürme kısmını da anlatıp yayınlayacağım.

    ilk uygulamanın kod kısmı:
    #include <volkan.h>
    int digit[]={0x3F,0x06,0x5B,0x4F,0x66,0x6D,0x7D,0x07,0x7F,0x67};
    void main()
    {
    set_tris_b(0x00);
    output_b(0x00);
    int i=0;
    do
    {
    output_b(digit);
    delay_ms(1000);
    i++;
    if(i>9)
    i=0;
    }while(1);
    }
     
    • Beğen Beğen x 2
  13. curry37

    curry37 MB Üyesi

    Kayıt:
    5 Temmuz 2015
    Mesajlar:
    11
    Beğeniler:
    1
    En İyi Cevap:
    0
    Değerlendiriler:
    +1 / 0 / -0
    lisede hep kalırdım bu dersten

    yeni yeni anlamaya başlıyorum
     
  14. yalcinsabiha

    yalcinsabiha MB Üyesi

    Kayıt:
    11 Kasım 2015
    Mesajlar:
    6
    Beğeniler:
    0
    En İyi Cevap:
    0
    Değerlendiriler:
    +0 / 0 / -0
    Üniversite:
    kocaeli üniversitesi
    bana 5 adet pot ile 5 servo motoru ayrı ayrı kontrol etmede yardımcı olabilecek var mı acaba?CCS C
     
  15. Volkan Ünal

    Volkan Ünal Yetkili Kişi Moderatör

    Kayıt:
    18 Şubat 2015
    Mesajlar:
    136
    Beğeniler:
    87
    Meslek:
    Öğrenci
    En İyi Cevap:
    3
    Değerlendiriler:
    +100 / 0 / -0
    adc ve pwm registerlarını ayrı ayrı çalış öncelikle ardından belli bir kod şematiğin olsun biz de yardımcı olalım
     
  16. yalcinsabiha

    yalcinsabiha MB Üyesi

    Kayıt:
    11 Kasım 2015
    Mesajlar:
    6
    Beğeniler:
    0
    En İyi Cevap:
    0
    Değerlendiriler:
    +0 / 0 / -0
    Üniversite:
    kocaeli üniversitesi
    #include <16f877.h>
    #device ADC=10
    #fuses HS,NOWDT,NOPROTECT,NOBROWNOUT,NOLVP,NOPUT,NOWRT,NODEBUG,NOCPD
    #use delay (clock=1000000)
    long int giris, bekle, cikis;
    void main ()
    {
    setup_psp(PSP_DISABLED);
    setup_timer_1(T1_DISABLED);
    setup_timer_2(T2_DISABLED,0,1);
    setup_CCP1(CCP_OFF);
    setup_CCP2(CCP_OFF);
    setup_adc_ports(AN0); //tek bir pot için
    setup_adc(ADC_CLOCK_INTERNAL);
    set_adc_channel(0); //kanallarda değişiklik yapacak mıyım?
    delay_us(20);
    while(1)
    {
    giris=read_adc();
    cikis=((giris*1.76)+600);
    bekle=(20000-cikis);
    output_high(pin_b1);
    delay_us(cikis);
    output_low(pin_b1);
    delay_us(bekle);
    }
    }
     

    Ekli Dosyalar:

  17. Volkan Ünal

    Volkan Ünal Yetkili Kişi Moderatör

    Kayıt:
    18 Şubat 2015
    Mesajlar:
    136
    Beğeniler:
    87
    Meslek:
    Öğrenci
    En İyi Cevap:
    3
    Değerlendiriler:
    +100 / 0 / -0
    pic18f77 in datasheetine bakarak hangi kanaldan okuma yapacağınız seçmeniz gerekiyor. siz 5kanal belirleyecekseniz.
     
  18. dexta64

    dexta64 MB Üyesi

    Kayıt:
    30 Mart 2016
    Mesajlar:
    1
    Beğeniler:
    0
    En İyi Cevap:
    0
    Değerlendiriler:
    +0 / 0 / -0
    Üniversite:
    Anadolu Üniversitesi
    16f877-16f877a 7 kanal 8-10 bit ADC okuma yapar, 2 kanal 10 bit PWM sürer. D portundan servo sürebilmek için Timer kullanmanız gerekir.
    ETE hocanın Picbasic Pro derslerini iyi çalışın.
    Sonra geçin CCS C'ye
    CCS C'de hazır fonksiyon ile işi halletmeye kalkarsanız, ROM'u çok fazla tüketir.
    Bunun yerine
    #BYTE PORTA =0X05
    #BYTE PORTB =0X06
    #BYTE PORTC =0x07
    #BYTE PORTD =0X08
    #BYTE PORTE =0X09
    #BYTE OPTION_REG=0X81
    #BYTE TRISA =0X85
    #BYTE TRISB =0X86
    #BYTE TRISC =0X87
    #BYTE TRISD =0X88
    #BYTE TRISE =0X89
    #BYTE INTCON=0x8B
    tanımlamaları yapın. Diğer kaydedicileri(Register) Datasheet'inden bakabilirsiniz, hafızanın Hex değerlerini kontrol edin.
    1Mhz Kristal ayarı için HS sigorta ayarı kullanılmaz.1-4Mhz XT, üstü HS

    Proteus'da çalışan bir kod gerçek devrede çalışmayabilir. Pic bozuk diye kafayı yemeyin, ayarlarınızda sorun vardır.

    1-Bir tane Pickit2 clone devresi yapın.
    2-Bir tane kullandığınız işlemciye(pic) göre test devresi yapın üzerinde buton, LCD Bağlantısı, dişi header ile boş port çıkışları olsun.

    Ohm kanunu vb. öğrenmeden pic programlayacağım derseniz yukarıdaki kod örneği gibi tüm kanallara pot bağlayıp AN0 kanalından hepsini okumaya çalışırsınız.

    Sonuç olarak kahvede hangi kağıdın hangi taşın geleceğini veya kimde olduğunu adı gibi bilen belki mühendis işsiz gençlerimiz var.
    Elektronik, disiplinli çalışma, mantıklı düşünme, muhakeme etme vb. yetenekler kazandırır. Yaptığınızın çalışmasınında keyfi başkadır.
    Türkiyede bu konuya kanalize edilse gençlerimiz çok cevherler olduğunu biliyorum.

    CCS C'yi tam öğrendim dediniz başladınız yazmaya, içinden çıkamadığınız birşey var başka birisi mesela Aurdino'da bu kodu yazmış ve paylaşmış olabilir. Unutmayın biraz ustalaşınca Aurdino kodlarını CCS'ye çevirebilirsiniz.
     
    Son düzenleme: 30 Mart 2016
  19. aytac Özakbaş

    aytac Özakbaş MB Üyesi

    Kayıt:
    28 Eylül 2016
    Mesajlar:
    4
    Beğeniler:
    0
    En İyi Cevap:
    0
    Değerlendiriler:
    +0 / 0 / -0
    Üniversite:
    İzmir katip çelebi üniversites
    Öncelikle hayırlı günler diliyorum herkese,
    Bir proje üzerinde çalışmaktayım. Fakat bir konu hakkında karar vermekte sıkıntı çekiyorum. Konu şudur;
    Ben PIC ile 16 tane lamba yakmak istiyorum ve bunu 74HC595 shift register kullanarak yapacağım. Ben adapter ile pic'i besleyeceğim , fakat pic'den alacağım maksimum gerilim miktarı 5.5 volt oluyor ki bu da tek lamba için sıkıntı yaratmasa da lambaların hepsi yandığında sıkıntı çıkaracak buna ilave olarak bir de lcd keypad kullanacağım. Gözüken o ki LED ler için ayrı bir adapter kullanmalıyım fakat bu adapter'i nasıl devreye entegre edebilirim bu konuda bilgisi olan var ise yardımcı olursanız çok sevinirim.
     
  20. akc94akc

    akc94akc MB Üyesi

    Kayıt:
    23 Mayıs 2018
    Mesajlar:
    1
    Beğeniler:
    0
    En İyi Cevap:
    0
    Değerlendiriler:
    +0 / 0 / -0
    Üniversite:
    Fırat Üniversitesi
    hocam iyi günler CCS C dili ile PIC programlamaya başladım. Buradan bize atabileceğin döküman var mı ? var ise sevinirim