PanDa
=> ADIM ADIM USB
(2.10.2007 20:40:23)
Arkadaşlar bir süre önce yazmaya başladığım USB ile ilgili e-book'un şu an 50 sayfası bitti ve ben bazı sebeplerden dolayı bu e-book'u parça parça makale olarak yayımlamaya karar verdim.Şimdi aşağıda vereceğim link'deki rar dosyasında neler var öncelikle bundan bahsedeyim.
ADIM ADIM USB.pdf
Bu PDF yukarıda da behsettiğim gibi e-book'un ilk 50 sayfalık kısmını oluşturuyor.Zamanla kalan kısımlar tamamlanacaktır.Fakat okuyacağınız bölümlerde USB transferin detayını anlayacağınızı umuyorum.
ADIM ADIM USB - PIC USB Firmware
Bu dizin içinde PIC18F4550 için yazdığım USB kodları yer alıyor.Buradaki kodlar USB haberleşmesi için iskelet kodlardır ve birkaç adet header ve kod dosyasından oluşmaktadır.Program C18 ile yazılmıştır.
ADIM ADIM USB - USB TEST UYGULAMASI
Bu dizinde devrenizi kurduktan ve PIC kodlarını derleyip yada önceden derlemiş olduğum Hex dosyasını alıp PIC'e yükledikten sonra ve PC'nizin USB portuna takıp windows'a tanıttıktan sonra, bu devre ile haberleşecek DotNET C# da yazdığım USB uygulaması yer almaktadır.Bu program ile devrenize bilgi gönderip-okuyabilir ve daha sonra bahsedeceğim diğer şeyleri yapabilirsiniz.
ADIM ADIM USB UYGULAMALAR
Bu dizinde önceden belirlediğim birçok uygulamayı koyamadım ama zamanla koyacağım.Şimdilik sadece USB Motor Kontrol Uygulaması, USBAutoRun Uygulaması ve USBManagement Library var.
* USB Motor Kontrol : PIC Kodları (iskelet kodlar üstüne yazılmış) ve yine C# da yazdığım uygulama yazılımı yer almaktadır.
* USBAutoRun :
Bu uygulama herhangi bir devre içermemekte sadece yazılımsal bir uygulamadır ve tarafımdan C# da yazılmıştır.Peki bu program ne iş yapıyor;
Bazı CD'lerin içerisinde Autorun.inf diye bir dosyaya rastlamışsınızdır.Bu dosya çok basit bir yapıda olup CD, sürücüye takıldığında otomatik çalıştırılacak programı ve birde CD etketinde gösterilecek icon'u tanımlar.Böyle bir şeyi USB Flash disklerimiz için yapmak istediğimizde önümüze bazı engeller çıkıyor.Bu sorun ise Windows bir USB disk takıldığında Autorun dosyası içindeki icon anahtarını değerlendirip, open anahtarı ile belirtilmiş exe dosyasını değerlendirmemesidir.İşte bu sorunu çözmek için bu aracı geliştirdim.Programı çalıştırdığınızda system tray'de yerini alıyor ve USB disklerin sökülüp-takılmasını dinlemeye başlıyor.Dinleme işlemini sürücü takibi değil, direkt Windows'un mesaj sistemine müdehale yaparak hallediyor.
Araç Kutusu seçeneği herhangi bir USB disk takıldığında disk içindeki tüm exe'leri listeliyor ve bu menüyü kullanarak bu programları çalıştırmanızı sağlıyor.Böylece tüm programlarınızı tek bir arayüzden yönetebilirsiniz.Bu cihazı kaydet ve Bu cihazı kaldır seçenekleri ise disk içerisindeki inf dosyasını değerlendirme işlemini sadece sizin programa kaydettiğiniz USB disk için yapmasını sağlıyor.Bunu yapmak için USB disk'inizi porta takın ve aracın sesli uyarı vererek icon'unu değiştirmesini bekleyin.Daha sonra system tray'deki icona sağ tıklayıp yukarıdaki menüyü açın.Cihaz algılandığından Bu cihazı kaydet seçeneği aktif olacaktır.Bu seçeneğe tıklayarak cihazınızı programa kaydedebilirsiniz.Bu işlemden sonra hangi disk'i takarsanız takın bu disk sizin olmadığı sürece inf dosyası değerlendirilmeyecektir.Yine bu menüden cihazı kaldırabilirsiniz.Otomatik Başlangıç seçeneğini kullanarak bu aracın windows'la başlamasını sağlayabilirsiniz.
Auturun Dosyası oluştur seçeneğini icon dosyanızı, otomatik çalıştırmak istediğiniz programı seçip bir Autorun dosyası oluşturabilmenizi sağlıyor.Hedef dizini kutusu eğer sistemde bir USB disk mevcut ise bunun sürücü adını içerecektir.Bu durumda oluşturduğunuz inf dosyası direkt disk'e kopyalanır.Fakat icon ve exe dosyası kopyalanmaz.Bu dosyalarında inf dosyası ile koyalanmasını istiyorsanız Hedef dizine full paket oluştur kutucuğunu aktif yapmalısınız.Kaydet butonuna basarak işlemleri tamamlayabilirsiniz :)
* USB Management Library :
Bu uygulama önceki geliştirdiğim tüm uygulamaların omurgasıdır.Bu DLL'de C# da yazdım ve tüm USB uygulamaları için kullanılacak temel bileşendir.Bu DLL içinde HID sınıfı cihazlarla haberleşecek ve daha birçok şeyi yapacak methodlar ve özellikler kodlanmıştır.Bu DLL'i kendi yazdığınız uygulamarda kullanabilmek için aşağıda link'ini verdiğim pdf dosyasını okuyun.Bu makalede bu DLL içindeki methodları ve özellikleri uygulamalarınızda nasıl kullanabileceğinizi anlatan ve aynı zamanda PIC İskelet kodlarını nasıl kullanacağınızı gösteren konular bulunmaktadır.
USBManagement Library yani umng.dll, tüm uygulamalar için temeldir ve önceki yazılan tüm uygulamalarda bu DLL kullanımıştır.
TEST ARAÇLARI
Bu dizin içinde tüm hazırlıkları bitirdikten sonra USB cihazınızı test etmek, USB cihazınız ve yukarıda verdiğim TEST uygulaması arasındaki veri trafiğini görebilmeniz ve inceleyebilmeniz için bazı test araçları mevcut.Bu araçların kullanılmasını hemen hemen bitirmek üzere olduğum makalede detaylı olarak anlattım ileriki günlerde link'i vereceğim.ADIM ADIM USB makalesindeki anlattığım konuları bu test araçları ile gözünüzle görerek daha iyi anlayacaksınız.
DRIVER GELİŞTİRME
Bu bölümde ise özellikle sistem programlama ile uğraşanlar için önemli dökümanlar mevcut.
- Microsoft Press Windows Driver Model Programming
- Windows Internals
- Modern Operating System ve diğerleri
Amacım elektronikle hobi veya profesyonel olarak ilgilenen kişilerin, cihazlarını USB arabirimi ile geliştirmelerini sağlamak için gerekli elementleri sağlamaktır.Aynı zamanda bu elementleri kullanarak herkezin kafasındaki devresini USB arabirimi ile tasarlayıp buraya link vermesini istiyorum.USB Management Library(umng.dll) ve PIC İskelet kodları bu iş için temeldir.Bu iki elementi uygulamarınızda nasıl kullanmanız gerektiğini anlatan makale yazı sonunda.Bı ortak komponentleri kullanarak herkezin kendi uygulamasını geliştirmesini istiyorum.Yani umng.dll ve PIC İskelet Kodları ile yapımış projeler.....
Herkezin katılımını bekliyorum.Tüm elektronikçilere faydalı olması dileğiyle..
USB Paket
Bu pakette driver dökümanları hariç yukarıda sayılan tüm componentler bulunmaktadır.
USB Management Library ve PIC Kodları Kullanım Klavuzu
Bu döküman USB uygulamalarınızda kullanabilmeniz için yazdığım USBManagement Library(umng.dll) içindeki method ve özellikleri nasıl kullanmanız gerektiğini anlatıyor.
Windows Internals
Sistem programlama ile ilgilenen kişilerin başlangıç olarak okuması gereken bir döküman...
Modern Operating System
Yine sistem programlama ile uğraşanların Windows Internals adlı dökümanı okuduktan sonra, okuması gereken bir döküman
Programming Windows Driver Model
Bu gerek USB için gerekse diğer donanımlar için driver yazmak isteyen ve bu işe meraklı kişilerin mutlaka okuması gereken Microsoft Press baskılı döküman(CD'si yakında...)
Arkadaşlar aşağıdaki link'e yeni bitirdiğim son makaleyi koyuyorum.Bu makaleyi anlayabilmeniz için ve size faydalı olabilmesi için USB TEST devresini kurmanız ve USB TEST UYGULAMASI adlı programı PC'nizde hazır bulundurmanız gerekiyor.Bu makale önceki linkte verdiğim programların ve ADIM ADIM USB adlı makalenin anlaşılabilmesi için çok önemlidir.
Bu makale USB cihazımızın sisteme tanıtılırken Windows tarafından gönderilen istek paketlerinin ve cihazın verdiği yanıtların gözlemlenmesini içeriyor.Bu gözlemleme işi Device Monitoring Studio aracı ile yapılıyor.Önceki makalemde anlattıklarımı ve USB transferinin iç yüzünü bu USB DEBUG makalesinde gösterilenlerle daha iyi anlayacağınızı umuyorum
USB DEBUG
Devam edecek.....
TA2LSM
=> ADIM ADIM USB
(2.10.2007 20:47:51)
Oldukça güzel bir çalışma olmuş gibi. Yalnız emeğini neden böyle parçalara bölerek verme gereği duyduğunu anlayamadım. Yazık etme bence çıkarabilirsen bir kitap çıkar. USB ve USB PIC'ler revaçta bu aralar. Tam zamanı.
İmzana baktım da .NET olayını biliyorsun sanırım. Ben nasıl *.resx dosyalarını resources'a çevireceğim? Microsoft .NET Framework SDK v2.0 yükledim ama neyle compile edeceğim nasıl edeceğim anlamadım. ProgDVB'yi Türkçeye çeviriyorum da Prog'la da konuştuk baya bir. Dosyaları yolladım ona. Derlerse artık. Ama derleyip deneyemediğim için tam olarak göremiyorum olayı.
PanDa
=> ADIM ADIM USB
(2.10.2007 22:13:34)
Teşekkürler.Resx ile ilgili sorunu yazılım bölümünde sorarsan orada yardımcı olmaya çalışırdım.Ben bu başlığı USB konusu ile alakalı açmıştım
SDK'daki resgen.exe aracı ile .resx dosyanı resource dosyaya çevirebilirsin.Komut dizilimi;
resgen dosya.resx rdosya.resources
Kitap konusuna gelince, benim ticari bir kaygım yok.Amaç hizmet sadece.Uzun zamandır araştırıyorum USB ile alakalı hiç Türkçe kaynak ve çalışma yok.Bende bu açığı gidermek için yaptım birşeyler.
TA2LSM
=> ADIM ADIM USB
(2.10.2007 22:19:54)
quote:
Orjinalden alıntı: PanDa Kitap konusuna gelince, benim ticari bir kaygım yok.Amaç hizmet sadece.Uzun zamandır araştırıyorum USB ile alakalı hiç Türkçe kaynak ve çalışma yok.Bende bu açığı gidermek için yaptım birşeyler. |
o zaman seni tebrik ederim. Yazının devamını bekleriz. derli toplu word ya da pdf halini de verecek misin?
PanDa
=> ADIM ADIM USB
(2.10.2007 22:21:48)
Dostum sen rar dosyasını indirdin mi?Yada yukarıdaki yazdıklarımın tamamını okudun mu?
Derli toplu pdf o rar dosyasının içinde...
TA2LSM
=> ADIM ADIM USB
(2.10.2007 22:26:34)
Kızma kardeş.
USB Paket
USB Management Library ve PIC Kodları Kullanım Klavuzu
şeklinde yazmışsın fark edemedim.
PanDa
=> ADIM ADIM USB
(2.10.2007 22:29:18)
Kızmak? Ne kızması dostum
ElektroEmre
=> ADIM ADIM USB
(2.10.2007 22:45:08)
@PanDa çok teşekkürler...
Emeğine sağlık...
Gerçekten çok güzel bir çalışma...Gerçekten elektronik hakkında Türçe kaynaklar yetersiz...Piyasadaki kitaplarını bir çoğuda sadece ticari kaygılar ile yazılmış dışı hoş, ancak içi boş kitaplar maalesef...
Bende uzun zamandır USB-PIC iletişimi hakkında Türçe kaynak arayordum, hızır gibi yetiştin imdadıma
Devamını dört gözle bekliyoruz...
PanDa
=> ADIM ADIM USB
(2.10.2007 22:54:57)
Eyvallah dostum beğenmene sevindim.Bundan sonra USB ile tüm çalışmalarımı burada paylaşıcam.Aynı paylaşımı yazdığım şeyleri kullanarak sizlerinden yapmasını istiyorum.Böylece USB ile yapılmış projeler çoğalmış olur.
TA2LSM
=> ADIM ADIM USB
(2.10.2007 23:09:58)
Ben indiremiyorum büyük dosyayı malesef. Sitede bedava download için boş slot yokmuş. Dene dene deli oldum. neyse artık yarın bir daha denerim.
He bu arada resgen için resx dosyasını üzerine sürükleyip bırakmak yeterli oluyormuş.
PanDa
=> ADIM ADIM USB
(2.10.2007 23:12:41)
Arkadaşlar ilk yazdığımda da belirttim.İndiren arkadaşlar ya aralarında paylaşsın yada gönüllü biri başka bir yere upload etsin.Çünkü bu UPLOAD siteleri belirli bir indirmeden sonrasına izin vermiyor ve ücret istiyor.
TA2LSM
=> ADIM ADIM USB
(2.10.2007 23:24:35)
dostumwww.4shared.com'a üye ol. 1 GB bedava alan veriyor. Ayda en az bir kere gidip kapanmayacak şekilde açık tutabiliyorsun alanını. Tavsiye ederim.
PanDa
=> ADIM ADIM USB
(2.10.2007 23:28:49)
OK dostum tavsiyen için teşekkürler.Yalnız ben bu dosyaları birkez daha başka bir alana taşımaya dayanamam
TA2LSM
=> ADIM ADIM USB
(2.10.2007 23:32:36)
bende olsa upload ederdim yarın ama sadece pdf'i indirebildim.
PanDa
=> ADIM ADIM USB
(3.10.2007 00:11:34)
Dostum ilgin için çok teşekkür ederim.Yararlı olabildiysem ne mutlu bana
huawéi
=> ADIM ADIM USB
(4.10.2007 05:24:02)
Üstad eline emeğine sağlık,heyecanla beklediğim bir çalışmaydı çok teşekkürler...
sondunya
=> ADIM ADIM USB
(4.10.2007 06:55:59)
Eline sağlık.Emin ol çok faydalı bir iş yaptın!Henüz inmediği için tam yorum yapamıyorum ama bu çalışman büyük bir boşluğu dolduracak.Çok sağol.
PanDa
=> ADIM ADIM USB
(4.10.2007 08:55:46)
Sağolun arkadaşlar.Yalnız hala bu dosyayı sabit biryerde tutma sorunu var.Yakın bir zamanda verdiğim linkten download yapamayacaksınız ve ben gene upload etmek zorunda kalıcam
TA2LSM
=> ADIM ADIM USB
(4.10.2007 10:43:24)
Ben zaten indiremedim.
Dostum yine upload yapacaksın gibi duruyor.www.4shared.com'a üye ol bu defa. Tüm paylaşımlarını oradan verirsin.
PanDa
=> ADIM ADIM USB
(4.10.2007 10:54:30)
Üstad benim üye olduğum FileFactory'de 1GB alan veriyor.Burada önemli olan dosyaları kaç kişinin download edebileceği, ne kadar süre barındırdığı ve bir seferde kaç MB dosya yüklenebildiği...Şu an bir seferde büyük boyut dosya yükleme konusunda FileFactory işimi görüyor.Fakat dosya'lara bir çok kişi talip olunca
"artık yeter bu dosyanın uploader'ı gelsin ücret ödesin" diyor.Birde belirli bir süre sonra da siliyor dosyaları...