NI Ürünleri İle İlgili Tartışmalar

cancel
Showing results for 
Search instead for 
Did you mean: 

Bağlı DAQ ünitelerini enumerate etme [USB6211] [C/C++]

Merhaba;

 

C'de USB6211'i kontrol eden bir programım var. NI'nın ANSI C örnek programlarını inceleyerek yaptım. Programda sorun yok ama şöyle bir pürüz var.

 

 DAQmxErrChk (DAQmxCreateDOChan(taskHandle,"Dev1/port1/line0:3","",DAQmx_Val_ChanForAllLines));//3 data pins, one async clk

Daq aleti Dev1 olarak görünüyor benim bilgisayarımda ama başka bilgisayarda Dev2-3 vs. gibi görünce program çalışmıyor; adı düzeltip yeniden compile etmek gerekiyor.

 

Matlab'ta bu tip enumaration built-in olarak mevcut idi, (daq.getDevices). Aynı enumaration Daq'ın C kütüphanesinde de mevcut mu? Değilse bir öneriniz var mı?

 

Daha da açık olarak psedocode şeklinde şu tip bir enumaration arıyorum:

 

while there is connected daq
       if get daq name == usb 6211
             ID = get daq ID
             break;
      end
end

 

Teşekkürler yardımınız için.

0 Kudos
Message 1 of 4
(4,313 Views)

Çözüm1

Uygulamanın çalıştığı bilgisayarda Dev2-3 görünüyorsa MAX üzerinden aygıtı Dev1 olarak isimlendirmek.

 

Çözüm2

Bir döngü içerisinde Dev1,Dev2,.. şeklide ile aygıtları deneyerek doğru aygıtı bulmak. Bunu yaparken de Product Category/Product Type kullanabilirsiniz ve hata yakalayarak doğrulayabilirsiniz

 

Çözüm3

Arayüzde Device I/O kontrolü kullanmak. (Enumeratör özelliği olup ilgili tüm aygıtları listeleyecektir.)

Message 2 of 4
(4,304 Views)

Merhaba Zafer Bey teşekkürler cevabınız için. 

Şu anda NI'nın C referans dosyasına bakıyorum, ikinci çözümle aletin simulated olup olmadığını da anlayabiliyorum, iyi birşey. Bunu uygulayacağım sanırım.

 

3. Çözümünüzü tam olarak anlayamadım. C Referanstan da i/o kontrol ilgili bölümü de bir türlü bulamadım. Biraz daha açmanız mümkün mü? Referans'a bir yönlendirme de çok yardımcı olur.

 

Teşekkürler tekrar

0 Kudos
Message 3 of 4
(4,299 Views)

C kütüphanesini incelemedim ancak Labview'da aygıtlar için kullanılan kontroller var. Karma kutuya (Combobox) benzeyen ve ilgili aygıtları otomatik listeleyen kontroller. Aynısının C içerisinde de olduğunu tahmin ediyorum.

0 Kudos
Message 4 of 4
(4,295 Views)