File: testLoadLibrary.m

package info (click to toggle)
libad9361 0.2-1
  • links: PTS, VCS
  • area: main
  • in suites: bookworm, bullseye
  • size: 1,440 kB
  • sloc: ansic: 16,065; sh: 165; makefile: 7
file content (54 lines) | stat: -rw-r--r-- 1,633 bytes parent folder | download | duplicates (3)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
libName = 'libad9361';
hfile = '/usr/local/include/ad9361-wrapper.h';
loadlibraryArgs = {hfile,'includepath','/usr/local/include','addheader','ad9361.h'};
[a1, b1] = loadlibrary(libName, loadlibraryArgs{:});
libfunctions('libad9361')


hfile = '/usr/share/libiio/matlab/iio-wrapper.h';
loadlibraryArgs = {hfile,'includepath','/usr/local/include','addheader','iio.h'};
[a2, b2] = loadlibrary('libiio', loadlibraryArgs{:});
libfunctions('libiio')

% Create the network context
ip_address = '192.168.2.1';
iio_ctx = calllib('libiio', 'iio_create_network_context', ip_address);

% Check if the network context is valid
if (isNull(iio_ctx))
    iio_ctx = {}; %#ok<NASGU>
    unloadlibrary('libad9361')
    unloadlibrary('libiio')
    error('Could not connect to the IIO server!');
end

% Increase the object's instance count
fprintf('Connected to IP %s\n', ip_address);

nb_devices = calllib('libiio', 'iio_context_get_devices_count', iio_ctx);

% If no devices are present return with error
if(nb_devices == 0)
    unloadlibrary('libad9361')
    unloadlibrary('libiio')
    error('No devices were detected in the system!');
end
fprintf('Found %d devices in the system\n', nb_devices);

% Detect if the targeted device is installed
dev_found = 0;
for i = 0 : nb_devices - 1
    dev = calllib('libiio', 'iio_context_get_device', iio_ctx, i);
    name = calllib('libiio', 'iio_device_get_name', dev);
    fprintf('%s\n',name);
    if strcmp(name,'ad9361-phy')
        ret = calllib(libName,'ad9361_set_bb_rate',dev,int32(2e6));
        disp(ret);
    end
    clear dev;
end

iio_ctx = {};

unloadlibrary('libad9361')
unloadlibrary('libiio')