123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137 |
- package kr.co.icontrols.v40ioctl;
- import android.util.Log;
- import com.util.LogUtil;
- import kr.co.icontrols.wallpadsupport.Version;
- public class V40IOInterface2 {
- private static final String TAG = "V40IOInterface2";
- public native int WpdInterfaceOpen();
- public native int WpdInterfaceClose();
- public native int WpdInterfaceControl(int cmd, int arg);
- public native void SetMacAddr(String mac);
- public native void IpAddr(String ip);
- public native void GatewayIp(String gw);
- public native void NetMask(String mask);
- public native void NetAll(String ip, String mask, String gw, String mac);
- public native void LiveUpdate();
- public native void UsbUpdate();
- public native int LcdWakeUp();
- public native void Reboot(int sec);
- public native void NetDns1(String dns);
- public native void NetDns2(String dns);
- public native int sensorread();
- static {
- System.loadLibrary("wpd_v40interface2-jni");
- }
- public void setV40Reboot(int sec) {
- Log.i(TAG, "V40 Device will reboot : " +sec + " second !!!");
- Reboot(sec);
- }
- /*
- #define TYPE_GPIO_CMD (0xFF << 8)
- #define TYPE_GPIO2_CMD (0xFE << 8)
- #define IOCTL_LEDNEMR_ONOFF (TYPE_GPIO_CMD|0x02) //LED on/off
- #define IOCTL_EMR_TYPE (TYPE_GPIOS_CMD|0x02) //비상기능 타입
- #define IOCTL_EMR_OFF (TYPE_GPIOS_CMD|0x03) //비상종료
- #define IOCTL_PROX_THR (TYPE_GPIOS_CMD|0x04) //근접센서 감도.
- */
- public static final int TYPE_GPIO_CMD = (0xFF << 8);
- public static final int TYPE_GPIO2_CMD = (0xFE << 8);
- public static final int IOCTL_LEDNEMR_ONOFF = (TYPE_GPIO_CMD | 0x02);
- public static final int IOCTL_EMR_TYPE = (TYPE_GPIO2_CMD | 0x02);
- public static final int IOCTL_EMR_OFF = (TYPE_GPIO2_CMD | 0x03);
- public static final int IOCTL_PROX_THR = (TYPE_GPIO2_CMD | 0x04);
- public void Ctrl_CloseSensor(int value) {
- if (!(value >= 0 && value <= 15)) {
- Log.d(TAG, "[Ctrl_CloseSensor] Value Range Error : " + value);
- return;
- }
- Log.d(TAG, "[Ctrl_CloseSensor] Change Close Value : " + value);
- WpdInterfaceOpen();
- WpdInterfaceControl(IOCTL_PROX_THR, value);
- WpdInterfaceClose();
- }
- public void Ctrl_LCD_WakeUp() {
- Log.d(TAG, "[Ctrl_LCD_WakeUp] LCD Wake Up RUN");
- WpdInterfaceOpen();
- LcdWakeUp();
- WpdInterfaceClose();
- }
- public void Emergency_Type_Set() {
- WpdInterfaceOpen();
- if (Version.getModelType() == Version.MODEL_TYPE.IHN_D101 || Version.getModelType() == Version.MODEL_TYPE.IHN_D101_I
- || Version.getModelType() == Version.MODEL_TYPE.IHN_D101K || Version.getModelType() == Version.MODEL_TYPE.IHN_D101K_I
- || Version.getModelType() == Version.MODEL_TYPE.IHN_D101_I_OCF) {
- Log.d(TAG, "[Emergency_Type_Set] V40 - D101 mode");
- WpdInterfaceControl(IOCTL_EMR_TYPE, 0);
- }
- else {
- Log.d(TAG, "[Emergency_Type_Set] A20 - Previous mode");
- WpdInterfaceControl(IOCTL_EMR_TYPE, 1);
- }
- WpdInterfaceClose();
- }
- public void Emergency_LED_On() {
- Log.d(TAG, "[Emergency_LED_On] Emergency LED On&Off START");
- WpdInterfaceOpen();
- WpdInterfaceControl(IOCTL_LEDNEMR_ONOFF, 1);
- WpdInterfaceClose();
- }
- public void Emergency_LED_Off() {
- Log.d(TAG, "[Emergency_LED_On] Emergency LED On&Off END");
- WpdInterfaceOpen();
- WpdInterfaceControl(IOCTL_LEDNEMR_ONOFF, 0);
- if (Version.getModelType() != Version.MODEL_TYPE.IHN_D101 && Version.getModelType() != Version.MODEL_TYPE.IHN_D101_I
- && Version.getModelType() != Version.MODEL_TYPE.IHN_D101K && Version.getModelType() != Version.MODEL_TYPE.IHN_D101K_I
- && Version.getModelType() != Version.MODEL_TYPE.IHN_D101_I_OCF) {
- WpdInterfaceControl(IOCTL_EMR_OFF, 0);
- }
- WpdInterfaceClose();
- }
- public void Emergency_LED_blink() {
- }
- public int DoControl(int cmd, int arg) {
- WpdInterfaceOpen();
- int ctr = WpdInterfaceControl( cmd, arg);
- WpdInterfaceClose();
- return ctr;
- }
- public void DoorLockControl(boolean ctr) {
- try {
- if (WpdInterfaceOpen() >= 0) {
- WpdInterfaceControl(0xFF09, (ctr)?1:0);
- WpdInterfaceClose();
- }
- } catch (RuntimeException re) {
- LogUtil.errorLogInfo("", TAG, re);
- } catch (Exception e) {
- //e.printStackTrace();
- LogUtil.errorLogInfo("", TAG, e);
- }
- }
- }
|