USB to serial

Başlatan lojikmemo1, 19 Ağustos 2007, 22:57:19

lojikmemo1

Daha erken gelecektim ama sizin için yazılımı en basite indirgemeye çalıştım galiba çok basit oldu  :D

Neyse şimdi başlıyoruz hemen söyleyeyim programcılık bilmeyen arkadaşlar ve özellikle .NET e aşina olmayanlar biraz zorlanabilirler.

c# ile yazıldı ve .Net 2 gerektiriyor.
bir tane  usb user control library yazdım sizin bir şey bilmenize gerek yok sadece user control library'yi c# vey basic gibi .net  tabanlı projenize ekleyeceksiniz ve formunuzun üzerine sürükleyeceksiniz o kadar .Net sizin için bir usb1 isminde obje oluşturur bu objenin sadece iki metodunu kullanacaksınız sizin için yazdım.

1. okuma işlemi  usb1.usb_oku() gibi birşey rar dosyasında örnek proje ve dll dosyası var ha bu arada ocx diyoruz ama .net ocx yapmıyor onun yerine user control library yapıyor ve dll uzantılı olarak kaydediyor

2. yazma işlemi usb1.usb_yaz(argümanlar) örnek programı inceleyin aslında tek satır ama dediğim gibi .net ile daha önce çalışmış olanlar için bu.

Kodlar çalışmaktadır bende pic deney seti de var hemen denedi çok iyi çalışıyor seri port hızı malesef sabit değiştirmesi biraz zor yani programa gömmek lazım ben 9600 baud olarak ayarladım işinzi görür.
Kabaca programı açıyorsunuz text box'a bir değer  girip usb yaz diyorsunuz o kadar okumak için ise usb oku butonuna tıklıyorsunuz maxsimum 100 mili saniye okuma yapıyor bir sei porttan bir değer gelirse onu formdaki label'e yazıyor yok alamassa 0 dönüyor dediğim gibi denedim kuru bir laf kalabalığı uğruna üstün körü yapmadım hatta bunda sonra ben de bu componeti kullanacam :D

Bir de diyeceksiniz ki yahu bir program yazsaidin ya ne diye componet yazdın kafamızı karıştırdın diye ?
1. örnek program var çalışıyor onu kullanabilirsiniz.
2.componet yaptım çünkü tüm insanları düşündüm yani herhangi biri bu componeti alıp projesine ekleyip kullanabilir.
Tek ricam projenizi yaptığınız zaman tamamen ben yaptım denilmemesidir usb nin ne kadar karışı özellikle pc tarafının tam bir örümcek ağı olduğunu çok az kişi biliyor.

Şunuda belirteyim programı yazarken ben de bir kaç kod inceledim yazanlara teşşekkürlerimi sunuyorum.

http://rapidshare.com/files/50072239/usb_mevlut_aydogdu.rar (güncellendi)


:arrow:  :arrow:  :arrow: Arkadaşlar link güncellendi

ARTIK USB VAR tamamen paylaşım amaçlıdır.
sadece Allah razı olsun deyin yeter.

Belitmek zorunda kaldım:
Bu bir seriport projesi değil lüftfen anlamadan incelemeden varsayımlar üzerine yorum yazmayalım. Pic tarafına kadar her şey usb üzerinden pic usb den gelen bilgileri alıp seri formata dönüştürüyor istersem bu bilgileri ram da da depolarım istersem eproma yazarım seri formata dönüştürmenin amacı sadece herkez kullanabilsi
AYRICA  TEKRAR SÖYLÜYORUM HID ÜZERİNDEN ÇALIŞIYOR SANAL PORT FALAN YOK YAHU

Mevlüt Aydoğdu
İnsanlara Akılları Ölçüsünde Söz Söyleyiniz.

salih18200

arkadaşım yazmışsın güzel buna diyeceğim yok ta :P   bize balık vermesende tutmayı öğretsen yavaş yavaş acelemiz de yok.
Ne dersin :?:

lojikmemo1

dosyanın içeriği
->componet
->örnek c# programı
->devre şeması
->pic hex

Artık yapıpta gönderemem :d yani();
İnsanlara Akılları Ölçüsünde Söz Söyleyiniz.

salih18200

Bu arada ben c++ kullanıyorum sanırım c# ile hemen hemen aynı sözdizilimi var,bunu c++ kodlarına çevirebilirmiyim.Birde bu yazdığın komponentle ne yapıyoz.Kusura bakma bu işte acemiyim.Bilgisayar programlamada daha yolun başındayım.

lojikmemo1

Alıntı yapılan: "salih18200"Bu arada ben c++ kullanıyorum sanırım c# ile hemen hemen aynı sözdizilimi var,bunu c++ kodlarına çevirebilirmiyim.Birde bu yazdığın komponentle ne yapıyoz.Kusura bakma bu işte acemiyim.Bilgisayar programlamada daha yolun başındayım.

hımm o zaman iş biraz zor sana biraz detaylı anlatayım diğer arkadaşlarda okurlar.
işin şu boyutu var ben 4 yıldır bilgisayar programları ile ilgileniyorum  bu yüzden bazen kısa olsun diye karışık yapıyorum kusura bakmayın.

şimdi komponet olayı aslıda şudur sizin yazamayacağınız kadar çaplı kod bloklarını ki buna herşey dahildir içinde barındıran bir derlenmiş kod bloğudur. mesela siz  bir gif dosyasından 5. resimi almak istiyorsunuz ama iş çok karışıtır color table yi ayrıcan ordan reisim indexlemsi yapçcan bitmap dizileri falan falan ama bunu bilen biri bir componet yazar ve sana bir fonksiyon verir mesela şöyle
bitmap a= new bitmap();
a=gif[5];
bu temsili kod basitçe sizden bir numara alıyor ve o index numarasına sahip resmi döndürüyor.

Bizim usbye gelince o daha bi ilgiç aslıda bilgisayardaki tüm usbler birbirine paralalel bağlı desek mantiki olarak doğru olur bu noktadan haraketle sistemin tüm bus larını taratıp bizim usbyi buloruz sonra karışık bir protokolle iletişime geçiyoruz.

Şimdi sizi ilgilendiren sadece bu komponeti projonize eklemek ki bu tamamen sürükle bırak tarzıdır.
onuda anlatayım visula studio 2005 ve üzeri lerde şöyle:
önece bir windows application yapıyoruz sol yandaki komponetler menüsünden herhangi bir yere tıklayıp mousenin sağ tuşuna tıklıyoruz açılan menüden choose itemse tıklıyoruz açılan pencereden .Net freamework sekmesi seçili durumdadır buradan browse deyip benim yaptığım komponetlerden usb_to_serial_ocx.dll isimli olanı seçiyoruz benim tavsiyem projeniz le dosyalar ayın klasörde olsun işte bu kadar artık bizim komponetimiz de sol taraftaki menüde şimdi tek yapmamız gereken o komponete tıklayıp formun üzerine sürüklemek hayırlı olsun zaten gerisi örnek programdaki gibi o kdar.

          Evet c# söz dizilimi java ve c++ a bezer ama daha güçlü diyebilirim. bence kesinlikle 1 numara ve şunuda ekleyeyim koponetler dil ayrımı yapmazlar :D yani bu komponeti anlattığım şekilde basic.Net c++.Net  hatta j++.Net ile kullanabilirsin hayde kolay gele
İnsanlara Akılları Ölçüsünde Söz Söyleyiniz.

salih18200

Verdiğin bilgiler için çok sağol.
Çok çalışmam gerek kardeş çokkkkk. :cry:

teknikelektronikci

hocam paylaşımınız için teşekürler çok güzel bir çalışma olmuş .hocam şimdi bu devre 2550 ile olan devre ft232 ye aletrnatif olup pc tarafı direk görüyor öyle değilmi ? yani amaç bu  öyle değilmi? bire rica etsem usb nin model dosyasını gönderebilirmisiniz rica etsem.şimdiden teşekürler kolay gelsin
Ey Türk istikbalinin evlâdı! İşte, bu ahval ve şerâit içinde dahi, vazifen; Türk İstiklâl ve Cumhuriyetini kurtarmaktır! Muhtaç olduğun kudret, damarlarındaki asil kanda mevcuttur!

lojikmemo1

Alıntı yapılan: "teknikelektronikci"hocam paylaşımınız için teşekürler çok güzel bir çalışma olmuş .hocam şimdi bu devre 2550 ile olan devre ft232 ye aletrnatif olup pc tarafı direk görüyor öyle değilmi ? yani amaç bu  öyle değilmi? bire rica etsem usb nin model dosyasını gönderebilirmisiniz rica etsem.şimdiden teşekürler kolay gelsin

malesef model yok ancak emulatörler ile yapılır.

Ama üzülme proteus 7.2 bunu destekliyor fakat cracklı versiyonu çalışmıyor :(

Başka bir açı devre zaten basit bir protoborda kuru ver tamamdır işte ama dikkate et ters bişi yapıpta bilgisayara zarar verme.




Alıntı yapılan: "salih18200"Verdiğin bilgiler için çok sağol.
Çok çalışmam gerek kardeş çokkkkk. :cry:

hepimizin çok çalışması gerekiyor...

Yahu bir gazcı arkadaş vardı bana 10 gün de yap falan diyordu  
sizin düşüncelerinizi alalım
İnsanlara Akılları Ölçüsünde Söz Söyleyiniz.

ahmet2004

Komponenti çekip bıraktıktan sonra bu hata mesajı geliyor.


files

sınıf kaydedilmemiş diyor .  regsvr32 bileşen.ocx
şeklinde kayıt yaptıktan sonra bu sorun giderilebilir.

lojikmemo1

Alıntı yapılan: "ahmet2004"Komponenti çekip bıraktıktan sonra bu hata mesajı geliyor.

(Resim gizlendi görmek için tıklayın.)

Hatayı bildirdiğin için sağol link güncellendi dosyalar kısmına bakarsanın anlaşılır. Malesef componetin yerini değiştiremiyorum bu yüzden şöyle olacak dosyaları zip içine koydum ve self extract yaptım bu exe içindekileri c:\windows\ yoluna açıyor Sakın değiştirmeyin projenize o yoldan ekleyiniz sorun kalmaz umarım denedim o şekilde problem olmuyor.
İnsanlara Akılları Ölçüsünde Söz Söyleyiniz.

lojikmemo1

Alıntı yapılan: "files"sınıf kaydedilmemiş diyor .  regsvr32 bileşen.ocx
şeklinde kayıt yaptıktan sonra bu sorun giderilebilir.
imkansız ortada aslında ocx bile yok cevabın üstte
İnsanlara Akılları Ölçüsünde Söz Söyleyiniz.

files

Bu hex ile PIC i bilgisayara bağlıyoruz. HID sınıfı bir cihaz oluyor. işlevi 9600 baud hızında usb/seri dönüştürücü sanırım. ama com port numarası filan yok. kolayca kullanabilrsiniz. bu pici+ birde kendi propjenizdeki picinizi bağlamalısınız.

İyi olmuş eline sağlık.

Jabba

lojikmemo1
Seninle özelde görüşelim mi?Ne kadar zamandır USB ile ilgileniyorsun.USB protokolünü çok iyi biliyor musun?Bende C# programcısıyım.Benimde yazdığım bir DLL var ve hala geliştiriyorum.C# ile yazdım.Ben aynı zamanda donanım tarafını da tasarlıyorum.Şu anda da USB üzerine bir kitap yazıyorum.Kitap bittikten sonra USB üzerine bir site veya blog açmak istiyorum.Benimle beraber proje geliştirir misin?

Ben USB hastasıyım.Türkiyede bu konuda kıtlık var.Yaptıklarımızı insanlarla paylaşmak istiyorum....
Amacım USB ile projeler geliştirebileceğim bir grup kurmak.Var mısın??
Capsule NET Compiler 2007

Jabba

Gerçi bunları kitabımda anlatıcam ama birkaç örnek vereyim gaza geldim.Aşağıdaki resimde yukarıda bahsettiğim kendi yazmış olduğum DLL'i kullanan bir C# projesi var.Bu program kitap için hazırlandı ve temek oku-yaz, cihaz mesajı takipleri filan yapıyor.



Mesela alttaki resim yine kitap için hazırladığım bir USB Motor Kontrol devresinin bilgisayar yazaılımı.

[/URL][/img]

Buda uygulama devresi..

[/URL][/img]

Yani yapmak istediğim USB'nin heryönü ile uğraşan bir grup kurmak ve bu işe meraklı arkadaşlara yardımcı olmak projeler geliştirmek.Bana katılmak isteyen arkadaşlar, bu işe meraklı ve daha önce uğraşmış kişiler varsa cevaplarınızı bekliyorum.
Capsule NET Compiler 2007