硬件接口API 1. 补光灯控制开关 public static void ctrlLedSwitch(int gpioCode, boolean open) 功能   控制白色补光灯的打开与关闭,这接口只能在新版本的固件上才能使 用 参数   gpioCode : {@link LED_RED,LED_GREEN,LED_WHITE}       open : true为打开,false为关闭 实例代码 : //红灯 HardwareCtrl.ctrlLedSwitch( HardwareCtrl.LED_RED, true); //绿灯 HardwareCtrl.ctrlLedSwitch( HardwareCtrl.LED_GREEN, true); //白灯 HardwareCtrl.ctrlLedSwitch( HardwareCtrl.LED_WHITE, true); 如果是旧版固件,则请使用setLedSwitch(int gpioCode, boolean open)接口。 public static void setLedSwitch(int gpioCode, boolean open) 功能   控制补光灯的打开与关闭,这接口只能在旧版本的固件上才能使用 参数   gpioCode : {@link LED_RED,LED_GREEN,LED_WHITE}       open : true为打开,false为关闭 实例代码 : //旧的固件用setLedSwitch接口 //红灯 HardwareCtrl.setLedSwitch( HardwareCtrl.LED_RED, true); //绿灯 HardwareCtrl.setLedSwitch( HardwareCtrl.LED_GREEN, true); //白灯 HardwareCtrl.setLedSwitch( HardwareCtrl.LED_WHITE, true); 2. 控制屏幕亮度 public static void setBrightness(int value) 功能   调节屏幕亮度 参数   value : 有效值 0~255 实例代码 : HardwareCtrl.setBrightness(255); 3. 背光控制开关 public static void ctrlBlPower(boolean open) 功能   背光控制开关 参数   open : true为打开,false为关闭 实例代码 : HardwareCtrl.ctrlBlPower(true); 4. 屏幕触摸开关 public static void ctrlTp(boolean open) 功能   屏幕触摸开关 参数   open : true为打开,false为关上 实例代码 : HardwareCtrl.ctrlTp(true); 5. 485信号控制 打开RS485 public static void openRs485Signal(File device, int baudrate, SerialPort.Callback callback) 功能   打卡RS485 参数   device : 串口文件       baudrate : 波特率       callback : 信息回调接口 public static void sendRs485Signal(String msg) 功能   发送RS485信号 参数   device : 串口文件       baudrate : 波特率       msg : 信号 ( 十六进制信号,比如"1E60010000002F")       callback : 信息回调接口 public statis void closeRs485Signal() 功能   关闭RS485 参数   无 实例代码 : //输入相关内容 /** 比如: 1.A向刷卡开闸,上位机需发送十六进制数据: 发送:0x1E 0x60 0x01 0x00 0x00 0x00 0x2F 闸机返回码分以下几种: a),人已经通过闸机 返回: 0x1E 0x61 0x01 0x00 0x00 0x00 0x2F b)刷卡后超时未通过闸机, 闸机自动关门,取消此次通行 返回: 0x1E 0x44 0x01 0x00 0x00 0x00 0x2F c)刷卡后有人反向过闸机, 闸机自动关门,取消此次通行 返回: 0x1E 0x44 0x01 0x00 0x00 0x00 0x2F */ //打开RS485 HardwareCtrl.openRs485Signal(new File("dev/ttyS4"), 9600, new SerialPort.Callback() { @Override public void onDataReceived(byte[] buffer, int size) { String result = StringUtils.bytesToHexString(buffer, size); Log.e("lkdong","result = "+result); } }); 发送信号 HardwareCtrl.sendRs485Signal("1E60010000002F"); //关闭RS485 HardwareCtrl.closeRs485Signal(); 6. 韦根信号控制 public static void sendWiegandSignal(String msg) 功能   韦根信号控制 参数   msg : 比如卡号等等 实例代码 : //输入相关内容, 比如卡号等等 HardwareCtrl.sendWiegandSignal("1233456789"); 7. 普通GPIO控制 D0 信号 public static void sendSignalD0(boolean up) 功能   普通GPIO D0信号控制 参数   up : false为拉低,true为拉高 实例代码 : HardwareCtrl.sendSignalD0(true); D1 信号 public static void sendSignalD1(boolean up) 功能   普通GPIO D1控制 参数   up : false为拉低,true为拉高 实例代码 : HardwareCtrl.sendSignalD1(true); 8. 关机 public static void shutdown() 功能   关机 参数   无 实例代码 : HardwareCtrl.shutdown(); 9. 重启设备 public static void reboot() 功能   重启设备 参数   无 实例代码 : HardwareCtrl.reboot(); 10. 看门狗 public static void setWdt(int value) 功能   系统死机或者长时间没有响应,重启设备 参数   value : 有效值:0~3       0对应是0.46s       1对应是2.56s 2对应是10.24s       3对应是40.96s 实例代码 : HardwareCtrl.ctrlWdt(1); 11. 获取设备唯一ID public static String getFireflyCid() 功能   设备唯一id 参数   无 实例代码 : String cid = HardwareCtrl.getFireflyCid(); 12. 其他命令使用 public static void execSuCmd(String command) 功能   其他shell命令的使用 参数   command:需要执行的命令 实例代码 : //比如同步文件等等 HardwareCtrl.execSuCmd("sync"); 13. 其他GPIO使用 public static int gpioParse(String gpioStr) 功能   将gpio名字转换成对应的gpio编码 参数   gpioStr:gpio名字,比如GPIO2_A2 public static void ctrlGpio(int gpio, String direction, int value) 功能   控制GPIO 参数   gpio:gpio编码,比如152       direction :       value : 设置 GPIO值 实例代码 : HardwareCtrl.ctrlGpio(HardwareCtrl.gpioParse("GPIO2_A2"), "out", 1);