@Override public void handleMessage(Message msg) { if (!EMWifi.sIsInitialed) { showDialog(DIALOG_WIFI_ERROR); return; } if (HANDLER_EVENT_RX == msg.what) { long[] i4Rx = new long[2]; long i4RxCntOk = -1; long i4RxCntFcsErr = -1; long i4RxPer = -1; Xlog.i(TAG, "The Handle event is : HANDLER_EVENT_RX"); try { i4RxPer = Long.parseLong(mTvPer.getText().toString()); } catch (NumberFormatException e) { Xlog.d(TAG, "Long.parseLong NumberFormatException: " + e.getMessage()); } EMWifi.getPacketRxStatus(i4Rx, 2); Xlog.d(TAG, "after rx test: rx ok = " + String.valueOf(i4Rx[0])); Xlog.d(TAG, "after rx test: fcs error = " + String.valueOf(i4Rx[1])); i4RxCntOk = i4Rx[0] /* - i4Init[0] */; i4RxCntFcsErr = i4Rx[1] /* - i4Init[1] */; if (i4RxCntFcsErr + i4RxCntOk != 0) { i4RxPer = i4RxCntFcsErr * PERCENT / (i4RxCntFcsErr + i4RxCntOk); } mTvFcs.setText(String.valueOf(i4RxCntFcsErr)); mTvRx.setText(String.valueOf(i4RxCntOk)); mTvPer.setText(String.valueOf(i4RxPer)); } mHandler.sendEmptyMessageDelayed(HANDLER_EVENT_RX, HANDLER_RX_DELAY_TIME); }
/** Invoked when "Go" button clicked */ private void onClickBtnRxGo() { int i = -1; int len = 2; setViewEnabled(false); EMWifi.getPacketRxStatus(mInitData, 2); Xlog.d(TAG, "before rx test: rx ok = " + String.valueOf(mInitData[0])); Xlog.d(TAG, "before rx test: fcs error = " + String.valueOf(mInitData[1])); // if (mALCCheck.isChecked() == false) { i = 0; // } else { // i = 1; // } // temperature conpensation EMWifi.setATParam(ATPARAM_INDEX_TEMP_COMPENSATION, i); // Bandwidth setting if (BW_INDX_ADVANCED == mBandwidthIndex) { Xlog.d( TAG, "mChannelBandwidth:" + mChannelBandwidth + " mDataBandwidth:" + mDataBandwidth + " mPrimarySetting:" + mPrimarySetting); EMWifi.setATParam(ATPARAM_INDEX_CHANNEL_BANDWIDTH, mChannelBandwidth); EMWifi.setATParam(ATPARAM_INDEX_DATA_BANDWIDTH, mDataBandwidth); EMWifi.setATParam(ATPARAM_INDEX_PRIMARY_SETTING, mPrimarySetting); } else { EMWifi.setATParam(ATPARAM_INDEX_BANDWIDTH, mBandwidthIndex); } // start Rx EMWifi.setATParam(ATPARAM_INDEX_COMMAND, 2); mHandler.sendEmptyMessage(HANDLER_EVENT_RX); mTvFcs.setText(TEXT_ZERO); mTvRx.setText(TEXT_ZERO); mTvPer.setText(TEXT_ZERO); }