Konuyu görüntüle
IUCODERS FORUM > İşletim Sistemleri & Donanım & Network > Donanım > USB üzerine yapmam gereken bir proje
Yazar
yente


avatar

Kayıt: 07.03.2009
18.02.2011-21:47 #73631
Öncelikle merhaba,

Bir sistem düşünelim. Sensorleri var. Bu sensorler yardımıyla 2 farklı sinyal alınıyor, uyumlandırılıyor ve PIC'e yollanıyor. PIC'e gelen analog sinyal dijitalize ediliyor ve bilgisayarda yapılan kullanıcı arayüzüne aktarılmak isteniyor. Bu aktarımın da USB ile sağlanması isteniyor. Benim takıldığım nokta da işte tam burası. O dijitalize edilen verilerin aynı anda bilgisayara USB ile aktarılıp arayüzde akmasını sağlamam lazım. Bunu nasıl yapabilirim? Yani cihazdan USB vasıtasıyla bilgisayara aktardığım veri nereye gider çözemedim bunu. C# ile bir arayüz hazırlamaya başladım fakat kafamda bu arayüzün arkasında o sinyali nerden ve nasıl çağırıp kullanacağım onun soru işaretleri var.

Ayrıca o sinyaller aynı anda benim yaptığım arayüzde akabilir mi? Yoksa USB ile yollanan sinyalleri önce bilgisayarda bir yere kaydedip daha sonra mı çağırmam gerekiyor arayüz yazılımını yaparken?

Bir de USB ile veri aktarırken o aktarmak istediğimiz verilerin nereye gideceğini PIC içine gömeceğimiz yazılımla biz mi belirliyoruz yoksa o verilerin gideceği sabit bir yer mi var?

Belki biraz çok sordum ama benim için çok önemli. Bilgisi olanlar paylaşırsa çok memnun olurum.

Şimdiden teşekkürler.






Yazar
hayabusa2785


avatar

Kayıt: 13.06.2006
18.02.2011-23:05 #73633
http://msdn.microsoft.com/en-us/library/system.io.ports.serialport.aspx

C# serialport tan yararlanmalısın. Program açıkken sonsuz döngü ile sürekli port dinleme işlemi yaparsın. Telnet üzerinden msn tarzı programların algoritma mantığı ile aynı, port dinleme yani.

http://www.icsharpcode.net/OpenSource/SharpUSBLib/default.aspx

bu tür linkleri araştırmanı tavsiye ederim.





Yazar
yente


avatar

Kayıt: 07.03.2009
19.02.2011-00:50 #73634
C# kullanarak böyle bir şeyi USB yoluyla yapmam mümkün değil mi yani tam anlayamadım :S





Yazar
clairvoyant


avatar
Antalya
Kayıt: 05.05.2006
19.02.2011-01:17 #73635
Söz konusu PIC için USB driver yazman lazım veya yazılmış bir driver varsa onun API'lerinden faydalanmalısın. USB yerine serial port üzerinden çalışmak daha pratik görünüyor.





Let`s make this world a better place to live !

Yazar
benkimim


avatar
istanbul
Kayıt: 04.10.2007
19.02.2011-03:52 #73637
yente yazdi
 
Öncelikle merhaba,

Bir sistem düşünelim. Sensorleri var. Bu sensorler yardımıyla 2 farklı sinyal alınıyor, uyumlandırılıyor ve PIC'e yollanıyor. PIC'e gelen analog sinyal dijitalize ediliyor ve bilgisayarda yapılan kullanıcı arayüzüne aktarılmak isteniyor. Bu aktarımın da USB ile sağlanması isteniyor. Benim takıldığım nokta da işte tam burası. O dijitalize edilen verilerin aynı anda bilgisayara USB ile aktarılıp arayüzde akmasını sağlamam lazım. Bunu nasıl yapabilirim? Yani cihazdan USB vasıtasıyla bilgisayara aktardığım veri nereye gider çözemedim bunu. C# ile bir arayüz hazırlamaya başladım fakat kafamda bu arayüzün arkasında o sinyali nerden ve nasıl çağırıp kullanacağım onun soru işaretleri var.

Ayrıca o sinyaller aynı anda benim yaptığım arayüzde akabilir mi? Yoksa USB ile yollanan sinyalleri önce bilgisayarda bir yere kaydedip daha sonra mı çağırmam gerekiyor arayüz yazılımını yaparken?

Bir de USB ile veri aktarırken o aktarmak istediğimiz verilerin nereye gideceğini PIC içine gömeceğimiz yazılımla biz mi belirliyoruz yoksa o verilerin gideceği sabit bir yer mi var?

Belki biraz çok sordum ama benim için çok önemli. Bilgisi olanlar paylaşırsa çok memnun olurum.

Şimdiden teşekkürler.


USB ile direkt çalışan PIC ler mevcut çok basit bir HID device şeklinde tanıtabiliyorsun, yani fare veya klavye gibi algılıyor bilgisayarın bunları, gelelim sonrasına, PIC dediğin alet bir mikrodenetleyici yani birkaç analog, birkaç dijital giriş çıkışı olan, hafıza ve epromu bulunan birşey, bknz mimari ve mikroişlemcilerin detay konular, gelelim senin picden veriyi dijitalize edip pc ye aktarmana, bu işlem zor birşey değil ama biraz karmaşık, mesela analog bir sensörden aldığın veriler milivolt düzeyinde, bu aralıklara göre senin pic içerisine bir program yazman gerekiyor ki bu işlem için en iyi dil Assembler, hatta makina dili dediğimiz HEX, fakat bu iş oldukça zor insanlar yüksek seviyeli dilleri daha iyi kullanıyor, pic için C ve C++ derleyicileri var programını yazıyorsun compile ettiğinde HEX dosyasını veriyor ve sende bir eprom programlayıcı veya pic programlayıcıya bunu attığında işlem tamam, yani artık pic in verilerini analiz ediyor girişlerinden sinyali alıyor çıkışına istediğin veriyi iletiyor hale geldi... sonrası windowstan usb haberleşmesi, biraz araştırırsan çok zor şeyler değil... Esasen merak ettim ne projesi bu ? Bitirme falan ?





:)
Del.icio.us
Digg
Facebook
Furl
Google
Blink
Simpy
Spurl
Y! MyWeb