11 Mart 2013 Pazartesi

PIC18F4550 USB İLE STEP MOTOR KONTROLÜ

               Bu paylaşımı tamamen USB ile yeni tanışacak olanlar için yayınlıyorum. 2 gündür araştırdığım ve edindiğim bilgiler neticesinde win7 32 bit bilgisayarım ile usb ile step motor kontrolünü gerçekleştirdim.
               Bu devreyi asıl tasarlama amacım PIC18f4550 geliştirme karıma eklemiş olduğum step-servo motor kontrol kartını usb üzerinden kontrolünü sağlamak oldu.


                  Devreyi breadboard üzerinde kurup pc ile usb bağlantısını yaptığımda ilk denememde " Sorun  bildirdiğinden Windows bu aygıtı durdurdu. (Kod 43) " hatasını aldım. Bu hata ile aslında canım iyce sıkılmıştı. En sevmediğim hatta nefret ettiğim arıza türü olan gizli arıza ile karşı karşıya gelmiştim. Daha doğrusu ben öyle sanıyormuşum :). Ertesi gün iyi bir aradan sonra, rahat bir kafa ile tekrar devrenin başına oturarak başladım arıza aramaya. PDF dosyasında ki devre ile karşılaştırılırken birden gözüme kristalin değeri çarpınca jeton düştü benim. Devre üzerine dalgınlıkla 16 MHz kristal takmışım meğer. Gerçek devrede bu değer doğal olarak 20 MHz. Elimde dıp olarak bulunmayan 20 MHz kristalin smd kılıfını devreye bağlayarak tekrar usb bağlantısını gerçekleştirdim. Sorun yok artık :)
                 Usb ile PIC bağlantısı gerçekleştirilirken çıkan sorunlar ve hataları başıma gelenler sonucunda şöyle sıralayabilirim;
  • Öncekullanılacak vısual basıc veya delphi programlarının PIC ile uyum sağlaması için o programa göre yazılmış PIC e atılacak hex. code dosyasının doğru atılması veya çalıştığından emin olunması gerekli.
  • Donanımsal olarak 18 nolu pine (Vusb) 220-470 nF değerleri arasında diğer ucu şase olacak şekilde bir seramik kondansatör bağlanmalıdır.
  • PIC için kristal seçimi yine donanımsal bir sorun olarak karşımıza az önce bahsettiğim " Sorun  bildirdiğinden Windows bu aygıtı durdurdu. (Kod 43) " hatasıyla karşılaşmamıza neden olabilir.
  • Sade devre tasarımı aşağıda ki gibi olmalıdır.

               Tabi bir diğer hususta PIC ve PC nin haberleşme sağlayabilmesi için gerekli usb sürücü dosyası. Bu dosya aşağıda paylaşacağım dosyaların içinde mevcuttur. Devre seması ise aşağıdaki gibi olmalıdır.