Обучающая программа — Создание прикладной программы в LabWindows/CVI, страница 24

Например, если ваш прибор GPIB посылает двоичные данные с двумя байтами в байтовом порядке Intel, ваш код должен быть следующим:

short int instr_buf[100];

short int prog_buf[100];

status = ibrd (ud, instr_buf, 200);

Scan (instr_buf, "%100d[b2o01]>%100d", prog_buf);

Если, вместо этого, ваш прибор GPIB посылает двоичные данные с двумя байтами в порядке байта фирмы Motorola, функция Scan должна быть следующей:

Scan (instr_buf, "%100d[b2o10]>%100d", prog_buf);

В любом случае, модификатор o используется только на буфере, содержащем необработанные  данные из прибора (instr_buf). LabWindows/CVI гарантирует, что буфер программ (prog_buf) находится в соответствующем для главного процессора байтовом порядке. Для полного описания модификатора o, см. Главу 2, Formatting and I/O Library, в LabWindows/CVI Standard Libraries Reference Manual.

Преобразование драйверов приборов

Вы можете преобразовывать драйвера приборов LabWindows для DOS для использования в LabWindows/CVI. Однако, если National Instruments обеспечили ваш LabWindows для DOS драйверами прибора, вы должны приобрести новые драйвера приборов LabWindows/CVI от National Instruments из web сайта или ftp сайта.. Обратитесь к приложению A, для подробной информации.

Этот раздел описывает процедуру для преобразования ваших файлов драйвера прибора LabWindows для DOS так, чтобы вы могли использовать их в LabWindows/CVI. Шаги следующие:

1. Скопировать существующий *.с, *.h, и *.fp файлы для прибора в новый каталог, который нужно использовать в LabWindows/CVI.

2. Запустить LabWindows/CVI.

3. Создать новый проект. Добавьте *.с, *. h, и *. fp файлы для драйвера прибора, которые вы перенесете в новый проект.

Преобразование функциональных панелей драйвера прибора

1. Нажмите два раза на файле *.fp в окне проекта, чтобы вызвать функциональный редактор дерева.

2. Рассмотрите каждую функциональную панель в драйвере прбора выбирая Edit Function Panel

Window из меню Edit.

3. Напишите подробно все расширенные символы ASCII. Например, «m» становится micro.

4. Функция размер панелей соответственно в любых функциональных панельных окнах, которые имеют множественные функциональные панели.

5. Если вы хотите преобразовать функциональную панель справки в новой стиль, выберите Options»Help Style»New из окна функционального редактора деревьев. Затем выберите Transfer Window Help to Function Help из меню Options.

6. Сохраните файл *.fp.

Преобразование заголовка файла драйвера прибора

1. Загрузите файл *.h из окна проекта.

2. Удалите все примеры ключевого слова far.

3. Найдите глобальное описание ошибки переменной. Если он существует:

a. Используйте ключевое слово extern в объявлении. Например, extern int tek_err;.

b. Определите переменную ошибки в драйвере прибора исходного файла. Например, int tek_err;.

Если нет глобального описания ошибки переменной в файле заголовка, удостоверитесь что это объявлено как статический в драйвере прибора исходного файла. Например, static int tek_err;.

4. Сохраните файл *.h.

Преобразование исходного текста драйвера прибора

1. Загрузите файл *.c  из окна проекта.

2. Продолжить шаг 3 в разделе, Преобразование исходного кода, в этой главе.

Преобразование загружаемых компилируемых модулей и внешних модулей

Чтобы преобразовывать загружаемый компилируемый модуль или внешний модуль LabWindows для DOS, получите исходный текст, и следуйте шагам в разделе, Преобразлование исходного текста, в этой главе.

Если только исходный текст выполняется соответственно в LabWindows/CVI, вы можете компилировать его, используя LabWindows/CVI или совместимый внешний компилятор. Обратитесь к Главе 2, Использование загружаемых компилируемых модулей.

Внимание!!!  Загружаемые компилируемые модули или внешние модули LabWindows для DOS, которые используют DMA или прерывания LabWindows/CVI не поддерживает. Под Windows, эти модули должны быть перезаписаны, используя MicrosoftDDK. Под UNIX, вы должны будете перезаписать аппаратно - специфические модули, использующие главную библиотеку системы.