| | |
| | | private boolean thread_run_flag = true;
|
| | | private Gson gson = new Gson();
|
| | | private ServiceModel remodel = new ServiceModel();
|
| | | byte[] rx_buf_t = new byte[1024];
|
| | |
|
| | | private CommSockClientThread(){
|
| | | this.concentratorState = new Concentrator_State();
|
| | |
| | | //
|
| | | remodel.data = concentratorParam;
|
| | | }
|
| | | else if(remodel.cmd >= 0x201B && remodel.cmd <= 0x239E)
|
| | | else if(remodel.cmd >= Concentrator_ComBase.CMD_MODEBUS_BATTMONVOL_INDEX && remodel.cmd <= 0x239E)
|
| | | {
|
| | | remodel.data = concentratorState;
|
| | | }
|
| | |
| | | InputStream in = this.socket.getInputStream();
|
| | | OutputStream out = this.socket.getOutputStream();
|
| | | //----------------- clear rx buff for tcp resend packet ----------------//
|
| | | byte[] rx_buf_t = new byte[1024];
|
| | |
|
| | |
|
| | | //----------------------------------------------------------------------//
|
| | | bytebuffer_for_socket_RX.order(ByteOrder.BIG_ENDIAN);
|
| | | bytebuffer_for_socket_RX.clear();
|
| | | //--------------------- socket write -----------------------------------//
|
| | | //--------------------- socket write -----------------------------------//
|
| | | boolean aes_en = true;
|
| | | byte[] plain_tx_t = datasource;
|
| | | byte[] cipher_tx_t = new byte[plain_tx_t.length];
|
| | | Date d1 = new Date();
|
| | | //=====================================================================//
|
| | | /*
|
| | | for(int n=0; n<3; n++) {
|
| | |
| | | }
|
| | | //=====================================================================//
|
| | | */
|
| | | Log.e(TAG, "发送数据:"+ComFn.bytesToHexString(plain_tx_t,plain_tx_t.length));
|
| | | //Log.e(TAG, "发送数据:"+ComFn.bytesToHexString(plain_tx_t,plain_tx_t.length));
|
| | | int rx_read_time_out = 0;
|
| | | //int rx_len = 0;
|
| | | out.write(plain_tx_t);
|
| | |
| | |
|
| | | bytebuffer_for_socket_RX.flip();
|
| | |
|
| | | // Date d2 = new Date();
|
| | | // long comm_tms = (d2.getTime() - d1.getTime());
|
| | | // if(comm_tms < 200) {
|
| | | // Thread.sleep(200 - comm_tms);
|
| | | // }
|
| | | /*
|
| | | System.out.println(this.getName()
|
| | | + " dev_id: " + m_StatAndParam.dev_id
|
| | |
| | | ){
|
| | | Concentrator_Cmd Ccmd = new Concentrator_Cmd();
|
| | | Ccmd.makeCmd(model.battindex,model.cmd_type,model.cmd);
|
| | | ByteBuffer buffer = null;
|
| | | ByteBuffer buffer = ByteBuffer.allocate(0);
|
| | | if(Concentrator_ComBase.CMD_MODEBUS_SYSTEMPARAM_INDEX == model.cmd){
|
| | | //读写汇集器参数
|
| | | if(Concentrator_ComBase.CMD_MODEBUS_READCMD == model.cmd_type){
|
| | |
| | | //读取系统状态
|
| | | buffer = Ccmd.getReadByteBuffer(Concentrator_State.SYS_REG_COUNT);
|
| | | }
|
| | | if(Concentrator_ComBase.CMD_MODEBUS_BATTMONVOL_INDEX == model.cmd ||
|
| | | Concentrator_ComBase.CMD_MODEBUS_BATTMONTMP_INDEX == model.cmd ||
|
| | | Concentrator_ComBase.CMD_MODEBUS_BATTMONRES_INDEX == model.cmd ){
|
| | | if(Concentrator_ComBase.CMD_MODEBUS_BATTMONVOL_INDEX <= model.cmd &&model.cmd < 0x0239E ){
|
| | | //读取单体数据(电压/温度/内阻)
|
| | | buffer = Ccmd.getReadByteBuffer(Concentrator_State.MON_REG_COUNT);
|
| | | }
|