Руководство пользователя


Скачать 0.59 Mb.
Название Руководство пользователя
страница 3/6
Тип Руководство пользователя
rykovodstvo.ru > Руководство эксплуатация > Руководство пользователя
1   2   3   4   5   6

Меню "File"




Рис. 10. Меню «File»
1). Сохранение и считывание данных.
Для хранения данных в программе используется текстовый файл. Ограничений на имя файла и его расширение не установлено. Программа позволяет сохранять и считывать данные 2-х каналов, как вместе, так и по отдельности в зависимости от настроек на закладке «View», группа «View Channel».Все данные записываются в один файл.

Для чтения данных используется меню «File/Load Signal...»; для записи сигнала в файл используется меню «File/Save Signal...».
2). Закрытие программы
Меню “Close” закрывает приложение.
Меню “Devices”




Рис. 11. Меню “Devices”
Предназначено для выбора устройства, подключенного к ПК. Программа позволяет работать с четырьмя подключенными платами. В меню напротив выбранного устройства ставится соответствующая метка, а в области графиков отображаются соответствующие сигналы.

Описание библиотеки "Xdspapi.dll"
Библиотека "xdspapi.dll" предназначена для использования платы в прикладных программах. Библиотека реализует высокоуровневые API функции для управления режимами работы платы и получения оцифрованных данных из буферной памяти. Вместе с библиотекой поставляются: lib-файл xdspapi.lib для использования библиотеки под C-компилятором (например, Visual C++), заголовочные файлы xdspapi.pas и xdspapi.h для подключения библиотеки к проекту на Pascal и C соответственно.

В комплекте программного обеспечения поставляемого с платой (каталог WIN_DO_Oscilloscope) находится проект в исходных текстах демонстрирующий работу с библиотекой в Delphi.

Плата обеспечивает копирование внутренней памяти в физическую память компьютера и из памяти компьютера во внутреннюю память устройства без участия центрального процессора (DMA (Direct Memory Access) режим). Работа платы в этом режиме обеспечивает обмен данными между внутренней памятью платы и памятью компьютера на скорости до 100 MБ/с.

При работе платы используется следующий механизм передачи оцифрованного сигнала из памяти АЦП в память компьютера:

  • при инициализации платы в оперативной памяти компьютера выделяется 2 DMA буфера для АЦП, по 32 МБ каждый (для хранения данных 2-х каналов);

  • после завершения процесса дискретизации плата автоматически производит копирование оцифрованных данных из внутренней памяти АЦП (длинна копируемого участка задается) в 1-й и 2-й DMA буфер компьютера, по каналам соответственно;

  • пользовательское приложение получает доступ к буферу напрямую, через указатель на DMA буфер.

При передаче данных из памяти компьютера в память ЦАП используется следующий механизм:

  • при инициализации платы в оперативной памяти компьютера выделяется 2 DMA буфера для ЦАП, по 32 МБ каждый (для хранения данных 2-х каналов);

  • после запуска процесса передачи данных, они копируются из 3-го и 4-го DMA буфера в память ЦАП, на плате устройства..

  • пользователь получает доступ к буферу на прямую через указатель DMA буфера.

Плата поддерживает генерацию аппаратного прерывания. Прерывание генерируется после завершения процесса DMA транзакции.

Основной режим работы платы - цифровой осциллограф с циклическим запуском процесса оцифровки.

При запуске, в памяти компьютера выделяется 4-е DMA буфера (два для АЦП и два для ЦАП) для обмена данными с платой. Оцифрованные данные (2 канала АЦП) сохраняются в буферной памяти платы и, затем, по команде XdspStartRead, по очереди передаются в 1-й и 2-й DMA буфер компьютера для обработки. 3-й и 4-й DMA буферы компьютера используются для передачи данных ЦАП (2 канала ЦАП). Процесс передачи осуществляется командой XdspStartWrite.

DLL библиотека "xdspapi.dll" подключается к проекту программы стандартными методами для используемой среды программирования.

Модуль "xdspapi.pas" (xdspapi.h), описывающий импортируемые функции, а также дополнительные константы и типы для среды программирования Delphi (Visual C++), поставляется в комплекте программного обеспечения с платой.

Библиотека поддерживает следующие группы функций:

  • открытие (инициализация), закрытие (деинициализация) платы;

  • запуск процесса дискретизации и DMA транзакции;

  • управление режимом внешнего запуска;

  • настройка процесса оцифровки данных;

  • обмен данными с АЦП и ЦАП;

  • обработка цифровых сигналов.

Перечень функций:

  • открытие (инициализация), закрытие (деинициализация) платы:

XdspOpenDevice — Открыть устройство

XdspCloseDevice - Закрыть устройство

XdspResetAll - Выполнить RESET платы

  • запуск процесса дискретизации и DMA транзакции:

XdspStartWrite — запись данных в ЦАП

XdspStartRead — чтение данных из АЦП

  • управление режимом внешнего запуска:

XdspExternalStartEnable - включение режима внешнего запуска

XdspExternalStartDisable - выключение режима внешнего запуска

XdspSetPosEdgeExtStart – срабатывание внешнего запуска по положительному фронту сигнала

XdspSetNegEdgeExtStart – срабатывание внешнего запуска по отрицательному фронту сигнала

XDSPDigExtStartEnable — включение режима внешнего запуска по цифровому сигналу

XDSPDigExtStartDisable — выключение режима внешнего запуска по цифровому сигналу

  • настройка процесса оцифровки данных.

XdspSetProcessLength - установить количество отсчетов дискретизации и длину DMA транзакции

XdspSetSampleFrequencyDivider - установить делитель частоты процесса оцифровки

XdspAddrCntrToADCDataEnable - включение режима подмены данных АЦП адресным счетчиком (для диагностики)

XdspAddrCntrToADCDataDisable - выключение режима подмены данных АЦП адресным счетчиком (для диагностики)

XdspSetDAC1Default – запись данных в ЦАП1 установленных по умолчанию

XdspSetDAC2Default – запись данных в ЦАП2 установленных по умолчанию

XdspHistBuffEnable – включение буфера истории

XdspHistBuffDisable – выключение буфера истории

  • обмен данными с АЦП и ЦАП.

XdspDACCounterEnable – подключение счетчика к ЦАП-у (для диагностики)

XdspDACCounterDisable – отключение счетчика от ЦАП-а (для диагностики)

XdspDACtoADCEnable – включает непосредственный обмен данными между памятью ЦАП и АЦП на плате (для диагностики)

XdspDACtoADCDisable – выключает непосредственный обмен данными между памятью ЦАП и АЦП на плате (для диагностики)

XdspWriteToADCDAC – запись слова в конфигурационные регистры АЦП и ЦАП

XdspDACEnable - включение геренации сигнала ЦАП

XdspDACDisable - выключение генерации сигнала ЦАП

  • обработка цифровых сигналов.

XDSPReadDigInData - чтение цифровых сигналов с платы

XDSPWriteDigOutData - запись цифровых сигналов в плату.

Function XdspOpenDevice - Открыть устройство
Декларация: Function XdspOpenDevice(bDeviceNumber:Byte; phInterruptEventHandle:PHandle; ppDmaBuffer1:PPDmaMemoryBuffer; ppDmaBuffer2:PPDmaMemoryBuffer; ppDmaBuffer3:PPDmaMemoryBuffer; ppDmaBuffer4:PPDmaMemoryBuffer; pDmaBufferAddr1:PDWord; pDmaBufferAddr2:PDWord; pDmaBufferAddr3:PDWord; pDmaBufferAddr4:PDWord) : TDeviceHandle
Параметры функции: bDeviceNumber - номер усройства;

phInterruptEventHandle - указатель на прерывание от устройства;

ppDmaBuffer1 — указатель на 1-й DMA буфер компьютера;

ppDmaBuffer2 — указатель на 2-й DMA буфер компьютера;

ppDmaBuffer3 — указатель на 3-й DMA буфер компьютера;

ppDmaBuffer4 — указатель на 4-й DMA буфер компьютера;

pDmaBufferAddr1 — указатель на физический адрес 1-го DMA буфера;

pDmaBufferAddr2 — указатель на физический адрес 2-го DMA буфера;

pDmaBufferAddr3 — указатель на физический адрес 3-го DMA буфера;

pDmaBufferAddr4 — указатель на физический адрес 4-го DMA буфера.
Функция предназначена для инициализации выбранной платы. Возвращает дескриптор открытой платы, который передается в остальные функции библиотеки как определитель устройства, к которому обращается программа. Функция получает указатель на физический и логический DMA буфер компьютера, получает дескриптор для обработки событий по прерыванию от платы и выполняет очистку регистров.

В случае ошибки возвращается значение XDSP_INVALID_DEVICE_HANDLE (см. константы и типы для работы с API функциями библиотеки, описанные в файле "xdspapi.pas"), код ошибки можно получить, используя стандартную Windows API функцию GetLastError.
Примечание: при инициализации платы значение делителя частоты дискретизации устанавливается равным 1 (см. функцию XdspSetSampleFrequencyDivider), размер процесса дискретизации и DMA транзакции (см. функцию XdspSetProcessLength) устанавливается равным значению dwLength. Эти параметры могут быть изменены в процессе работы программы вызовом функций XdspSetSampleFrequencyDivider и XdspSetProcessLength.

Пример использования функции в среде Delphi:
// Подключаем модуль с описанием констант, типов и импортируемых функций

Uses xdspapi;
Var

// Переменные для хранения дескриптора устройства

device:TdeviceHandle;
// параметры для инициализации платы

phInterruptEventHandle:PHandle;

ppDmaBuffer1:PPDmaMemoryBuffer;

ppDmaBuffer2:PPDmaMemoryBuffer;

ppDmaBuffer3:PPDmaMemoryBuffer;

ppDmaBuffer4:PPDmaMemoryBuffer;

pDmaBufferAddr1:PDWord;

pDmaBufferAddr2:PDWord;

pDmaBufferAddr3:PDWord;

pDmaBufferAddr4:PDWord;

// Открываем плату 0. Число устройств подключенных к ПК может быть до 4 штук включительно.

device:=XdspOpenDevice(0, @phInterruptEventHandle,

@ppDmaBuffer1, @ppDmaBuffer2, @ppDmaBuffer3, @ppDmaBuffer4,

@pDmaBufferAddr1, @pDmaBufferAddr2, @pDmaBufferAddr3, @pDmaBufferAddr4);
// Если устройство открыто ошибочно

If device=XDSP_INVALID_DEVICE_HANDLE Then Begin

// Код ошибки может быть получен функцией GetLastError.

exit;

end;
// Устройство открыто и проинициализировано успешно

end;
...
// Работа с платой
Function XdspCloseDevice - Закрыть устройство
Декларация: Function XdspCloseDevice(hDeviceHandle:TDeviceHandle):DWORD
Функция предназначена для закрытия платы ранее открытой функцией XdspDeviceOpen. Закрытие платы выполняется перед завершением работы программы пользователя.

Пример использования функции в среде Delphi :

// Подключаем модуль с описанием констант, типов и импортируемых функций

Uses xdspapi;
Var

// Переменные для хранения дескриптора устройства

device : TdeviceHandle;
// параметры для инициализации платы

phInterruptEventHandle:PHandle;

ppDmaBuffer1:PPDmaMemoryBuffer;

ppDmaBuffer2:PPDmaMemoryBuffer;

ppDmaBuffer3:PPDmaMemoryBuffer;

ppDmaBuffer4:PPDmaMemoryBuffer;

pDmaBufferAddr1:PDWord;

pDmaBufferAddr2:PDWord;

pDmaBufferAddr3:PDWord;

pDmaBufferAddr4:PDWord;

...
// Открываем плату, проверка ошибок и выбор номера устройства опущены (см. функцию XdspOpenDevice)

device:=XdspOpenDevice(0, @phInterruptEventHandle,

@ppDmaBuffer1, @ppDmaBuffer2, @ppDmaBuffer3, @ppDmaBuffer4,

@pDmaBufferAddr1, @pDmaBufferAddr2, @pDmaBufferAddr3, @pDmaBufferAddr4);
...
// Работа с платой
...
// Закрываем плату перед завершением работы

XdspCloseDevice(device);
End;
Function XdspResetAll - Выполнить RESET платы
Декларация: Function XdspResetAll(hDeviceHandle:TDeviceHandle):DWORD
Функция предназначена для внутренней инициализации платы.
Примечание: для устойчивой и надежной работы платы, рекомендуется, посредство выполнения функции XdspResetAll, проводить инициализацию (реинициализацию) платы, каждый раз перед вызовом функций XdspStartWrite или XdspStartRead.
Параметры функции: hDeviceHandle - дескриптор открытой платы.
Пример использования функции в среде Delphi:
// Подключаем модуль с описанием констант, типов и импортируемых функций

Uses xdspapi;
Var

// Переменная для хранения дескриптора устройства

device : TdeviceHandle;
// параметры для инициализации платы

phInterruptEventHandle:PHandle;

ppDmaBuffer1:PPDmaMemoryBuffer;

ppDmaBuffer2:PPDmaMemoryBuffer;

ppDmaBuffer3:PPDmaMemoryBuffer;

ppDmaBuffer4:PPDmaMemoryBuffer;

pDmaBufferAddr1:PDWord;

pDmaBufferAddr2:PDWord;

pDmaBufferAddr3:PDWord;

pDmaBufferAddr4:PDWord;

...
// Открываем плату, проверка ошибок и выбор номера устройства опущены (см. функцию XdspOpenDevice)
device:=XdspOpenDevice(0, @phInterruptEventHandle,

@ppDmaBuffer1, @ppDmaBuffer2, @ppDmaBuffer3, @ppDmaBuffer4,

@pDmaBufferAddr1, @pDmaBufferAddr2, @pDmaBufferAddr3, @pDmaBufferAddr4);

...
// Инициализируем плату

XdspResetAll(device);
...
// Работа с платой
// Реинициализируем плату

XdspResetAll(device);

// Закрываем плату перед завершением работы, выбор номера устройства опущена (см. функцию XdspCloseDevice)

XdspCloseDevice(device);
Function XdspStartWrite – передача данных из памяти компьютера в буферную память платы (ЦАП)
Декларация: Function XDspStartWrite(hDeviceHandle:TDeviceHandle; BufNumber:integer; RamNumber:integer; TimeOut:DWord):DWORD
Функция копирует данные из DMA буфера компьютера во внутреннюю память платы ЦАП.
Примечание: при передачи данных для ЦАП платы используются 2 и 3 DMA буфер в компьютере и на плате соответственно. 2-й для 1 канала ЦАП, 3-й для 2 канала ЦАП.
Функция возвращает XDSP_STATUS_SUCCESS в случае успешного выполнения или XDSP_STATUS_ERROR в случае превышения таймаута (см. константы и типы для работы с API функциями библиотеки, описанные в файле "xdspapi.pas"), код ошибки можно получить, используя стандартную Windows API функцию GetLastError.
Параметры функции: hDeviceHandle — дескриптор открытой платы;

BufNumber — номер буфера внутренней памяти платы ( 2 для 1

канала ЦАП, 3 для 2 канала ЦАП);

RamNumber — номер DMA буфера (2 для 1 канала ЦАП, 3 для 2

канала ЦАП);

TimeOut — время ожидания прихода прерывания от платы в мс.

Пример использования функции в Delphi:
// Подключаем модуль с описанием констант, типов и импортируемых функций

Uses xdspapi;
Var

// Переменная для хранения дескриптора устройства

device : TdeviceHandle;

// Переменная для хранения результата работы функции

result : Dword;
// параметры для инициализации платы

phInterruptEventHandle:PHandle;

ppDmaBuffer1:PPDmaMemoryBuffer;

ppDmaBuffer2:PPDmaMemoryBuffer;

ppDmaBuffer3:PPDmaMemoryBuffer;

ppDmaBuffer4:PPDmaMemoryBuffer;

pDmaBufferAddr1:PDWord;

pDmaBufferAddr2:PDWord;

pDmaBufferAddr3:PDWord;

pDmaBufferAddr4:PDWord;
...

// Открываем плату, проверка ошибок и выбор номера устройства опущены (см. функцию XdspOpenDevice)
device:=XdspOpenDevice(0, @phInterruptEventHandle,

@ppDmaBuffer1, @ppDmaBuffer2, @ppDmaBuffer3, @ppDmaBuffer4,

@pDmaBufferAddr1, @pDmaBufferAddr2, @pDmaBufferAddr3, @pDmaBufferAddr4);
...
// Инициализирует плату, проверка ошибок опущена, см. функцию XdspResetAll

XdspResetAll(device);
// Запуск копирования данных со 2-го DMA буфера(1 канал ЦАП) компьютера во 2-й буфер платы,

// Время ожидания таймаута 5с

result:=XdspStartWrite(device,2,2,5000);

// Если ошибка

If result=XDSP_STATUS_ERROR Then Begin

// Произошла ошибка при выполнении функции, код ошибки можно получить используя GetLastError

End;
// Запуск копирования данных со 3-го DMA буфера(2 канал ЦАП) компьютера во 3-й буфер платы,

// Время ожидания таймаута 5с

result:=XdspStartWrite(device,3,3,5000);

// Если ошибка

If result=XDSP_STATUS_ERROR Then Begin

// Произошла ошибка при выполнении функции, код ошибки можно получить используя GetLastError

End;
...

// Закрываем плату перед завершением работы, выбор номера устройства опущен (см. функцию XdspcloseDevice)

XdspCloseDevice(device);

Function XdspStartRead – запускает процесс передачи данных из памяти платы (АЦП) в память компьютера
Декларация: Function XDspStartRead(hDeviceHandle:TDeviceHandle; TimeOut:DWord; DMATrCB:DWord):DWORD
Функция, в зависимости от выбора пользователя(параметр DMATrCB), запускает DMA транзакцию при которой диапазон внутренней памяти платы (АЦП) копируется во внутреннюю память компьютера (используются буферы с номерами 0 и 1), или функция запускает процесс дискретизации, по завершении которого автоматически производится запуск DMA транзакции. После чего функция ожидает прерывание, которое генерируется платой, и сигнализирует о завершении DMA транзакции.
Функция возвращает XDSP_STATUS_SUCCESS в случае успешного выполнения или XDSP_STATUS_ERROR в случае превышения времени таймаута (см. константы и типы для работы с API функциями библиотеки, описанные в файле "xdspapi.pas"), код ошибки можно получить, используя стандартную Windows API функцию GetLastError.
1   2   3   4   5   6

Похожие:

Руководство пользователя icon Руководство пользователя
Мы гордимся тем, что предлагаем нашему потребителю новейшую и высококачественную продукцию для караоке. Перед эксплуатацией устройства,...
Руководство пользователя icon Руководство по эксплуатации версия 0,июль 2015
Внимание! Перед началом работы внимательно прочтите данное руководство пользователя. Данное руководство пользователя является неотъемлемой...
Руководство пользователя icon Руководство по эксплуатации версия 0, ноябрь 2015 (код 21-10-02)
Внимание! Перед началом работы внимательно прочтите данное руководство пользователя. Данное руководство пользователя является неотъемлемой...
Руководство пользователя icon Руководство пользователя Беспроводная микрофонная система vhf-диапазона Ritmix rwm-220
Перед использованием внимательно прочитайте руководство пользователя, убедитесь в том, что вы знаете, как использовать систему правильно....
Руководство пользователя icon Руководство пользователя Код документа: 54819512. 09. 01,03. 09....
Руководство пользователя «арм рбс» создано для прикладного программного обеспечения «Система удаленного финансового документооборота»...
Руководство пользователя icon Руководство пользователя Код документа: 54819512. 09. 01,03. 09....
Руководство пользователя «арм рбс» создано для прикладного программного обеспечения «Система удаленного финансового документооборота»...
Руководство пользователя icon 15 руководство пользователя
Просим уделить время для внимательного изучения инструкций в настоящем Руководстве пользователя. Это поможет вам надлежащим образом...
Руководство пользователя icon Программный комплекс «web Торги-кс» Руководство пользователя Руководство...
Настоящий документ является руководством пользователя программного комплекса «web-торги-кс» и содержит описание порядка работы казенных...
Руководство пользователя icon Руководство пользователя 11 8 Операция «Первичный запрос»
Руководство пользователя сервисного концентратора Министерства обороны Российской Федерации
Руководство пользователя icon Руководство пользователя 11 8 Операция «Первичный запрос»
Руководство пользователя сервисного концентратора Министерства обороны Российской Федерации
Руководство пользователя icon Руководство пользователя 7 Операция «Поиск подразделений»
Руководство пользователя веб-сервиса для работы с организационной структурой ведомства
Руководство пользователя icon Руководство пользователя 7 1 Операция «SendPguRequest»
Руководство пользователя электронного сервиса предоставления информации о разрешениях на строительство/на ввод в эксплуатацию
Руководство пользователя icon Руководство пользователя 9 Операция «Регистрация заявления»
Руководство пользователя сервиса предоставления информации из реестра регионального/муниципального имущества
Руководство пользователя icon Пневматическая винтовка qb-15. Руководство пользователя
Уважаемый покупатель, приступая к эксплуатации винтовки, внимательно изучите данное руководство пользователя
Руководство пользователя icon Руководство пользователя 12 Операция «Передача документов»
Руководство пользователя электронного сервиса предоставления информации фссп россии версии 1
Руководство пользователя icon Руководство пользователя 6 Операция «Обработка запроса»
Руководство пользователя электронного сервиса предоставления сведений о регистрации лекарственных средств

Руководство, инструкция по применению




При копировании материала укажите ссылку © 2024
контакты
rykovodstvo.ru
Поиск