ZNWC_T_L_H_v1.0

    ZNWC_T_L_H SDK 使用说明

一、集成到项目

1、将ZNWC_T_L_H_v1.0.aar拷贝到libs

2、Gradle Dependency

dependencies {

    ......

    implementation files('libs/ZNWC_T_L_H-release.aar')

    implementation'com.aill:AndroidSerialPort:1.0.8'

}

3、权限

uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE"

uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE"


二、函数调用

1、简单的初始化

import com.yhjy.znwc_t_l_h.Manager;

//初始化

manager = Manager.getInstance();

manager.init(getApplicationContext());

2、获取设备所有串口

    String[] allDevicesPath =manager.getAllDevicesPath();

3、连接串口

    参数1:串口路径

    参数2:波特率

    返回: true 已连接 false 未连接

    manager.openSerial("/dev/ttymxc4",9600); //微超系统

    manager.openSerial2("/dev/ttymxc2");//电子价签

4、开始出货

    参数1:货道号

    参数2:加热时间

    参数3:出货回调

    manager.startShipment(huodao,1,new OpenDoorCall() {

        @Override

        public void succeed() {//成功取货到微波炉

        }

         @Override

        public void hotFinish() {//加热完成

        }

        @Override

        public void finish() {//出货完成

        }

        @Override

        public void failure(String msg) {//出货失败  msg:失败信息

        }

    });

5、出货流程以外的指令通信回调

    manager.setSerialCall(new CommandCall() {

        @Override

        public void Call(HardwareResultsBean hardwareResultsBean) {

            switch (hardwareResultsBean.mCommands){

                case Commands.OPS://打开,关闭维护

                    if (hardwareResultsBean.commonResultBean.result ==1){//1 成功 0 失败}

                    break;

                case Commands.OPEN_DOOR://开门

                    if (hardwareResultsBean.commonResultBean.result ==1){//1 成功 0 失败}

                    break;

                case Commands.TEMP_GET://当前温度

                    "当前温度:" + Long.parseLong(hardwareResultsBean.commonTempBean.temp.substring(0,2),16)

                    break;

                case Commands.AISLE_TIER://货道结构取得

                    String aisleTier = hardwareResultsBean.commonAisleTierBean.aisleTier;//货道数据

                    break;

                case Commands.GET_HD_COOR://当前货斗坐标查询指令

                        int X = (int) Long.parseLong(hardwareResultsBean.commonResult.result.substring(0,4),16);

                        int Y = (int) Long.parseLong(hardwareResultsBean.commonResult.result.substring(4,8),16);

                        break;

                case Commands.SET_HDPZ_COOR://货道坐标设置指令

                        if (hardwareResultsBean.commonResult.result.equals("01")){

                            ToastUtils.show("启动设置");

                        }else{

                            ToastUtils.show("未启动设置");

                        }

                        break;

                case Commands.GET_HDPZ_RESULT://货道坐标设置结果查询指令

                        if (hardwareResultsBean.commonResult.result.equals("01")){

                               //设置成功

                        }else if(hardwareResultsBean.commonResult.result.equals("02")){

                             //设置进行中

                        }else if(hardwareResultsBean.commonResult.result.equals("00")){

                             //设置失败

                        }

                        break;

                case Commands.GET_HDPZ://货道配置信息查询指令

                    //每层的类型 01履带

                    String hd_type = hardwareResultsBean.hdConfigResults.hd_type;

                    //每层的货道数量

                    String hd_size = hardwareResultsBean.hdConfigResults.hd_size;

                    //所有的Y坐标

                    String y_coor = hardwareResultsBean.hdConfigResults.y_coor;

                    //所有的X坐标

                    String x_coor = hardwareResultsBean.hdConfigResults.x_coor;

                    int[] typeArr =new int[hd_type.length()/2];

                    int[] YXsizeArr =new int[hd_size.length()/2];

                    int[] YArr =new int[y_coor.length()/4];

                    int[] XArr =new int[x_coor.length()/4];

                    int index =0;

                    for (int i =0;i < hd_type.length();i+=2){

                        typeArr[index] = (int) Long.parseLong(hd_type.substring(i, i +2),16);

                        index++;

                    }

                    index =0;

                    for (int i =0;i < hd_size.length();i+=2){

                        YXsizeArr[index] = (int) Long.parseLong(hd_size.substring(i, i +2),16);

                        index++;

                    }

                    index =0;

                    for (int i =0;i < y_coor.length();i+=4){

                        YArr[index] = (int) Long.parseLong(y_coor.substring(i, i +4),16);

                        index++;

                    }

                    index =0;

                    for (int i =0;i < x_coor.length();i+=4){

                        XArr[index] = (int) Long.parseLong(x_coor.substring(i, i +4),16);

                        index++;

                    }

                    etDateBeanList.clear();

                    index =0;

                    for (int i =0;i < typeArr.length;i++){

                        EtDateBean etDateBean =new EtDateBean();

                        etDateBean.layer_Type = typeArr[i];

                        etDateBean.layer_Y = YArr[i];

                        for (int j =0;j < YXsizeArr[i];j++){

                            etDateBean.layer_X_list.add(XArr[index]);

                            index++;

                        }

                        etDateBeanList.add(etDateBean);

                    }

                    for (int i =0;i < etDateBeanList.size();i++){

                        et_List.get(i).layer_Type.setText(etDateBeanList.get(i).layer_Type+"");

                        et_List.get(i).layer_Y.setText(etDateBeanList.get(i).layer_Y+"");

                        for(int j =0;j < etDateBeanList.get(i).layer_X_list.size();j++){

                            et_List.get(i).layer_X_list.get(j).setText(etDateBeanList.get(i).layer_X_list.get(j)+"");

                        }

                    }

                    break;

                case Commands.SET_CALL:

                    if (hardwareResultsBean.commonResultBean.result ==1){

                        ToastUtils.show("执行成功");

                    }else{

                        ToastUtils.show("执行失败");

                    }

                    break;

                    }

                }

        });

6、打开维护

manager.startOps()

7、关闭维护

manager.stopOps()

8、关闭使能

manager.stopCALL()

9、货道结构取得

manager.aisle_tier()

10、系统状态取得

manager.getSystemState()

11、温度取得

manager.getTemp()

12、开门

manager.openDoor()

13、整机传感器状态取得

manager.SENSOR_STATE_GET()

14、故障码取得

manager.getBreakdown()

15、当前货斗坐标查询指令

manager.GET_HD_COOR()

16、货道坐标设置结果查询指令

manager.GET_HDPZ_RESULT()

17、货道配置信息查询指令

manager.GET_HDPZ()

18、货道坐标设置指令

manager.SET_HDPZ_COOR(int[] typeArr,int[] YArr,int[] YXsizeArr,int[] XArr)

19、加热

manager.HOT_zs(int size)//参数:加热时间:秒

20、设置电子价签显示

manager.Digital_show_CMD(String address, String data)//参数1:价签地址,参数2:显示内容

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 221,820评论 6 515
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 94,648评论 3 399
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 168,324评论 0 360
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 59,714评论 1 297
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 68,724评论 6 397
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 52,328评论 1 310
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 40,897评论 3 421
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 39,804评论 0 276
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 46,345评论 1 318
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 38,431评论 3 340
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 40,561评论 1 352
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 36,238评论 5 350
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 41,928评论 3 334
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 32,417评论 0 24
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 33,528评论 1 272
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 48,983评论 3 376
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 45,573评论 2 359

推荐阅读更多精彩内容