libximc  2.8.9
Как использовать с...

Для приобретения первых навыков использования библиотеки создано простое тестовое приложение testapp. Языки, отличные от C-подобных, поддерживаются с помощью вызовов с преобразованием аргументов типа stdcall. Простое тестовое приложение на языке C расположено в директории 'examples/testapp', проект на C# - в 'examples/testcs', на VB.NET - в 'examples/testvbnet', для delphi 6 - в 'example/testdelphi', для matlab - 'examples/testmatlab', для Java - 'examples/testjava', для Python - 'examples/testpython'. Библиотеки, заголовочные файлы и другие необходимые файлы расположены в директориях 'win32'/'win64','macosx' и подобных. В комплект разработчика также входят уже скомпилированные примеры: testapp и testappeasy в варианте 32 и 64 бита под windows и только 64 бита под osx, testcs, testvbnet, testdelphi - только 32 бита, testjava - кроссплатформенный, testmatlab и testpython не требуют компиляции.

ЗАМЕЧАНИЕ: Для работы с SDK требуется Microsoft Visual C++ Redistributable Package (поставляется с SDK, файлы vcredist_x86 или vcredist_x64).

Использование на C

Visual C++

Тестовое приложение может быть собрано с помощью testapp.sln. Для компиляции необходимо использовать также MS Visual C++, mingw-library не поддерживается. Убедитесь, что Microsoft Visual C++ Redistributable Package установлен.

Откройте проект examples/testapp/testapp.sln, выполните сборку и запустите приложение из среды разработки.

MinGW

MinGW это вариант GCC для платформы win32. Требует установки пакета MinGW. В данный момент не поддерживается.

testapp, скомпилированный с помощью MinGW, может быть собран с MS Visual C++ или библиотеками mingw:

$ mingw32-make -f Makefile.mingw all

Далее скопируйте libximc.dll в текущую директорию и запустите testapp.exe.

C++ Builder

В первую очередь вы должны создать подходящую для C++ Builder библиотеку. Библиотеки Visual C++ и Builder не совместимы. Выполните:

$ implib libximc.lib libximc.def

Затем скомпилируйте тестовое приложение:

$ bcc32 -I..\..\ximc\win32 -L..\..\ximc\win32 -DWIN32 -DNDEBUG -D_WINDOWS testapp.c libximc.lib

XCode

Test app должен быть собран проектом XCode testapp.xcodeproj. Используйте конфигурацию Release. Библиотека поставляется в формате Mac OS X framework, в той же директории находится собранное тестовое приложение testapp.app.

Запустите приложение testapp.app проверьте его работу в Console.app.

GCC

Убедитесь, что libximc (с помощью rpm, deb или тарболла) установлена на вашей системе. Пакеты должны устанавливаться с помощью package manager'а вашей ОС. Для OS X предоставляется фреймворк.

Убедитесь, что пользователь принадлежит к группе, позволяющей доступ к COM-порту (например, dip или serial).

testapp может быть собран следующим образом с установленной библиотекой:

$ make

Для кросс-компиляции (архитектура целевой системы отличается от архитектуры хоста) следует передать флаг -m64 или -m32 компилятору. Для сборки universal binary на Mac OS X необходимо использовать вместо этого флаг -arch. Обратитесь к документации компилятора.

Затем запустите приложение с помощью:

$ make run

Примечание: make run на OS X копирует библиотеку в текущую директорию. Если вы хотите использовать библиотеку из другой директории, пожалуйста укажите в LD_LIBRARY_PATH или DYLD_LIBRARY_PATH путь к директории с библиотекой.

.NET

Для использования в .NET предлагается обертка wrappers/csharp/ximcnet.dll. Она распространяется в двух различных архитектурах и зависит от .NET 2.0.

Тестовые приложения на языке C# для Visual Studio 2013 расположены в директориях testcs (для C#) и testvbnet (для VB.NET). Скопируйте ximcnet.dll, libximc.dll, xiwrapper.dll, bindy.dll из ximc-2.x.x/ximc/win64 или ximc-2.x.x/ximc/win32 соответственно вашей системе в текущую директорию. Откройте проекты, скомпилируйте и запустите.

Delphi

Обертка для использования в Delphi libximc.dll предлагается как модуль wrappers/pascal/ximc.pas

Консольное тестовое приложение размещено в директории 'testdelphi'. Проверено с Delphi 6 на 32-битной системе.

Просто скомпилируйте, разместите DLL в директории с исполняемым модулем и запустите его.

Java

Как запустить пример на Linux. Перейдите to ximc-2.x.x/examples/testjava/compiled/ и запустите;

$ java -classpath /usr/share/java/libjximc.jar -classpath testjava.jar ru.ximc.TestJava

Как запустить пример на Windows или Mac. Перейдите в ximc-2.x.x./examples/testjava/compiled/. Скопируйте содержимое ximc-2.x.x/ximc/win64/ или ximc-2.x.x/ximc/macosx/ соответственно в текущую директорию. Затем запустите:

$ java -classpath libjximc.jar -classpath testjava.jar ru.ximc.TestJava

Как модифицировать и переобрать пример. Исходный текст расположен внутри testjava.jar. Перейдите в examples/testjava/compiled. Распакуйте jar:

$ jar xvf testjava.jar ru META-INF

Затем пересоберите исходные тексты:

$ javac -classpath /usr/share/java/libjximc.jar -Xlint ru/ximc/TestJava.java

или для Windows или Mac:

$ javac -classpath libjximc.jar -Xlint ru/ximc/TestJava.java

Затем соберите jar:

$ jar cmf MANIFEST.MF testjava.jar ru

Python

  1. Измените текущую директорию на examples/python.
  1. На OS X скопируйте библиотеку ximc/macosx/libximc.framework в текущую директорию. На Windows скопируйте библиотеки из ximc/win32 или ximc/win64 в текущую директорию. Замечание: архитектура используемой среды Python (32 или 64 бита) должна совпадать с ОС Windows и библиотекой libximc.
  1. Скопируйте содержимое ximc/crossplatform/wrappers/python/ в текущую директорию или установите переменную окружения PYTHONPATH:
    export PYTHONPATH=$PYTHONPATH:`pwd`/../../ximc/crossplatform/wrappers/python
  1. На Linux может понадобиться установить LD_LIBRARY_PATH, чтобы Python мог найти библиотеки с RPATH. Например, запустите:
    export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:`pwd`
  1. Затем запустите Python 2 или Python 3:
    python testpython.py

MATLAB

Тестовая программа на MATLAB testximc.m располагается в директории examples/testmatlab. Измените текущую директорию на examples/matlab.

На windows скопируйте ximc.h, libximc.dll, bindy.dll, xiwrapper.dll, а также содержимое директории ximc/(win32,win64)/wrappers/matlab/, в текущую директорию.

На Mac установите "Command Line Tools for XCode" от Apple и затем скопируйте ximc/macosx/libximc.framework и содержимое ximc/macosx/wrappers/matlab в текущую директорию.

Затем запустите в MATLAB:

testximc

Логирование в файл

Если программа, использующая libximc, запущена с установленной переменной окружения XILOG, то это включит логирование в файл. Значение переменной XILOG будет использовано как имя файла. Файл будет открыт на запись при первом событии лога и закрыт при завершении программы, использующей libximc. В лог записываются события отправки данных в контроллер и приема данных из контроллера, а также открытия и закрытия порта.

Требуемые права доступа

Библиотеке не требуются особые права для выполнения, а нужен только доступ на чтение-запись в USB-COM устройства в системе. Исключением из этого правила является функция только для ОС Windows "fix_usbser_sys()" - если процесс использующий библиотеку не имеет повышенных прав, то при вызове этой функции программная переустановка устройства не будет работать.

vim: ft=doxygen