Сгенерируйте и получите данные по двунаправленным каналам

В этом примере показано, как использовать двунаправленный канал и читать и записать данные с помощью тех же двух линий на NI 6255.

Узнайте устройства NI, соединенные к вашей системе, и найдите ID для NI 6255.

d = daqlist("ni")
dev =

  3×4 table

    DeviceID                Description                  Model             DeviceInfo       
    ________    ___________________________________    __________    _______________________

     "Dev1"     "National Instruments(TM) USB-6255"    "USB-6255"    [1×1 daq.ni.DeviceInfo]
     "Dev2"     "National Instruments(TM) USB-6363"    "USB-6363"    [1×1 daq.ni.DeviceInfo]

Создайте DataAcquisition и добавьте две линии от порта 0 и 2 линии от порта 1 на Dev1.

d = daq("ni");
addbidirectional(d,"Dev1","Port0/Line0:1","Digital");
addbidirectional(d,"Dev1","Port1/Line0:1","Digital");
d.Channels
ans = 

    Index    Type     Device       Channel          Measurement Type        Range           Name       
    _____    _____    ______    _____________    _______________________    _____    __________________

      1      "dio"    "Dev1"    "port0/line0"    "Bidirectional (Input)"    "n/a"    "Dev1_port0/line0"
      2      "dio"    "Dev1"    "port0/line1"    "Bidirectional (Input)"    "n/a"    "Dev1_port0/line1"
      3      "dio"    "Dev1"    "port1/line0"    "Bidirectional (Input)"    "n/a"    "Dev1_port1/line0"
      4      "dio"    "Dev1"    "port1/line1"    "Bidirectional (Input)"    "n/a"    "Dev1_port1/line1"

Установите направление на всех каналах к выходным данным.

set(d.Channels,"Direction","Output");

Сгенерируйте данные о цифровом выходе.

write(d,[1 0 1 0])

Измените направление на всех каналах к входным данным

set(d.Channels,"Direction","Input");

Получите цифровые данные.

read(d,"OutputFormat","Matrix")
ans =

     1     0     1     0