Module

com.rscja.deviceapi

## Class Module

- java.lang.Object
- - com.rscja.deviceapi.Module

-     public class Module
      extends java.lang.Object

  自定义模块操作类，用于客户自定义模块
  Customed module operation type, used for client customed module

  注意：
  Attention:
  1、使用前请确认您的机器已安装此模块。
  1. Make sure this module is installed before you use your device.
  2、要正常使用模块需要在\libs\armeabi\目录放置libDeviceAPI.so文件。
  2. Put libDeviceAPI.so file in directory \libs\armeabi\ then module can used normally.
  3、在操作设备前需要调用 `init(int)` 打开设备，使用完后调用 `free()` 关闭设备
  3. call `init(int)` to switch on device before operating the device, call `free()` to switch off the device after using.

  Author:
    liuruifeng

- - ### Method Summary

    All Methods Static Methods Instance Methods Concrete Methods Deprecated Methods
    Modifier and Type | Method and Description
    --- | ---
    `boolean` | `free()` 释放模块 Release module
    `static Module` | `getInstance()` 获取操作实例 Acquire operation Instance
    `boolean` | `init(int module)` 初始化模块 Initialize module
    `boolean` | `init(int module, int baudrate)` 初始化模块
    `void` | `ioctl_gpio(int gpio, boolean isHigh)`
    `boolean` | `powerOff(int module)` 模块下电，仅下电不关串口 module power off, power off only
    `boolean` | `powerOn(int module)` 模块上电，仅上电不开串口 Module power on, power on only
    `byte[]` | `receive()` 接收数据 Receive data
    `boolean` | `send(byte[] data)` 发送数据 Send data
    `int` | `sendAndReceive(byte[] sendData, byte[] outData)` 收发数据
    `boolean` | `uartSwitch2(int module)` Deprecated.

    - ### Methods inherited from class java.lang.Object

      `equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

- - ### Method Detail

    - #### getInstance

          public static Module getInstance()
                                    throws ConfigurationException

      获取操作实例
      Acquire operation Instance
      Returns:
      Throws:
        `ConfigurationException`

    - #### powerOn

          public boolean powerOn(int module)

      模块上电，仅上电不开串口
      Module power on, power on only
      Parameters:
        `module` - 模块编号 1、1D（9600） 2、RFID（115200） 3、UHF（115200） 4、Finger（57600）
        `module` - module serial number 1, 1D(9600) 2, RFID(115200) 3, UHF(115200) 4, Finger(57600)
      Returns:
        成功true，失败false

    - #### ioctl_gpio

          public void ioctl_gpio(int gpio,
                                 boolean isHigh)

    - #### powerOff

          public boolean powerOff(int module)

      模块下电，仅下电不关串口
      module power off, power off only
      Parameters:
        `module` - 模块编号 1、1D（9600） 2、RFID（115200） 3、UHF（115200） 4、Finger（57600）
        `module` - module serial number 1, 1D(9600) 2, RFID(115200) 3, UHF(115200) 4, Finger(57600)
      Returns:
        成功true，失败false

    - #### uartSwitch2

          @Deprecated
          public boolean uartSwitch2(int module)

      Deprecated.

    - #### init

          public boolean init(int module)

      初始化模块
      Initialize module
      Parameters:
        `module` - 模块编号 模块编号 1、1D（9600） 2、RFID（115200） 3、UHF（115200） 4、Finger（57600）5、OBD
        `module` - module serial number 1, 1D(9600) 2, RFID(115200) 3, UHF(115200) 4, Finger(57600) 5,OBD
      Returns:
        成功true，失败false

    - #### init

          public boolean init(int module,
                              int baudrate)

      初始化模块
      Parameters:
        `module` - 模块编号 模块编号 1、1D（9600） 2、RFID（115200） 3、UHF（115200） 4、Finger（57600）
        `baudrate` - 自定义波特率
      Returns:
        成功true，失败false

    - #### free

          public boolean free()

      释放模块
      Release module
      Returns:
        成功true，失败false

    - #### send

          public boolean send(byte[] data)

      发送数据
      Send data
      Parameters:
        `data` - 数据
        data
      Returns:
        true成功，false失败

    - #### receive

          public byte[] receive()

      接收数据
      Receive data
      Returns:
        数据
        data

    - #### sendAndReceive

          public int sendAndReceive(byte[] sendData,
                                    byte[] outData)

      收发数据
      Parameters:
        `sendData` - 发送的数据
        `outData` - 接收的数据
      Returns:
        返回接收到的数据长度 (返回-1表示发送失败)