PIC18F2550 deney kartı + usb bootloader

PIC18F2550 deney kartı + usb bootloader

PIC18F2550 deneme geliştirme kardı diğer uygulamalardan farklı olarak “USB bootloader” özelliğinide bulunduruyor pic18f2550 ile uygulamak istediğiniz projelerinizde devrelerinizde büyük kolaylık sağlayacak.

PIC18F2550 Uygulama Kartı UNUR PCB 2550 V1.01

18f2550-ISP-microdenetleyici-PCB

Donanım;

  • PIC 18f2550 I/SP microdenetleyici.
  • 24Cxx EEPROM (I2C haberleşme ile)
  • 20Mhz kristal.
  • 6-15V besleme girişi.
  • 5V 1A regüle çıkışı.
  • USB desteği.
  • ICSP programlama
  • Pin header I/O terminal sistemi

Genel Özellikler ve Kullanımı

1-USB: PIC 18f2550 microdenetliyicisinin en önemli özelliği kendinden USB desteği sağlamasıdır. Bu sayede bilgisayarınız ile USB üzerinden hızlı bir haberleşme sağlayabilirsiniz.

2-24Cxx EEPROM : Kart üzerinde I2C seri haberleşme protokolü ile haberleşen bir eeprom bulunmaktadır.

3-ICSP: ICSP desteğine sahip bir programlayıcı ile microdenetleyicinizi yerinden sökmeden kart üzerinde programlayabilirsiniz.

4-5V Regüle: Kart üzerinde bulunan 7805 regüle entegresi sayesinde microdenetleyicinizin 5v beslemesi sağlanmıştır.

5-ICSP-I/O:
J1 ve J2 jumperları sayesinde B6 ve B7 portları istenildiğinde ICSP programlama için veya I/O portu olarak kullanabilme seçimini sağlar.

6-LVP: J3 jumperı takıldığında ICSP ile programlamada düşük voltaj modunda programlama imkanı sağlar. (Düşük voltaj modununda programlamayı destekleyen programlayıcılar için.)

7-I2C –I/O: J4 ve J5 jumperları sayesinde B0 ve B1 portları istenildiğinde I2C heberleşme ile eeprom kullanımı veya I/O portu olarak kullanabilme seçimini sağlar.

8-USB-I/O: J6 ve J7 jumperları sayesinde C4 ve C5 portları istenildiğinde USB heberleşme veya I portu olarak kullanabilme seçimini sağlar.

9-Power Led: +5v beslemenin olup olmadığını gösterir.

10-Reset: Microdenetliyicinin MCLR ayağını eskiye çeker. Programdan reset aktif ise program resetlenir.

11-Power Out Terminali: Bu terminal üzerinde 4 çıkış bulunur. Bunlardan 2 tanesi GND (eksi), diğerleri ise;

+V : Karta klamensden girilen voltajın aynısı alınır.
+5V :Regüle devresi çıkışındaki voltaj alınır. ( max. 1A)

12-Port I/O Terminali: Microdenetliyicinin tüm portları pinheader terminal sistemi ile aktif kullanıma açık durumdadır.

ICSP BAĞLANTI

ICSP-baglanti

Yukarıda ICSP yöntemi ile programlamaya örnek bir bağlantı görülmektedir.

ÜST PCB

usb-boot-loader-ust-pcb-2

Kart üzerindeki besleme ve I/O terminalleri üst pcb montaj sistemi için pinheader olarak tasarlandığından, şablona göre kendi çizim pcb leriniz veya delikli plaket üzerine kurduğunuz devreleri rahatlıkla çalıştırabilirsiniz.

Örnek uygulamalar (Usb Lcd, Servo Kontrol, Breadbord ile Çalışma)

USB-LCD Servo-kontrol Breadbord-calisma

Bootloader Nedir?

Bottolader microdenetleyicinize yüklenen bir programdır. İlk seferde bir programlayıcı ile bootloader programını microdenetleyicinize yüklersiniz. Bundan sonra asıl yüklemek istediğiniz programı microdenetleyicinize programlayıcıya gerek olmadan ve entegrenizi yerinden sökmeden arayüz programı ile USB veya RS232 üzerinden yükleme yapabilirsizin. Burda sizlere USB için hazırlanan bootloader hakkında bilgi verilecektir.

PIC 18F2550 ve 18F4550 serisi microdenetleyicilerde USB desteği bulunmaktadır. Arada herhangi bir dönüştürücü olmadan microdenetleyici ile bilgisayarınız arasında USB ile bağlantısı sağlanabilmektedir. Bu sayede program yükleme işleminizi USB üzerinden hızlı bir biçimde yapabilirsiniz.

USB Bootloader Kurulumu

1- MicrochipsBootloader klasörü C nin altına kopyalanır.

Microchips-Bootloader

2- C:microchip_usb_bootloaderpic_firmware altındaki “mchpusb” isimli hex kodu PIC e yüklenir.

microchip_usb_bootloader_pic_firmware

3- Devreye enerji verip USB bağlantısını yaptığınızda ilk seferinde bootloader dışında başka bir program yükü olmadığından devreniz bootloader modunda açılır. Bilgisayarınız devrenizi yeni donanım olarak görür ve sizden driver yüklemenizi ister.

4-C:microchip_usb_bootloaderpc_usb_driver yolunu göstererek sürücüyü yükleyin.

5- Bundan sonra yazdığınız programları bootloader ile yükleyebilmek için C: microchip_usb_bootloader Pdfsusb altındaki Pdfsusb çalıştırılır.

microchip_usb_bootloader_Pdfsusb

microchip_usb_bootloader

Bootloader Kullanımı

usb-bootloader-kullanimi

  • 1- Devrenize enerji verip Bootloader butonuna basılı tutup Reset butonuna basıp bırakın.
  • 2- Led1 sürekli yanmaya başladığında bootloader programı devrededir.
  • 3- Bootloader butonu bırakın.
  • 4- USB kablosunu takın.
  • 5- Led-1 ve Led-2 yanıp sönmeye başladığında USB bağlantısı hazır demektir.
  • 6- Pdfsusb programı çalıştırılır.

picdem-usb-demo-tool

7- Board seçeneği boş gelir. Yandaki ok işareti tıklanır ve PICDEM FS USB 0 (Boot) seçilir.

PICDEM-FS-USB-0-Boot

8- Load HEX File tıklanarak yüklenecek hex dosyası seçilir.

9- Hex dosyası seçimi sonrası gelen uyarı mesajına Hayır denilir. EVET denilirse pic içindeki bootloader programı silinir. Programlayıcı ile yeniden yükleme yapmanız gerekir.

Load-HEX-File

10- Program Device tıklanarak yükleme işlemi başlatılır.

11- Yükleme bittikden sonra Execute tıklanarak PIC resetlenir ve yüklenen programın çalıştırılması sağlanır.

Cenk Cemil UNUR

“PIC18F2550 USB bootloader deneme test devresi” Projesini hazırlayan: Cenk Cemil UNUR İletişim: [email protected] – Emeği geçen hazırlayan kişilere teşekkürler.

Devreye ait proteus simülasyon, ares dosyaları ve microchip yazılım dosyaları;

Paylaş:

22 Yorum

  1. A
    aykut54

    Selam,

    Bende PIC ve AVR ile ilgili deneme modüllleri yapıyorum! Burdaki gibi güzel olacak inşallah PIC ve AVR ile denemeyeceğimiz hiçbir devre kalmıyacak?

    Sağlıcakla,

    Yanıtla
  2. W
    walat

    Selam.

    Devre şemasında bulunan USB konnektörünün VCC si bağlanmalı

    kaynak:
    http://www.sprut.de/electronic/soft/usboot/usboot.htm

    iyi çalışmalar

    Yanıtla
  3. C
    caci

    Selamlar. ISIS şeması neden çalışmıyor?
    Duplicate part referance: J5 [J5]
    Simulation failed due to netlist compiler error(s) hatalarını veriyor.
    Yardımcı olur muunuz? Teşekkürler..

    Yanıtla
  4. N
    Naci

    Alıntı – caci :
    1- Devrenize enerji verip Bootloader butonuna basılı tutup Reset butonuna basıp bırakın.
    4- USB kablosunu takın.
    .

    Bu devre beslemeyi nerden alıyor ki usb kablosunu takmadan ledler yanıyomuş bootloaderde
    Derseniz ki harici besleme diye – – bu da demektir ki şemalarda uyumsuzluk var
    Bu devrei yapıp deneyen var mı 🙂

    Yanıtla
  5. C
    cenk

    Merhabalar devre hakkındaki yorumlar ve soruları şu şekilde cevaplayayım..

    USB connektörünün besleme ucunu bilerek bağlamadım. Biliçsiz kullanım sonucu USB portunun zarar görmemesi için. Bu nedenle devreyi harici beslemeli olarak tasarladım. Ama küçük bir modifiye ile kart USB den beslenerek çalışabiliyor.

    ISI şemasında devre tasarımı için hazırlandı simülasyon kulanım için değil. Bu nedenle aktif olmayan elemenlar kullandım. bunları iptal edip denerseniz olur.

    Devreyi incelediğinizde devreyi beslemek için beslemenin bağlanacağı bir klamens olduğunu göreceksiniz. buradan 12v verdiğiniz taktirde devre üzerindeki 7805 sayesinde entegrenin 5v beslemesi sağlanmış olur.

    Yanıtla
  6. A
    Alp AYDOGAN

    Selamlar,

    Öncelikle yardımlarınız için teşekkür ederim.Yaklasık iki haftadır 18f2550 entegresine bootloader kurarak program atmaya çalışıyorum.

    Ben ccs c kullanıyorum.

    1- Devrenize enerji verip Bootloader butonuna basılı tutup Reset butonuna basıp bırakın.
    2- Led1 sürekli yanmaya başladığında bootloader programı devrededir.(LED 1sürekli yanmıyor flaş yapıyor)
    3- Bootloader butonu bırakın.
    4- USB kablosunu takın.
    5- Led-1 ve Led-2 yanıp sönmeye başladığında USB bağlantısı hazır demektir.(Ama Led-1 ve Led-2 yanıp sönmeye baslıyor )
    6- Pdfsusb programı çalıştırılır.

    Elimde iki adet 18f2550 pic var.İkisi ilede denemeler yaptım.

    Özellikle sormak istedigim, hazırladıgımız program satırlarında normalden farklı olarak usb yi tanıtıcı satırlarında bulunması gerekiyormu.

    Bootloader ile programı atıyorum, linkte anlattıgınız tüm sekmeleri yerine getiriyorum,Ama pic e yükledigim programı calıstıramadım.

    Aynı hex dosyasını pic e direk yükledigimde problemsiz olarak calısıyor.Ama isin içine bootloader girince programı çalıstıramadım.

    Yardımcı olabilirseniz cok sevinirim.

    Teşekkürler. ALP AYDOGAN

    Yanıtla
  7. A
    Alp AYDOGAN

    Cenk arkadasimiza çok teşekkürler,
    Mail den gönderdiği programı bootloader la yükledim ve çalıştı.
    Ama ben’m yazdığım kodu bir türlü çalıştıramadım. Kod asağıda yazdım yardımcı olabilecek kişilere şimdiden teşekkür ederim.

    #include 
    #fuses HS,NOWDT,NOPROTECT,NOLVP,NOBROWNOUT,NOPUT,NOWRT,NODEBUG,NOCPD
    #use delay(clock=48000000)
    #include "stdlib.h"
    #include 
    #include 
    #use fast_io(b)
    
    void main()
    {
    set_tris_b(0x00);
    basla:
    output_b(0x01);
    delay_ms(50);
    output_b(0x00);
    
    output_b(0x02);
    delay_ms(50);
    output_b(0x00);
    
    output_b(0x04);
    delay_ms(50);
    output_b(0x00);
    
    output_b(0x08);
    delay_ms(50);
    output_b(0x00);
    
    output_b(0x10);
    delay_ms(50);
    output_b(0x00);
    
    output_b(0x20);
    delay_ms(50);
    output_b(0x00);
    
    output_b(0x40);
    delay_ms(50);
    output_b(0x00);
    
    output_b(0x80);
    delay_ms(50);
    output_b(0x00);
    
    output_b(0x40);
    delay_ms(50);
    output_b(0x00);
    
    output_b(0x20);
    delay_ms(50);
    output_b(0x00);
    
    output_b(0x10);
    delay_ms(50);
    output_b(0x00);
    
    output_b(0x08);
    delay_ms(50);
    output_b(0x00);
    
    output_b(0x04);
    delay_ms(50);
    output_b(0x00);
    
    output_b(0x02);
    delay_ms(50);
    output_b(0x00);
    
    goto basla;
    }
    Yanıtla
  8. H
    HaLiL

    Teşekkürler.
    Söylenenleri uyguladım,çalışıyor,ancak basit programlarda(led yakma,söndürme),her program için güvenmeyin,yoksa benim gibi gün boyunca hatasız programda hata arar durursunuz.

    Yanıtla
  9. P
    pea

    Bootloader bende de çalışmadı…

    Yanıtla
  10. V
    veysel

    bootloader butonu 18f4550 için hangi bacağa bağlanacak peki. yada bu butonu istediğimiz yere bağlamak için nasıl bir değişiklik yapılması gerekiyor ?

    Yanıtla
  11. D
    digiteng

    ben de notebook var.dolayısı ile rs232 yok.burada anlatılanlar ile 18f2550 ye usb üzerinden hex yükleyip sonra da pic programlayıcı olarak kullanabilir miyiz…saygılarımla…

    Yanıtla
  12. H
    Hakkı

    Ben bu devreyi yaptım ama bootloader kısmını halledemedim. çalışmıyor. yukarıda bootloader butonu demişsiniz ama devrede bootloader butonu yok. ben RB4 pinine bootloader butonu bağladım.anlatıldığı gibi yapıyorum ama olmuyor. bootloader her programda çalışmıyor mu?

    Yanıtla
  13. C
    Cenk

    Bootlaoader butonu için bu programda C2 ayağı kullanılıyor. Şemayı incelerseniz bağlantı şeklini görebilirsiniz.

    Yanıtla
  14. H
    Hakkı

    Peki bootloader ile yükleyeceğimiz dosyaya özel bir komut eklemek gerekiyor mu? picbasic pro kullanıyorum

    Yanıtla
  15. M
    mahmut

    hakkı arkadaşın sorusunu ccs c dili için sormak istiyorum ?

    kendi programımıza ek bir komut eklemek gerekiyor mu ?

    Yanıtla
  16. H
    hakann

    64bit driver var mı acaba ?

    Yanıtla
  17. C
    Cenk UNUR

    http://www.picproje.org/index.php/topic,28709.msg195797.html#msg195797

    Linkte proton ve CCS C için eklenmesi gereken komutlar anlatılıyor. Ancak picbasic pro ile deneme yapmadım amam Proton ile hemen heme aynı sayılır.

    64bit için driver aşağıdaki linkte var bir deneyin.

    http://www.dosya.tc/server2/3wcP1b/Drivers64.rar.html

    Yanıtla
  18. H
    hakann

    Dosyayı tekrar upload edermisiniz?

    Yanıtla
  19. G
    gökhan türkay

    64bit driverı hotfile veya benzeri sağlam sitelerden upload edebilecek bir kişi var mı

    Yanıtla
  20. H
    hakann

    Sayın gevv,

    Rica etsek siz paylaşabilirmisiniz?

    Yanıtla
  21. C
    Cenk

    Arkadaşlar tüm dosyaları bu linkten indirebilirsiniz. İçinde 64bit driver da var.

    Microchip usb bootloader (64bit Drivers, Pdfsusb, pic firmware) http://yadi.sk/d/AdUpI-AO4ODEW

    Yanıtla
  22. E
    Erşad

    Selam.Ben bunu pic18f4550 için kurdum,yalnız reset düymesini basdığımda ve ya bootloader düymesine basdığımda error veriyor bunun sorunu ne ? bundan evvel usb hid bootloader yazdım ondada aynı sorun oldu.Bazı sayfalarda araştırdım rb4 çıkışının yandığını dediler benim bootloader buttonum rb4 çıkışına bağlı yalnız rb4 çıkışına led yakma programı kuruyorum led sorunsuz çalışıyor.

    Yanıtla

Yorum Yap