Haberler:

Forum kuralları güncellendi LÜTFEN  okuyunuz:  https://bit.ly/2IjR3ME

Ana Menü

PIC ve PC bağlantısı

Başlatan baran123, 05 Mayıs 2014, 21:40:01

baran123

merhabalar

Arkadaslar ben pc den pıc kontrol etmeyi çok ıstıyorum fakat nerden baslasam bir türlü bilemedim seri haberlesmemi usb mi nasıl bir sey yapmalıyım 18f2550 kullanmak istiyorum nerden baslayayım 1 tane led yaka bilsem olay çözülcek pc arayüzü olarak c# düşünüyorum napam ne edem ben ? :)

iyi çalısmalar.

kudretuzuner

Merhaba,
PIC tarafında asm ile PC tarafında da VB.Net ile yazılım isterseniz size yardımcı olabilirim.
Amatör

LukeSkywalker

Seri port artık yeni PC'lerde pek bulunmuyor. Siz en iyisi USB konusunu biraz araştırın. C biliyorsanız mikroC ve C# tavsiye ederim.

baran123

#3
vb olabilir ama asm sıkıntı bir proje içinde asm öğrenmek istemiyorum açıkcası ccs c de olsun istiyorum hem bildiğim dil sonucta yinede teşekkür ederim

mesaj birleştirme:: 06 Mayıs 2014, 11:49:19

Alıntı yapılan: LukeSkywalker - 05 Mayıs 2014, 21:47:06
Seri port artık yeni PC'lerde pek bulunmuyor. Siz en iyisi USB konusunu biraz araştırın. C biliyorsanız mikroC ve C# tavsiye ederim.
Peki usb-ttl dönüstürücü falan bunlar nasıl oluyor bide max entegreleri var bunu tam anlayamadım biraz açar mısınız ?

mesaj birleştirme:: 05 Mayıs 2014, 21:58:00

Bir sorum daha olacak pıc ıle pc arasında ıletısım kurdum seri port veya usb bunu proteusda deneyebilir miyim bunun için eklenti ayar var mı ?

Mr.Java

Java ile bu iş diğer tüm dillere nazaran çok daha kolay.Hem de platformdan bağımsız olacaktır program.Fakat bu iş için Java SE bitirmeniz gerekiyor.

baran123

çok zaman gerekiyor mu bunun için ?

vitruvius

Proteus'ta deneyebilirsin. Benim fikrim önce seri port ile başla, usb kısmı zor gelebilir yazılımsal olarak. Evet yeni bilgisayarlarda yok ama rs232-usb dönüştürücü kullanabilirsin. C# ile bu iş çok kolay halloluyor. Picproje'den ya fatiherdem'in (baktım ama bulamadım) yada fxdev'in kendi web sitelerinde güzel bir servo motor kontrol uygulaması vardı onu örnek alabilirsin. Benim açtığım ilk konular da bunun üzerine olduğundan oradan da takip edebilirsin. Gerçi o konularda fxdev'in değerli yorumları vardı, şimdi silinmiş. Ama ben yardımcı olmaya çalışırım her ne kadar projeler elimde olmasa da.

Tagli

Alıntı yapılan: LukeSkywalker - 05 Mayıs 2014, 21:47:06
Seri port artık yeni PC'lerde pek bulunmuyor. Siz en iyisi USB konusunu biraz araştırın. C biliyorsanız mikroC ve C# tavsiye ederim.
Bu sorun değil, malum dönüştürücüler var. USB ile uğraşmadım (bu ID alma olayını yüzünden) ama yakın zamanda seri portun modasının geçeceğini sanmıyorum. Ayrıca seri port için program yazmaya alışmadan USB işine girmeyi de doğru bulmuyorum.

Alıntı yapılan: Mr.Java - 05 Mayıs 2014, 21:58:15
Java ile bu iş diğer tüm dillere nazaran çok daha kolay.Hem de platformdan bağımsız olacaktır program.Fakat bu iş için Java SE bitirmeniz gerekiyor.
Java hoş ve güzel bir dil ancak seri port kütüphanesi biraz sıkıntılı. Bildiğim kadarıyla iki versiyon var ortalıkta: Birincisi javax.comm paketi ki resmi olan bu. Ama bu galiba artık desteklenmiyor (çok emin değilim). Genelde rxtx isimli resmi olmayan bir kütüphane daha çok seviliyor ve kullanılıyor. Ben yüklerken biraz sıkıntı yaşadığımı hatırlıyorum ama galiba sonunda başarmıştım. Windows ortamında çalışacaksan C# biraz daha zahmetsiz olacaktır.

Şahsen ben Linux ortamında termios.h üzerinden yazdığım kendi C ve C++ kodlarımı kullanıyorum. Eğer ileride RS485 haberleşmesi ile uğraşman gerekirse 9 bitlik paketler gerekebilir (mark - space parity olarak biliniyor ve her donanım tarafından desteklenmeyebiliyor). Şu ana kadar bu desteği veren kütüphane bulamadım hiçbir dilde. O yüzden kendi yazdığım kodu kullanıyorum.

Alıntı yapılan: baranekrem9 - 05 Mayıs 2014, 22:01:52
çok zaman gerekiyor mu bunun için ?
Basit seri port uygulamaları çok kısa bir sürede gerçekleştirilebilir. Ama iş karmaşıklaşınca, hele de bir standarta oturtmaya çalışınca çok zaman alabiliyor. Ben aylardır PC - PIC arası iletişimi bir standarta bağlayıp iki taraf için de otomatik kod üreten bir altyapı üzerinde çalışıyorum. Proje biraz oturmaya başlarsa burada paylaşırım ama şu sıralar henüz o olgunluğa erişmedi.
Gökçe Tağlıoğlu

baran123

Alıntı yapılan: Tagli - 05 Mayıs 2014, 22:10:14
Bu sorun değil, malum dönüştürücüler var. USB ile uğraşmadım (bu ID alma olayını yüzünden) ama yakın zamanda seri portun modasının geçeceğini sanmıyorum. Ayrıca seri port için program yazmaya alışmadan USB işine girmeyi de doğru bulmuyorum.
Java hoş ve güzel bir dil ancak seri port kütüphanesi biraz sıkıntılı. Bildiğim kadarıyla iki versiyon var ortalıkta: Birincisi javax.comm paketi ki resmi olan bu. Ama bu galiba artık desteklenmiyor (çok emin değilim). Genelde rxtx isimli resmi olmayan bir kütüphane daha çok seviliyor ve kullanılıyor. Ben yüklerken biraz sıkıntı yaşadığımı hatırlıyorum ama galiba sonunda başarmıştım. Windows ortamında çalışacaksan C# biraz daha zahmetsiz olacaktır.

Şahsen ben Linux ortamında termios.h üzerinden yazdığım kendi C ve C++ kodlarımı kullanıyorum. Eğer ileride RS485 haberleşmesi ile uğraşman gerekirse 9 bitlik paketler gerekebilir (mark - space parity olarak biliniyor ve her donanım tarafından desteklenmeyebiliyor). Şu ana kadar bu desteği veren kütüphane bulamadım hiçbir dilde. O yüzden kendi yazdığım kodu kullanıyorum.
Basit seri port uygulamaları çok kısa bir sürede gerçekleştirilebilir. Ama iş karmaşıklaşınca, hele de bir standarta oturtmaya çalışınca çok zaman alabiliyor. Ben aylardır PC - PIC arası iletişimi bir standarta bağlayıp iki taraf için de otomatik kod üreten bir altyapı üzerinde çalışıyorum. Proje biraz oturmaya başlarsa burada paylaşırım ama şu sıralar henüz o olgunluğa erişmedi.

Değerli yorumlarınız için çok teşekkür ederim o zaman ben c#arayüzü olan dönüştürücülü bir devre yapmaya başlıyım ilk adım bu olsun yine tavsiye ve önerileriniz varsa eksik etmeyin :) bir de proteusda deneme imkanım varmı bu devreleri ?

vitruvius

USB'yi bilmiyorum ama Rs-232'yi deneyebilirsin "COMPIM" elemanını kullanarak. Bu arada proteus'ta denerken max232 kullanmana gerek yok.

LukeSkywalker

#10
Usb seri dönüştürüculeri 18f2550 ile kullanmak fazladan maliyet getirir. Seri portun modasi çoktan geçti. Seri iletisimin modasi geçmez, o ayri konu. Hangi laptop seri port barindiriyor? Hangi yeni model anakartta seri port var? Simdi bunlara bakarak seri portun modasi gecmedi demek abestir. 18f2550 usb donanimi barindiriyorken seri donusturucu kullanmak da abestir. Ayrica seri port kullanmadan ogrenmedikten, USB kullanmanin da hicbir sakincasi yok.  Bunlar bir siralama icerisinde giden bilgiler degil.

Tagli

USB son tüketiciye yönelik bir arayüz. Seri port denince RS485'i de bunun içinde değerlendiriyorum ve gerek "bus" mantığı, gerekse iletişim mesafesi göz önünde bulundurulduğunda otomasyon projelerinde rahatlıkla kullanılabilir.

Alıntı YapHangi yeni model anakartta seri port var?
Bir örnek: ASUS M5A97 R2.0 (yeni topladığım bilgisayarımda bu var)
Internal I/O Ports bölümünde listelenmiş COM port. Yani kaldırılmamış, sadece son kullanıcıya / tüketiciye hitap etmediği için içeri saklanmış. İsteyen konnektörünü takıp kullanabilir.

Gökçe Tağlıoğlu

LukeSkywalker

Bir urun tasarlayip uzerine seri port koyun bakalim kaçtane satacak? Bir de usb port ve usb konnektor barindiran bir urun tasarlayin ayni isi yapan. Onun da satiş rakamlarini alip bir karsilastirma yaptiginizda moda olayini daha rahat anlayabilirainiz.
Evet anakartlarda com port bulunuyor ama disariya cikarilmamis sizin de dediginiz gibi. Peki sizce neden eskiden uzerinde konnektoruyle hatta çift konnektorle satilan anakartlar, seri port konnektoru barindiran lap toplar varken gunumuzde yok? Seri iletisimin modasi gecmez ama fiziksel seri portlarin modasi coktan gecti. Bluetooth iletisimde sanal seri port olusturup kullaniliyor hala mesela. Mesela iki mikrodenetleyici arasinda basitce seri iletisim kurabiliriz. Fakat serimport barindirmayan bir laptop ile ile bir mcuyu iletisime sokmak icin araya bir chip kullanmak gerek. Uzerinde usb donanimi barindirqn bir mcu kullanilacaksa israf olur bir ft232...

Mr.Java

#13
@Sayın tagli dedikleriniz çok eskilerde kaldı.Java geliştiricileri o kadar fazla ki (bereket versin :) ) JSSC adlı kütüphane bile geliştirdiler :)

https://code.google.com/p/java-simple-serial-connector/

Bu kütüphane ile projenizi platformdan bağımsız,hızlı,stabil yapabilirsiniz.Kullanmak ise aşırı basit.Çok pro. projeler çıkarabilirsiniz swing ekleyerekten.


ferdem