mirror of
https://github.com/eclipse/upm.git
synced 2025-03-15 04:57:30 +03:00
kxcjk1013: updated iio calls to match API and disabled Java ISR
ISR support for Java bindings needs iio.c Runnable implementation in MRAA. Might be possible to leverage working implementation for GPIO. Signed-off-by: Mihai Tudor Panu <mihai.tudor.panu@intel.com>
This commit is contained in:
parent
3504dc7246
commit
1d085362d9
@ -1,14 +1,20 @@
|
||||
%module javaupm_kxcjk1013
|
||||
%include "../upm.i"
|
||||
%include "stdint.i"
|
||||
%include "typemaps.i"
|
||||
|
||||
%feature("director") IsrCallback;
|
||||
|
||||
%ignore generic_callback_isr;
|
||||
%include "../IsrCallback.h"
|
||||
|
||||
%{
|
||||
#include "kxcjk1013.h"
|
||||
%}
|
||||
%include "kxcjk1013.h"
|
||||
|
||||
%ignore installISR(void (*isr)(char*), void* arg);
|
||||
|
||||
%pragma(java) jniclasscode=%{
|
||||
static {
|
||||
try {
|
||||
System.loadLibrary("javaupm_kxcjk1013");
|
||||
} catch (UnsatisfiedLinkError e) {
|
||||
System.err.println("Native code library failed to load. \n" + e);
|
||||
System.exit(1);
|
||||
}
|
||||
}
|
||||
%}
|
||||
|
@ -61,14 +61,6 @@ KXCJK1013::~KXCJK1013()
|
||||
// mraa_iio_stop(m_iio);
|
||||
}
|
||||
|
||||
#ifdef JAVACALLBACK
|
||||
void
|
||||
KXCJK1013::installISR(IsrCallback* cb)
|
||||
{
|
||||
installISR(generic_callback_isr, cb);
|
||||
}
|
||||
#endif
|
||||
|
||||
void
|
||||
KXCJK1013::installISR(void (*isr)(char*), void* arg)
|
||||
{
|
||||
@ -132,9 +124,9 @@ KXCJK1013::getChannelValue(unsigned char* input, mraa_iio_channel* chan)
|
||||
bool
|
||||
KXCJK1013::enableBuffer(int length)
|
||||
{
|
||||
mraa_iio_write_integer(m_iio, "buffer/length", length);
|
||||
mraa_iio_write_int(m_iio, "buffer/length", length);
|
||||
// enable must be last step, else will have error in writing above config
|
||||
mraa_iio_write_integer(m_iio, "buffer/enable", 1);
|
||||
mraa_iio_write_int(m_iio, "buffer/enable", 1);
|
||||
|
||||
return true;
|
||||
}
|
||||
@ -142,7 +134,7 @@ KXCJK1013::enableBuffer(int length)
|
||||
bool
|
||||
KXCJK1013::disableBuffer()
|
||||
{
|
||||
mraa_iio_write_integer(m_iio, "buffer/enable", 0);
|
||||
mraa_iio_write_int(m_iio, "buffer/enable", 0);
|
||||
|
||||
return true;
|
||||
}
|
||||
@ -170,9 +162,9 @@ KXCJK1013::enable3AxisChannel()
|
||||
sprintf(trigger, "kxcjk1013-hr-dev%d", m_iio_device_num);
|
||||
|
||||
mraa_iio_write_string(m_iio, "trigger/current_trigger", trigger);
|
||||
mraa_iio_write_integer(m_iio, "scan_elements/in_accel_x_en", 1);
|
||||
mraa_iio_write_integer(m_iio, "scan_elements/in_accel_y_en", 1);
|
||||
mraa_iio_write_integer(m_iio, "scan_elements/in_accel_z_en", 1);
|
||||
mraa_iio_write_int(m_iio, "scan_elements/in_accel_x_en", 1);
|
||||
mraa_iio_write_int(m_iio, "scan_elements/in_accel_y_en", 1);
|
||||
mraa_iio_write_int(m_iio, "scan_elements/in_accel_z_en", 1);
|
||||
|
||||
// need update channel data size after enable
|
||||
mraa_iio_update_channels(m_iio);
|
||||
|
@ -26,10 +26,6 @@
|
||||
#include <string>
|
||||
#include <mraa/iio.h>
|
||||
|
||||
#if defined(SWIGJAVA) || defined(JAVACALLBACK)
|
||||
#include "../IsrCallback.h"
|
||||
#endif
|
||||
|
||||
namespace upm
|
||||
{
|
||||
/**
|
||||
@ -76,11 +72,7 @@ class KXCJK1013
|
||||
* @param arg Pointer to an object to be supplied as an
|
||||
* argument to the ISR.
|
||||
*/
|
||||
#if defined(SWIGJAVA) || defined(JAVACALLBACK)
|
||||
void installISR(IsrCallback* cb);
|
||||
#else
|
||||
void installISR(void (*isr)(char*), void* arg);
|
||||
#endif
|
||||
/**
|
||||
* Extract the channel value based on channel type
|
||||
* @param input Channel data
|
||||
|
Loading…
x
Reference in New Issue
Block a user