Генерация и сбор данных по двунаправленным каналам

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

Узнайте устройства NI, подключенные к вашей системе, и найдите идентификатор для 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