form_RFTool.h
上传用户:gelin96
上传日期:2017-01-08
资源大小:20993k
文件大小:50k
源码类别:

MTK

开发平台:

C++ Builder

  1. /*****************************************************************************
  2. *  Copyright Statement:
  3. *  --------------------
  4. *  This software is protected by Copyright and the information contained
  5. *  herein is confidential. The software may not be copied and the information
  6. *  contained herein may not be used or disclosed except with the written
  7. *  permission of MediaTek Inc. (C) 2005
  8. *
  9. *  BY OPENING THIS FILE, BUYER HEREBY UNEQUIVOCALLY ACKNOWLEDGES AND AGREES
  10. *  THAT THE SOFTWARE/FIRMWARE AND ITS DOCUMENTATIONS ("MEDIATEK SOFTWARE")
  11. *  RECEIVED FROM MEDIATEK AND/OR ITS REPRESENTATIVES ARE PROVIDED TO BUYER ON
  12. *  AN "AS-IS" BASIS ONLY. MEDIATEK EXPRESSLY DISCLAIMS ANY AND ALL WARRANTIES,
  13. *  EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE IMPLIED WARRANTIES OF
  14. *  MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE OR NONINFRINGEMENT.
  15. *  NEITHER DOES MEDIATEK PROVIDE ANY WARRANTY WHATSOEVER WITH RESPECT TO THE
  16. *  SOFTWARE OF ANY THIRD PARTY WHICH MAY BE USED BY, INCORPORATED IN, OR
  17. *  SUPPLIED WITH THE MEDIATEK SOFTWARE, AND BUYER AGREES TO LOOK ONLY TO SUCH
  18. *  THIRD PARTY FOR ANY WARRANTY CLAIM RELATING THERETO. MEDIATEK SHALL ALSO
  19. *  NOT BE RESPONSIBLE FOR ANY MEDIATEK SOFTWARE RELEASES MADE TO BUYER'S
  20. *  SPECIFICATION OR TO CONFORM TO A PARTICULAR STANDARD OR OPEN FORUM.
  21. *
  22. *  BUYER'S SOLE AND EXCLUSIVE REMEDY AND MEDIATEK'S ENTIRE AND CUMULATIVE
  23. *  LIABILITY WITH RESPECT TO THE MEDIATEK SOFTWARE RELEASED HEREUNDER WILL BE,
  24. *  AT MEDIATEK'S OPTION, TO REVISE OR REPLACE THE MEDIATEK SOFTWARE AT ISSUE,
  25. *  OR REFUND ANY SOFTWARE LICENSE FEES OR SERVICE CHARGE PAID BY BUYER TO
  26. *  MEDIATEK FOR SUCH MEDIATEK SOFTWARE AT ISSUE.
  27. *
  28. *  THE TRANSACTION CONTEMPLATED HEREUNDER SHALL BE CONSTRUED IN ACCORDANCE
  29. *  WITH THE LAWS OF THE STATE OF CALIFORNIA, USA, EXCLUDING ITS CONFLICT OF
  30. *  LAWS PRINCIPLES.  ANY DISPUTES, CONTROVERSIES OR CLAIMS ARISING THEREOF AND
  31. *  RELATED THERETO SHALL BE SETTLED BY ARBITRATION IN SAN FRANCISCO, CA, UNDER
  32. *  THE RULES OF THE INTERNATIONAL CHAMBER OF COMMERCE (ICC).
  33. *
  34. *****************************************************************************/
  35. /*****************************************************************************
  36.  *
  37.  * Filename:
  38.  * ---------
  39.  *   form_RFTool.h
  40.  *
  41.  * Project:
  42.  * --------
  43.  *   Maui META APP
  44.  *
  45.  * Description:
  46.  * ------------
  47.  *   RF tool form header
  48.  *
  49.  * Author:
  50.  * -------
  51.  *  Andy Ueng (mtk00490)
  52.  *
  53.  *============================================================================
  54.  *             HISTORY
  55.  * Below this line, this part is controlled by PVCS VM. DO NOT MODIFY!!
  56.  *------------------------------------------------------------------------------
  57.  * $Revision$
  58.  * $Modtime$
  59.  * $Log$
  60.  * 
  61.  *------------------------------------------------------------------------------
  62.  * Upper this line, this part is controlled by PVCS VM. DO NOT MODIFY!!
  63.  *============================================================================
  64.  ****************************************************************************/
  65. //---------------------------------------------------------------------------
  66. #ifndef _FORM_RFTOOL_H_
  67. #define _FORM_RFTOOL_H_
  68. //---------------------------------------------------------------------------
  69. #include <Classes.hpp>
  70. #include <Controls.hpp>
  71. #include <StdCtrls.hpp>
  72. #include <Forms.hpp>
  73. #include <Buttons.hpp>
  74. #include <ComCtrls.hpp>
  75. #include <Grids.hpp>
  76. #include <ExtCtrls.hpp>
  77. #include <Dialogs.hpp>
  78. #include <ActnList.hpp>
  79. #ifndef  _RF_COMMON_H_
  80. #include "rf_common.h"
  81. #endif
  82. #ifndef _CRYSTAL_AFC_H_
  83. #include "crystal_afc.h"
  84. #endif
  85. #ifndef  _META_FACTORY_TYPE_H_
  86. #include "META_factory_type.h"
  87. #endif
  88. #ifndef _META_FACTORY_ADC_TYPE_H_
  89. #include "META_factory_ADC_type.h"
  90. #endif
  91. #ifndef _RF_MULTISLOTTX_H_
  92. #include "rf_MultiSlotTx.h"
  93. #endif
  94. #ifndef  _RF_PM_H_
  95. #include "rf_pm.h"
  96. #endif
  97. #ifndef  _RF_CR_H_
  98. #include "rf_cr.h"
  99. #endif
  100. #ifndef  _RF_CT_COMMON_H_
  101. #include "rf_ct_common.h"
  102. #endif
  103. #ifndef  _RF_CT_H
  104. #include "rf_ct.h"
  105. #endif
  106. #ifndef  _RF_TX_H_
  107. #include "rf_tx.h"
  108. #endif
  109. #ifndef  _RF_AFC_H_
  110. #include "rf_afc.h"
  111. #endif
  112. #ifndef  _RF_AGC_H_
  113. #include "rf_agc.h"
  114. #endif
  115. #ifndef  _RF_APC_H_
  116. #include "rf_apc.h"
  117. #endif
  118. #ifndef  _RF_TXIQ_H_
  119. #include "rf_txiq.h"
  120. #endif
  121. #ifndef  _RF_STOP_H_
  122. #include "rf_stop.h"
  123. #endif
  124. #ifndef  _RF_APC_8PSK_H_
  125. #include "rf_apc_8psk.h"
  126. #endif
  127. #ifndef  _RF_ID_H_
  128. #include "rf_id.h"
  129. #endif
  130. #ifndef  _BB_ADC_H_
  131. #include "bb_adc.h"
  132. #endif
  133. #ifndef  _BB_REG_H_
  134. #include "bb_reg.h"
  135. #endif
  136. #ifndef _RF_PMCH_SWEEP_H_
  137. #include "rf_pmch_sweep.h"
  138. #endif
  139. #ifndef _RF_RXL_SWEEP_H_
  140. #include "rf_rxl_sweep.h"
  141. #endif
  142. #ifndef _RF_SN_SWEEP_H_
  143. #include "rf_sn_sweep.h"
  144. #endif
  145. // AFC
  146. #ifndef  _RF_CONTSINE_THRD_H_
  147. #include "rf_contsine_thrd.h"
  148. #endif
  149. // TX frequency error
  150. #ifndef _META_CRYSTAL_CFG_H_
  151. #include "meta_crystal_cfg.h"
  152. #endif
  153. // crystal
  154. #ifndef _CRYSTAL_AFC_SWEEP_H_
  155. #include "crystal_afc_sweep.h"
  156. #endif
  157. #ifndef   _UART_H_
  158. #include  "uart.h"
  159. #endif
  160. #ifndef _RF_TXPCS_SWEEP_H_
  161. #include "rf_txpcs_sweep.h"
  162. #endif
  163. // offset IQ sweep
  164. #ifndef _META_RF_CFG_H_
  165. #include "META_rf_cfg.h"
  166. #endif
  167. #ifndef _RF_OFFSET_IQ_SWEEP_INIT_AGE8960_H_
  168. #include "rf_offset_iq_Sweep_init_Age8960.h"
  169. #endif
  170. // TX IQ
  171. #ifndef  _RF_TXIQ_RUN_H_
  172. #include "rf_txiq_run.h"
  173. #endif
  174. // multislot TX
  175. #ifndef  _GNRL_MSCAP_H_
  176. #include "gnrl_mscap.h"
  177. #endif
  178. #ifndef  _MAN_HANDLE_H_
  179. #include "man_handle.h"
  180. #endif
  181. //---------------------------------------------------------------------------
  182. class TfrmRFTool : public TForm
  183. {
  184. __published: // IDE-managed Components
  185.    TBitBtn *btnAFCStart;
  186.    TBitBtn *btnCRStart;
  187.    TBitBtn *btnCTStart;
  188.    TBitBtn *btnGSStart;
  189.    TBitBtn *btnPMStart;
  190.    TBitBtn *btnTXStart;
  191.    TButton *btnAfcDownloadToFlash;
  192.    TButton *btnGSPathLossSetting;
  193.    TButton *btnAfcLoadFromFile;
  194.    TButton *btnPMPathLossSetting;
  195.    TButton *btnAfcSaveToFile;
  196.    TButton *btnTXProfileSetting;
  197.    TButton *btnAfcUploadFromFlash;
  198.    TCheckBox *chkCRBurstMode;
  199.    TComboBox *cbxAFCBand;
  200.    TComboBox *cbxCRBand;
  201.    TComboBox *cbxCTBand;
  202.    TComboBox *cbxGSBand;
  203.    TComboBox *cbxGSPerFrame;
  204.    TComboBox *cbxPMBand;
  205.    TComboBox *cbxPMPerFrame;
  206.    TComboBox *cbxTXBand;
  207.    TComboBox *cbxTXTsc;
  208.    TEdit *edtAFCAfc;
  209.    TEdit *edtAFCArfcn;
  210.    TEdit *edtAFCGain;
  211.    TEdit *edtCRArfcn;
  212.    TEdit *edtCRGain;
  213.    TEdit *edtCTArfcn;
  214.    TEdit *edtGSArfcn;
  215.    TEdit *edtGSCount;
  216.    TEdit *edtGSGainMax;
  217.    TEdit *edtGSGainMin;
  218.    TEdit *edtGSGainStep;
  219.    TEdit *edtInitAfcDac;
  220.    TEdit *edtPMArfcn;
  221.    TEdit *edtPMCount;
  222.    TEdit *edtPMGain;
  223.    TEdit *edtSlope;
  224.    TEdit *edtTXAfc;
  225.    TEdit *edtTXArfcn;
  226.    TEdit *edtTXPcl;
  227.    TGroupBox *grpAFC01;
  228.    TGroupBox *grpAFC02;
  229.    TGroupBox *grpCR01;
  230.    TGroupBox *grpCT01;
  231.    TGroupBox *grpGS01;
  232.    TGroupBox *grpPM01;
  233.    TGroupBox *grpTX01;
  234.    TLabel *lblLabel01;
  235.    TLabel *lblLabel02;
  236.    TLabel *lblLabel03;
  237.    TLabel *lblLabel04;
  238.    TLabel *lblLabel05;
  239.    TLabel *lblLabel06;
  240.    TLabel *lblLabel11;
  241.    TLabel *lblLabel12;
  242.    TLabel *lblLabel13;
  243.    TLabel *lblLabel14;
  244.    TLabel *lblLabel15;
  245.    TLabel *lblLabel16;
  246.    TLabel *lblLabel17;
  247.    TLabel *lblLabel18;
  248.    TLabel *lblLabel19;
  249.    TLabel *lblLabel1A;
  250.    TLabel *lblLabel21;
  251.    TLabel *lblLabel22;
  252.    TLabel *lblLabel23;
  253.    TLabel *lblLabel24;
  254.    TLabel *lblLabel31;
  255.    TLabel *lblLabel32;
  256.    TLabel *lblLabel41;
  257.    TLabel *lblLabel42;
  258.    TLabel *lblLabel43;
  259.    TLabel *lblLabel44;
  260.    TLabel *lblLabel45;
  261.    TLabel *lblLabel51;
  262.    TLabel *lblLabel52;
  263.    TLabel *lblLabel53;
  264.    TLabel *lblLabel54;
  265.    TLabel *lblLabel55;
  266.    TLabel *lblLabel56;
  267.    TLabel *lblLabel57;
  268.    TLabel *lblLabel58;
  269.    TLabel *lblLabel59;
  270.    TLabel *lblLabel60;
  271.    TOpenDialog *OpenDialog;
  272.         TPageControl *pctlToolSel;
  273.    TPanel *pnlAfcSetting;
  274.    TRichEdit *memGSResult;
  275.    TRichEdit *memPMResult;
  276.    TSaveDialog *SaveDialog;
  277.    TStaticText *lblAFCDeviation;
  278.    TStaticText *lblAFCFbDecteted;
  279.    TStaticText *lblAFCFreqErr;
  280.    TTabSheet *tsAFC;
  281.    TTabSheet *tsCR;
  282.    TTabSheet *tsGS;
  283.    TTabSheet *tsPM;
  284.    TTabSheet *tsTX;
  285.         TTabSheet *tsCT;
  286.    TTimer *HintTimer;
  287.    TButton *btnAfcEvaluate;
  288.         TButton *btnSaveToFile;
  289.         TTabSheet *tsAFCSweep;
  290.         TGroupBox *GroupBox1;
  291.         TLabel *Label1;
  292.         TLabel *Label2;
  293.         TLabel *Label3;
  294.         TLabel *Label4;
  295.         TLabel *Label5;
  296.         TEdit *edtARFCN_AFCSweep;
  297.         TEdit *edtMinAFC_AFCSweep;
  298.         TEdit *edtGain_AFCSweep;
  299.         TComboBox *cbxAFCBand_AFCSweep;
  300.         TLabel *Label6;
  301.         TEdit *edtMaxAFC_AFCSweep;
  302.         TLabel *AFC;
  303.         TEdit *edtStepAFC_AFCSweep;
  304.         TRichEdit *RichEditAFCResult_AFCSweep;
  305.         TButton *btnSaveToFile_AFCSweep;
  306.         TTabSheet *tsCrystalAFCControl;
  307.         TGroupBox *GroupBox2;
  308.         TLabel *Label7;
  309.         TComboBox *cbxCrystalAFCBand;
  310.         TLabel *Label8;
  311.         TEdit *edtCrystalAFCARFCN;
  312.         TLabel *Label9;
  313.         TEdit *edtCrystalAFCPCL;
  314.         TLabel *lblCrystalAFC0;
  315.         TEdit *edtCrystalAFC0;
  316.         TLabel *lblCrystalAFC1;
  317.         TEdit *edtCrystalAFC1;
  318.         TEdit *edtCrystalAFC2;
  319.         TLabel *lblCrystalAFC2;
  320.         TLabel *lblCrystalAFC3;
  321.         TEdit *edtCrystalAFC3;
  322.         TLabel *lblCrystalAFC4;
  323.         TEdit *edtCrystalAFC4;
  324.         TEdit *edtCrystalAFC5;
  325.         TLabel *lblCrystalAFC5;
  326.         TEdit *edtCrystalAFC6;
  327.         TLabel *lblCrystalAFC7;
  328.         TEdit *edtCrystalAFC7;
  329.         TLabel *Label19;
  330.         TButton *btnCrystalAFCLoadFromFile;
  331.         TButton *btnCrystalAFCUploadFromFlash;
  332.         TButton *btnCrystalAFCDownloadToFlash;
  333.         TButton *btnCrystalAFCSaveToFile;
  334.         TBitBtn *btnCrystalAFCStart;
  335.         TLabel *lblCrystalAFC6;
  336.         TComboBox *cbxCrystalAFCTSC;
  337.         TLabel *Label29;
  338.         TTabSheet *tsMultiSlotTX;
  339.         TGroupBox *GroupBox4;
  340.         TComboBox *cbxMultiSlotTxBand;
  341.         TLabel *Label38;
  342.         TLabel *Label39;
  343.         TEdit *edtMultiSlotTxARFCN;
  344.         TLabel *Label40;
  345.         TComboBox *cbxMultiSlotTxTSC;
  346.         TLabel *Label42;
  347.         TEdit *edtMultiSlotTxAFC;
  348.         TLabel *Label43;
  349.         TEdit *edtMultiSlotTxTA;
  350.         TGroupBox *GroupBox5;
  351.         TCheckBox *cbTimeSlot0;
  352.         TCheckBox *cbTimeSlot1;
  353.         TCheckBox *cbTimeSlot2;
  354.         TCheckBox *cbTimeSlot3;
  355.         TBitBtn *btnMultiSlotTxStart;
  356.         TButton *btnMSTXInterSlotRampSetting;
  357.         TComboBox *cbxCSTS0;
  358.         TComboBox *cbxCSTS1;
  359.         TComboBox *cbxCSTS2;
  360.         TLabel *Label44;
  361.         TLabel *Label45;
  362.         TLabel *Label46;
  363.         TComboBox *cbxCSTS3;
  364.         TGroupBox *GroupBox6;
  365.         TEdit *edtPCLTS0;
  366.         TEdit *edtPCLTS1;
  367.         TEdit *edtPCLTS2;
  368.         TEdit *edtPCLTS3;
  369.         TLabel *Label47;
  370.         TLabel *Label48;
  371.         TLabel *Label49;
  372.         TLabel *Label41;
  373.         TEdit *edtCrystalAFCCapID;
  374.         TComboBox *cbxCrystalAFCChosen;
  375.         TLabel *lblCrystalAFCChosen;
  376.         TTabSheet *tsTxFreqErr;
  377.         TGroupBox *GroupBox7;
  378.         TComboBox *cbxTXFreqErrBand;
  379.         TLabel *Label20;
  380.         TLabel *Label51;
  381.         TEdit *edtTXFreqErrARFCN;
  382.         TLabel *Label52;
  383.         TComboBox *cbxTXFreqErrTSC;
  384.         TLabel *Label53;
  385.         TEdit *edtTXFreqErrPCL;
  386.         TLabel *Label54;
  387.         TEdit *edtTXFreqErrAFC;
  388.         TLabel *Label55;
  389.         TEdit *edtTXFreqErrPeriod;
  390.         TBitBtn *btnTXFreqErrStart;
  391.         TGroupBox *GroupBox8;
  392.         TRadioButton *rbABTXFreqErr;
  393.         TRadioButton *rbNBTXFreqErr;
  394.         TRadioButton *rbNBAllOneTXFreqErr;
  395.         TTimer *TimerTXFreq;
  396.         TComboBox *cbxTXFreqErrADC;
  397.         TLabel *Label57;
  398.         TStatusBar *sbAFCSweep;
  399.         TStatusBar *sbPM;
  400.         TStatusBar *sbGainSweep;
  401.         TStatusBar *sbCR;
  402.         TStatusBar *sbCT;
  403.         TStatusBar *sbTXIQ;
  404.         TStatusBar *sbAFCControl;
  405.         TStatusBar *sbCAC;
  406.         TStatusBar *sbMultiSlotTx;
  407.         TStatusBar *sbTXFreqError;
  408.         TTabSheet *tsCrystalAfcSweep;
  409.         TLabel *Label81;
  410.         TGroupBox *GroupBox11;
  411.         TLabel *Label82;
  412.         TComboBox *cbCASBand;
  413.         TLabel *Label83;
  414.         TEdit *edtCASARFCN;
  415.         TLabel *Label84;
  416.         TComboBox *cbCASTSC;
  417.         TLabel *Label85;
  418.         TEdit *edtCASPCL;
  419.         TLabel *Label86;
  420.         TEdit *edtCASMinCAPID;
  421.         TEdit *edtCASMaxCAPID;
  422.         TLabel *Label87;
  423.         TLabel *Label88;
  424.         TEdit *edtCASCAPIDStep;
  425.         TLabel *Label89;
  426.         TEdit *edtCASMinAFC;
  427.         TLabel *Label90;
  428.         TEdit *edtCASMaxAFC;
  429.         TLabel *Label91;
  430.         TEdit *edtCASAFCStep;
  431.         TBitBtn *btnCASStart;
  432.         TGroupBox *GroupBox12;
  433.         TRadioButton *rbCASAB;
  434.         TRadioButton *rbCASNB;
  435.         TRadioButton *rbCASNBAllOne;
  436.         TOpenDialog *dlgCASOpenNVRAMDatabase;
  437.         TTimer *CrystalAFCSweepTimer;
  438.         TStaticText *stCASNVRAMDatabaseFile;
  439.         TButton *btnCASNVRAMDatabaseFile;
  440.         TButton *btnCASCFGFile;
  441.         TStaticText *stCASCFGFile;
  442.         TButton *btnCASLogFile;
  443.         TStaticText *stCASLogFile;
  444.         TOpenDialog *dlgCASOpenCFG;
  445.         TSaveDialog *dlgCASSaveLog;
  446.         TButton *btnCACChangeDB;
  447.         TButton *btnAfcChangeDB;
  448.         TStatusBar *sbCAS;
  449.         TBitBtn *btnStart_AFCSweep;
  450.         TButton *btnCTBBTXRunTimeSetting;
  451.         TButton *btnTXIQBBTXRunTimeSetting;
  452.         TButton *btnGUIRampSetting;
  453.         TGroupBox *GroupBox13;
  454.         TRadioButton *rbCASRX;
  455.         TRadioButton *rbCASTX;
  456.         TLabel *Label92;
  457.         TEdit *edtCASTestCount;
  458.         TBitBtn *btnPMStop;
  459.         TBitBtn *btnGSStop;
  460.         TBitBtn *btnCRStop;
  461.         TBitBtn *btnCTStop;
  462.         TBitBtn *btnTXStop;
  463.         TBitBtn *btnAFCStop;
  464.         TBitBtn *btnStop_AFCSwee;
  465.         TBitBtn *btnCrystalAFCStop;
  466.         TBitBtn *btnMultiSlotTxStop;
  467.         TBitBtn *btnTXFreqErrStop;
  468.         TBitBtn *btnCASStop;
  469.         TActionList *actList;
  470.         TAction *ToggleHide;
  471.         TButton *btnTxFreqErrCfgFile;
  472.         TStaticText *stTxFreqErrCFGFile;
  473.         TButton *btnTxFreqErrLogFile;
  474.         TStaticText *stTxFreqErrLogFile;
  475.         TOpenDialog *dlgTxFreqErrOpenCFG;
  476.         TSaveDialog *dlgTxFreqErrSaveLog;
  477.         TGroupBox *GroupBox10;
  478.         TGroupBox *GroupBox14;
  479.         TRadioButton *rbCMU_TXErr;
  480.         TRadioButton *rb8960_TXErr;
  481.         TTabSheet *tsTrimOffIQSweep;
  482.         TGroupBox *GroupBox15;
  483.         TComboBox *m_cbTXIQBand;
  484.         TLabel *Label18;
  485.         TLabel *Label64;
  486.         TEdit *m_edtTXIQARFCN;
  487.         TComboBox *m_cbTXIQTsc;
  488.         TLabel *Label65;
  489.         TLabel *Label66;
  490.         TEdit *m_edtTXIQPCL;
  491.         TLabel *Label67;
  492.         TEdit *m_edtTXIQAFC;
  493.         TGroupBox *GroupBox16;
  494.         TRadioButton *m_rbTXIQAB;
  495.         TRadioButton *m_rbTXIQNB;
  496.         TRadioButton *m_rbTXIQNBAllOne;
  497.         TBitBtn *m_btnTXIQStart;
  498.         TBitBtn *m_btnTXIQStop;
  499.         TLabel *Label68;
  500.         TLabel *label;
  501.         TLabel *Label75;
  502.         TLabel *Label76;
  503.         TLabel *Label77;
  504.         TLabel *Label78;
  505.         TLabel *Label79;
  506.         TLabel *Label80;
  507.         TGroupBox *GroupBox17;
  508.         TRadioButton *m_rbTXIQAge8960;
  509.         TRadioButton *m_rbTXIQCMU200;
  510.         TButton *m_btnTXIQCFGFile;
  511.         TButton *m_btnTXIQLogFile;
  512.         TStaticText *m_stTXIQCFGFile;
  513.         TStaticText *m_stTXIQLogFile;
  514.         TOpenDialog *dlgTrOffOpenNVRAMDatabase;
  515.         TOpenDialog *dlgTrOffOpenCFG;
  516.         TSaveDialog *dlgTrOffSaveLog;
  517.         TLabel *Label93;
  518.         TLabel *Label94;
  519.         TLabel *Label95;
  520.         TLabel *Label96;
  521.         TLabel *Label97;
  522.         TLabel *Label98;
  523.         TLabel *Label99;
  524.         TLabel *Label100;
  525.         TGroupBox *GroupBox18;
  526.         TRadioButton *m_rbTXIQTrimIQ;
  527.         TRadioButton *m_rbTXIQOffsetIQ;
  528.         TStatusBar *m_sbTXIQ;
  529.         TGroupBox *GroupBox19;
  530.         TRadioButton *m_rbTXIQPhaseErr;
  531.         TRadioButton *m_rbTXIQOOS;
  532.         TRadioButton *m_rbTXIQSBS;
  533.         TLabel *Label105;
  534.         TEdit *m_edtTXIQMeasureCount;
  535.         TStaticText *lblHint;
  536.         TLabel *Label106;
  537.         TComboBox *m_cbTXIQMod;
  538.         TGroupBox *gbIP2Reg;
  539.         TEdit *edtPMIP2Reg1;
  540.         TLabel *lblPMIP2Reg1;
  541.         TLabel *lblPMIP2Reg2;
  542.         TEdit *edtPMIP2Reg2;
  543.         TButton *btnPMUploadFromFlash;
  544.         TButton *btnPMDownloadToFlash;
  545.         TButton *btnPMLoadFromFile;
  546.         TButton *btnPMSaveToFile;
  547.         TGroupBox *gbMultiSlotTxBurstType;
  548.         TRadioButton *rbMultiSlotTxNBAll0;
  549.         TRadioButton *rbMultiSlotTxNBAll1;
  550.         TRadioButton *rbMultiSlotTxNB;
  551.         TStaticText *stPMIP2Reg10;
  552.         TLabel *lblPMIP2Reg30;
  553.         TLabel *lblPMIP2Reg10;
  554.         TStaticText *stPMIP2Reg20;
  555.         TButton *btnPMApply;
  556.         TEdit *edtPMIP2Reg3;
  557.         TLabel *lblPMIP2Reg3;
  558.         TEdit *edtPMIP2Reg4;
  559.         TLabel *lblPMIP2Reg4;
  560.         TStaticText *stPMIP2Reg30;
  561.         TLabel *lblPMIP2Reg20;
  562.         TStaticText *stPMIP2Reg40;
  563.         TLabel *lblPMIP2Reg40;
  564.         TButton *btnGetAcode;
  565.         TButton *btnPMNVRAMDB;
  566.         TStaticText *stPMNVRAMDB;
  567.         TOpenDialog *dlgOpenPMNVRAMDB;
  568.         TTabSheet *tsPMCH;
  569.         TGroupBox *GroupBox9;
  570.         TLabel *Label108;
  571.         TLabel *Label109;
  572.         TLabel *Label110;
  573.         TLabel *Label111;
  574.         TLabel *Label112;
  575.         TLabel *Label113;
  576.         TEdit *edtPMCHStartArfcn;
  577.         TEdit *edtPMCHCount;
  578.         TEdit *edtPMCHGain;
  579.         TComboBox *cbPMCHPerFrame;
  580.         TLabel *Label114;
  581.         TEdit *edtPMCHStopArfcn;
  582.         TLabel *Label115;
  583.         TEdit *edtPMCHArfcnStep;
  584.         TLabel *Label116;
  585.         TEdit *edtPMCHDnPwr;
  586.         TLabel *Label117;
  587.         TComboBox *cbxPMCHBand;
  588.         TButton *btnPMCHCFGFile;
  589.         TStaticText *stPMCHCFGFile;
  590.         TOpenDialog *dlgPMCHOpenCFG;
  591.         TButton *btnPMCHLogFile;
  592.         TStaticText *stPMCHLogFile;
  593.         TStatusBar *sbPMCH;
  594.         TSaveDialog *dlgPMCHSaveLog;
  595.         TBitBtn *btnPMCHStart;
  596.         TBitBtn *btnPMCHStop;
  597.         TGroupBox *GroupBox20;
  598.         TRadioButton *rbPMCHAge8960;
  599.         TRadioButton *rbPMCHCMU200;
  600.         TTabSheet *tsTXPCS;
  601.         TStatusBar *sbTXPCS;
  602.         TButton *btnTXPCSCFGFile;
  603.         TStaticText *stTXPCSCFGFile;
  604.         TButton *btnTXPCSLogFile;
  605.         TStaticText *stTXPCSLogFile;
  606.         TGroupBox *GroupBox21;
  607.         TRadioGroup *RadioGroup1;
  608.         TRadioButton *rbTXPCSAb;
  609.         TRadioButton *rbTXPCSNb;
  610.         TRadioButton *rbTXPCSNbOne;
  611.         TBitBtn *btnTXPCSStart;
  612.         TBitBtn *btnTXPCSStop;
  613.         TLabel *Label118;
  614.         TLabel *Label119;
  615.         TEdit *edtTXPCSStartArfcn;
  616.         TComboBox *cbTXPCSTsc;
  617.         TLabel *Label120;
  618.         TLabel *Label121;
  619.         TEdit *edtTXPCSPcl;
  620.         TLabel *Label122;
  621.         TEdit *edtTXPCSAfc;
  622.         TComboBox *cbTXPCSBand;
  623.         TLabel *Label123;
  624.         TEdit *edtTXPCSStopArfcn;
  625.         TOpenDialog *dlgTXPCSOpenCFG;
  626.         TSaveDialog *dlgTXPCSSaveLog;
  627.         TGroupBox *GroupBox22;
  628.         TRadioButton *rbTXPCSAge8960;
  629.         TRadioButton *rbTXPCSCMU200;
  630.         TLabel *Label124;
  631.         TEdit *edtTXPCSArfcnStep;
  632.         TButton *btnPMSetBCcode;
  633.         TLabel *lblPMBcodeI;
  634.         TEdit *edtPMBcodeI;
  635.         TEdit *edtPMBcodeQ;
  636.         TEdit *edtPMCcodeI;
  637.         TEdit *edtPMCcodeQ;
  638.         TLabel *lblPMBcodeQ;
  639.         TLabel *lblPMCcodeI;
  640.         TLabel *lblPMCcodeQ;
  641.         TCheckBox *cbPMAutoCal;
  642.         TLabel *lblPMCalMode;
  643.         TComboBox *cbPMCalibrationMode;
  644.         TButton *btnPMGetBCcode;
  645.         TRadioButton *rbMultiSlotTxPattern;
  646.         TEdit *edtMultiSlotTxPattern;
  647.         TLabel *lblMultiSlotCapability;
  648.         TStaticText *stMultiSlotCapability;
  649.         TButton *btnMSTXEPSKProfileSetting;
  650.         TGroupBox *GroupBox23;
  651.         TRadioButton *rbCTAll0;
  652.         TRadioButton *rbCTAll1;
  653.         TRadioButton *rbCTAlternate;
  654.         TRadioButton *rbCTRandom;
  655.         TRadioButton *rbCTPattern;
  656.         TEdit *edtCTPattern;
  657.         TGroupBox *gbCTModulation;
  658.         TRadioButton *rbCTGMSK;
  659.         TRadioButton *rbCT8PSK;
  660.         TRadioButton *rbMultiSlotTxFixed;
  661.         TRadioButton *rbMultiSlotTxFixedAll0;
  662.         TRadioButton *rbMultiSlotTxFixedAlter;
  663.         TButton *btnMSTXGMSKProfileSetting;
  664.         TButton *btnTXEpskProfileSetting;
  665.         TLabel *lblTXCS;
  666.         TComboBox *cbTXCS;
  667.         TLabel *lblTXModulation;
  668.         TComboBox *cbTXModulation;
  669.         TComboBox *cbTXBurstType;
  670.         TLabel *lblTXBurstType;
  671.         TLabel *lblTXPattern;
  672.         TEdit *edtTXPattern;
  673.         TLabel *lblTXTA;
  674.         TEdit *edtTXTA;
  675.         TButton *btnMSTXBBTXRunTimeSetting;
  676.         TEdit *m_edtTXIQTrimI;
  677.         TEdit *m_edtTXIQTrimQ;
  678.         TEdit *m_edtTXIQOffsetI;
  679.         TEdit *m_edtTXIQOffsetQ;
  680.         TEdit *m_edtTXIQMinTrimI;
  681.         TEdit *m_edtTXIQMaxTrimI;
  682.         TEdit *m_edtTXIQTrimIStep;
  683.         TEdit *m_edtTXIQTrimQStep;
  684.         TEdit *m_edtTXIQMinTrimQ;
  685.         TEdit *m_edtTXIQMaxTrimQ;
  686.         TEdit *m_edtTXIQMinOffsetI;
  687.         TEdit *m_edtTXIQMaxOffsetI;
  688.         TEdit *m_edtTXIQOffsetIStep;
  689.         TEdit *m_edtTXIQOffsetQStep;
  690.         TEdit *m_edtTXIQMinOffsetQ;
  691.         TEdit *m_edtTXIQMaxOffsetQ;
  692.         TLabel *Label70;
  693.         TComboBox *cbCASCOM;
  694.         TLabel *lblCASMinTemp;
  695.         TLabel *lblCASMaxTemp;
  696.         TEdit *edtCASMaxTemp;
  697.         TLabel *lblCASTempStep;
  698.         TEdit *edtCASTempStep;
  699.         TCheckBox *cbCASTempSweep;
  700.         TRadioButton *rbCASAgilent8960;
  701.         TRadioButton *rbCASCMU200;
  702.         TEdit *edtCASMinTemp;
  703.         TEdit *edtAFCCount;
  704.         TEdit *edtTestCount_AFCSweep;
  705.         TCheckBox *cbAFCContSineWave;
  706.         TCheckBox *cbContSineWave_AFCSweep;
  707.         TEdit *m_edtCrystalAFCAFC;
  708.         TLabel *m_lblCrystalAFCAFC;
  709.         TGroupBox *gbCrystalAFCOutput;
  710.         TLabel *Label21;
  711.         TLabel *Label22;
  712.         TLabel *Label23;
  713.         TLabel *Label24;
  714.         TLabel *Label25;
  715.         TLabel *Label26;
  716.         TLabel *Label27;
  717.         TLabel *Label28;
  718.         TLabel *Label30;
  719.         TLabel *Label31;
  720.         TLabel *Label32;
  721.         TLabel *Label33;
  722.         TLabel *Label34;
  723.         TLabel *Label35;
  724.         TLabel *Label36;
  725.         TLabel *Label37;
  726.         TStaticText *StaticText1;
  727.         TStaticText *StaticText2;
  728.         TStaticText *StaticText3;
  729.         TStaticText *StaticText4;
  730.         TStaticText *StaticText5;
  731.         TStaticText *StaticText6;
  732.         TStaticText *StaticText7;
  733.         TEdit *edtCrystalAFCFreqErr0;
  734.         TEdit *edtCrystalAFCFreqErr1;
  735.         TEdit *edtCrystalAFCFreqErr2;
  736.         TEdit *edtCrystalAFCFreqErr3;
  737.         TEdit *edtCrystalAFCFreqErr4;
  738.         TEdit *edtCrystalAFCFreqErr5;
  739.         TEdit *edtCrystalAFCFreqErr6;
  740.         TEdit *edtCrystalAFCFreqErr7;
  741.         TButton *btnEPSKGUIRampSetting;
  742.         TButton *btnPMEvaluate;
  743.         TTabSheet *tsSN;
  744.         TButton *btnSNCFGFile;
  745.         TStaticText *stSNCFGFile;
  746.         TGroupBox *GroupBox3;
  747.         TLabel *lblSNBand;
  748.         TLabel *lblSNARFCN;
  749.         TLabel *lblSNPerFrame;
  750.         TLabel *lblSNCount;
  751.         TLabel *Label10;
  752.         TLabel *lblSNGainMin;
  753.         TLabel *lblSNGainMax;
  754.         TLabel *lblSNGainStep;
  755.         TLabel *Label12;
  756.         TLabel *Label13;
  757.         TLabel *Label11;
  758.         TLabel *lblSNThreshold;
  759.         TLabel *Label14;
  760.         TLabel *lblSNMaxDnPower;
  761.         TLabel *Label16;
  762.         TLabel *lblSNMinDnPower;
  763.         TLabel *Label50;
  764.         TLabel *lblSNDnPowerStep;
  765.         TLabel *Label126;
  766.         TComboBox *cbSNBand;
  767.         TEdit *edtSNARFCN;
  768.         TComboBox *cbSNPerFrame;
  769.         TEdit *edtSNCount;
  770.         TEdit *edtSNGainMin;
  771.         TEdit *edtSNGainMax;
  772.         TEdit *edtSNGainStep;
  773.         TBitBtn *btnSNStart;
  774.         TBitBtn *btnSNStop;
  775.         TEdit *edtSNThreshold;
  776.         TGroupBox *gbSNEquipment;
  777.         TRadioButton *rbSNAgilent8960;
  778.         TRadioButton *rbSNCMU200;
  779.         TEdit *edtSNMaxDnPower;
  780.         TEdit *edtSNMinDnPower;
  781.         TEdit *edtSNDnPowerStep;
  782.         TButton *btnSNSaveToFile;
  783.         TRichEdit *memSNResult;
  784.         TOpenDialog *dlgSNOpenCFG;
  785.         TStatusBar *sbSN;
  786.         TButton *btnTXIQBBTXSetting;
  787.         TButton *btnRegSetting;
  788.         TLabel *lblCTPCL;
  789.         TEdit *edtCTPCL;
  790.         TTabSheet *tsRXL;
  791.         TGroupBox *GroupBox24;
  792.         TCheckBox *m_cbRXLGsm850;
  793.         TCheckBox *m_cbRXLGsm900;
  794.         TCheckBox *m_cbRXLDcs1800;
  795.         TCheckBox *m_cbRXLPcs1900;
  796.         TBitBtn *btnRXLStart;
  797.         TBitBtn *btnRXLStop;
  798.         TRichEdit *memRXLResult;
  799.         TStatusBar *sbRXL;
  800.         TButton *btnRXLCfgFile;
  801.         TStaticText *m_stRXLCfgFile;
  802.         TOpenDialog *dlgRXLOpenCFG;
  803.         TButton *btnRXLGenFile;
  804.         TGroupBox *GroupBox25;
  805.         TRadioButton *rbAgilent8960;
  806.         TRadioButton *rbCMU200;
  807.         TLabel *Label17;
  808.         TEdit *edtRXLThreashold;
  809.         TLabel *Label56;
  810.         TLabel *Label58;
  811.         TComboBox *cbRXLPerFrame;
  812.         TLabel *Label59;
  813.         TEdit *edtRXLPmCount;
  814.         TLabel *Label60;
  815.         TEdit *edtRXLGain;
  816.         TLabel *Label61;
  817.         TEdit *m_edtRXLDnPower;
  818.         TLabel *Label62;
  819.         TLabel *Label63;
  820.         TCheckBox *cbSNGainChangeFirst;
  821.         TRadioButton *m_rbTXIQPhasesel;
  822.         TLabel *m_lblTXIQPhasesel;
  823.         TEdit *m_edtTXIQPhasesel;
  824.         TLabel *m_lblTXIQMinPhasesel;
  825.         TLabel *m_lblTXIQMaxPhasesel;
  826.         TLabel *m_lblTXIQPhaseselStep;
  827.         TEdit *m_edtTXIQMinPhasesel;
  828.         TEdit *m_edtTXIQMaxPhasesel;
  829.         TEdit *m_edtTXIQPhaseselStep;
  830.         TButton *m_btnAFCRtc32k;
  831.         TButton *m_RXLNvramDB;
  832.         TStaticText *m_stNvramDB;
  833.         TCheckBox *m_cbCASContSineWave;
  834.    void __fastcall AFC_DownloadToFlashStart(TObject *Sender);
  835.    void __fastcall AFC_UploadFromFlashStart(TObject *Sender);
  836.    void __fastcall FormShow(TObject *Sender);
  837.    void __fastcall btnAFCStartClick(TObject *Sender);
  838.    void __fastcall btnAfcLoadFromFileClick(TObject *Sender);
  839.    void __fastcall btnAfcSaveToFileClick(TObject *Sender);
  840.    void __fastcall btnCRStartClick(TObject *Sender);
  841.    void __fastcall btnCTStartClick(TObject *Sender);
  842.    void __fastcall btnGSStartClick(TObject *Sender);
  843.    void __fastcall btnPMStartClick(TObject *Sender);
  844.    void __fastcall btnPathLossSettingClick(TObject *Sender);
  845.    void __fastcall btnTXProfileSettingClick(TObject *Sender);
  846.    void __fastcall btnTXStartClick(TObject *Sender);
  847.    void __fastcall chkTXBBSettingClick(TObject *Sender);
  848.    void __fastcall pctlToolSelChange(TObject *Sender);
  849.    void __fastcall edtArfcnCheck(TObject *Sender);
  850.    void __fastcall edtGainCheck(TObject *Sender);
  851.    void __fastcall edtAfcDacCheck(TObject *Sender);
  852.    void __fastcall edtPMTestCountCheck(TObject *Sender);
  853.    void __fastcall edtOffsetIQCheck(TObject *Sender);
  854.    void __fastcall edtPclCheck(TObject *Sender);
  855.    void __fastcall edtAfcSlopeCheck(TObject *Sender);
  856.    void __fastcall cbxBandChange(TObject *Sender);
  857.    void __fastcall FormClose(TObject *Sender, TCloseAction &Action);
  858.    void __fastcall edtInitAfcDacCheck(TObject *Sender);
  859.    void __fastcall HintTimerTimer(TObject *Sender);
  860.    void __fastcall btnAfcEvaluateClick(TObject *Sender);
  861.    void __fastcall FormHide(TObject *Sender);
  862.   // void __fastcall btnTXIQUploadFromFlashClick(TObject *Sender);
  863.   // void __fastcall btnTXIQDownloadToFlashClick(TObject *Sender);
  864.  //  void __fastcall btnTXIQLoadFromFileClick(TObject *Sender);
  865.   // void __fastcall btnTXIQSaveToFileClick(TObject *Sender);
  866.         void __fastcall btnSaveToFileClick(TObject *Sender);
  867.         void __fastcall btnStart_AFCSweepClick(TObject *Sender);
  868.         void __fastcall btnSaveToFile_AFCSweepClick(TObject *Sender);
  869.         void __fastcall edtCrystalARFCNCheck(TObject *Sender);
  870.         void __fastcall edtCrystalAFC0DacCheck(TObject *Sender);
  871.         void __fastcall edtCrystalAFC1DacCheck(TObject *Sender);
  872.         void __fastcall btnCrystalAFCLoadFromFileClick(TObject *Sender);
  873.         void __fastcall btnCrystalAFCSaveToFileClick(TObject *Sender);
  874.         void __fastcall btnCrystalAFCUploadFromFlashClick(TObject *Sender);
  875.         void __fastcall btnCrystalAFCDownloadToFlashClick(TObject *Sender);
  876.         void __fastcall btnMSTXInterSlotRampSettingClick(TObject *Sender);
  877.         void __fastcall edtTACheck(TObject *Sender);
  878.         void __fastcall cbxCSChange(TObject *Sender);
  879.         void __fastcall btnMultiSlotTxStartClick(TObject *Sender);
  880.         void __fastcall TimeSlot0Checked(TObject *Sender);
  881.         void __fastcall TimeSlot1Checked(TObject *Sender);
  882.         void __fastcall TimeSlot2Checked(TObject *Sender);
  883.         void __fastcall TimeSlot3Checked(TObject *Sender);
  884.         void __fastcall btnCrystalAFCStartClick(TObject *Sender);
  885.         void __fastcall btnTXFreqErrStartClick(TObject *Sender);
  886.         void __fastcall btnSetupINIFileNameClick(TObject *Sender);
  887.         void __fastcall btnSetupLogFileNameClick(TObject *Sender);
  888.         void __fastcall FormDestroy(TObject *Sender);
  889.         void __fastcall TimerTXFreqTimer(TObject *Sender);
  890.         void __fastcall btnTXOldIQDataSettingClick(TObject *Sender);
  891.         void __fastcall btnCTOldIQDataSettingClick(TObject *Sender);
  892.         void __fastcall edtCAPIDCheck(TObject *Sender);
  893.         void __fastcall btnSetupCfgFileClick(TObject *Sender);
  894.         void __fastcall CrystalAFCSweepTimerTimer(TObject *Sender);
  895.         void __fastcall btnCASNVRAMDatabaseFileClick(TObject *Sender);
  896.         void __fastcall btnCASCFGFileClick(TObject *Sender);
  897.         void __fastcall btnCASLogFileClick(TObject *Sender);
  898.         void __fastcall btnCTChangeDBClick(TObject *Sender);
  899.         void __fastcall btnCACChangeDBClick(TObject *Sender);
  900.         void __fastcall btnTXIQChangeDBClick(TObject *Sender);
  901.         void __fastcall btnAfcChangeDBClick(TObject *Sender);
  902.         void __fastcall FormCreate(TObject *Sender);
  903.         void __fastcall btnCTBBTXRunTimeSettingClick(TObject *Sender);
  904.         void __fastcall btnTXIQBBTXRunTimeSettingClick(TObject *Sender);
  905.         void __fastcall btnGUIRampSettingClick(TObject *Sender);
  906.         void __fastcall rbCASRXClick(TObject *Sender);
  907.         void __fastcall rbCASTXClick(TObject *Sender);
  908.         void __fastcall btnCASStartClick(TObject *Sender);
  909.         void __fastcall btnPMStopClick(TObject *Sender);
  910.         void __fastcall btnGSStopClick(TObject *Sender);
  911.         void __fastcall btnCRStopClick(TObject *Sender);
  912.         void __fastcall btnCTStopClick(TObject *Sender);
  913.         void __fastcall btnTXStopClick(TObject *Sender);
  914.         void __fastcall btnAFCStopClick(TObject *Sender);
  915.         void __fastcall btnStop_AFCSweeClick(TObject *Sender);
  916.         void __fastcall btnCrystalAFCStopClick(TObject *Sender);
  917.         void __fastcall btnMultiSlotTxStopClick(TObject *Sender);
  918.         void __fastcall btnTXFreqErrStopClick(TObject *Sender);
  919.         void __fastcall btnCASStopClick(TObject *Sender);
  920.         void __fastcall ToggleHideExcute(TObject *Sender);
  921.         void __fastcall btnTxFreqErrCfgFileClick(TObject *Sender);
  922.         void __fastcall btnTxFreqErrLogFileClick(TObject *Sender);
  923.         void __fastcall m_btnTXIQStartClick(TObject *Sender);
  924.         void __fastcall edtOffsetIQStepCheck(TObject *Sender);
  925.         void __fastcall m_btnTXIQNVRAMDBFileClick(TObject *Sender);
  926.         void __fastcall m_btnTXIQCFGFileClick(TObject *Sender);
  927.         void __fastcall m_btnTXIQLogFileClick(TObject *Sender);
  928.         void __fastcall m_rbTXIQTrimIQClick(TObject *Sender);
  929.         void __fastcall edtTrimIQCheck(TObject *Sender);
  930.         void __fastcall edtTrimIQStepCheck(TObject *Sender);
  931.         void __fastcall m_rbTXIQOffsetIQClick(TObject *Sender);
  932.         void __fastcall m_btnTXIQStopClick(TObject *Sender);
  933.         void __fastcall edtMeasureCountCheck(TObject *Sender);
  934.         void __fastcall edtBBTXCalibratedFlagCheck(TObject *Sender);
  935.         void __fastcall cbxMultiSlotTxModulationChange(TObject *Sender);
  936.         void __fastcall btnMSTXEPSKProfileSettingClick(TObject *Sender);
  937.         void __fastcall btnPMUploadFromFlashClick(TObject *Sender);
  938.         void __fastcall btnPMDownloadToFlashClick(TObject *Sender);
  939.         void __fastcall edtPMIP2Reg1Check(TObject *Sender);
  940.         void __fastcall edtPMIP2Reg2Check(TObject *Sender);
  941.         void __fastcall btnPMSaveToFileClick(TObject *Sender);
  942.         void __fastcall btnPMLoadFromFileClick(TObject *Sender);
  943.         void __fastcall btnPMChangeNVRAMDBClick(TObject *Sender);
  944.         void __fastcall btnPMEvaluateClick(TObject *Sender);
  945.         void __fastcall btnPMApplyClick(TObject *Sender);
  946.         void __fastcall edtPMIP2Reg3Check(TObject *Sender);
  947.         void __fastcall edtPMIP2Reg4Check(TObject *Sender);
  948.         void __fastcall rbPMOnClick(TObject *Sender);
  949.         void __fastcall rbPMOffClick(TObject *Sender);
  950.         void __fastcall btnGetAcodeClick(TObject *Sender);
  951.         void __fastcall cbCalModeClick(TObject *Sender);
  952.         void __fastcall btnPMNVRAMDBClick(TObject *Sender);
  953.         void __fastcall cbxPMCHBandChange(TObject *Sender);
  954.         void __fastcall edtTXIQBBTXTrimICheck(TObject *Sender);
  955.         void __fastcall edtTXIQBBTXTrimQCheck(TObject *Sender);
  956.         void __fastcall edtTXIQBBTXOffsetICheck(TObject *Sender);
  957.         void __fastcall edtTXIQBBTXOffsetQCheck(TObject *Sender);
  958.         void __fastcall btnPMCHCFGFileClick(TObject *Sender);
  959.         void __fastcall btnPMCHLogFileClick(TObject *Sender);
  960.         void __fastcall btnPMCHStartClick(TObject *Sender);
  961.         void __fastcall edtDnPwrCheck(TObject *Sender);
  962.         void __fastcall edtArfcnStepCheck(TObject *Sender);
  963.         void __fastcall cbTXPCSBandChange(TObject *Sender);
  964.         void __fastcall btnTXPCSCFGFileClick(TObject *Sender);
  965.         void __fastcall btnTXPCSLogFileClick(TObject *Sender);
  966.         void __fastcall btnTXPCSStartClick(TObject *Sender);
  967.         void __fastcall btnPMCHStopClick(TObject *Sender);
  968.         void __fastcall btnTXPCSStopClick(TObject *Sender);
  969.         void __fastcall btnPMSetBCcodeClick(TObject *Sender);
  970.         void __fastcall edtBcodeICheck(TObject *Sender);
  971.         void __fastcall edtBcodeQCheck(TObject *Sender);
  972.         void __fastcall edtCcodeICheck(TObject *Sender);
  973.         void __fastcall edtCcodeQCheck(TObject *Sender);
  974.         void __fastcall cbPMAutoCalClick(TObject *Sender);
  975.         void __fastcall cbPMCalibrationModeChange(TObject *Sender);
  976.         void __fastcall btnPMGetBCcodeClick(TObject *Sender);
  977.         void __fastcall edtPatternCheck(TObject *Sender);
  978.         void __fastcall edtCTPatternCheck(TObject *Sender);
  979.         void __fastcall cbTXModulationChange(TObject *Sender);
  980.         void __fastcall cbTXBurstTypeChange(TObject *Sender);
  981.         void __fastcall edtTrOffTrimICheck(TObject *Sender);
  982.         void __fastcall edtTrOffTrimQCheck(TObject *Sender);
  983.         void __fastcall edtTrOffOffsetICheck(TObject *Sender);
  984.         void __fastcall edtTrOffOffsetQCheck(TObject *Sender);
  985.         void __fastcall edtTrOffMinTrimICheck(TObject *Sender);
  986.         void __fastcall edtTrOffMaxTrimICheck(TObject *Sender);
  987.         void __fastcall edtTrOffTrimIStepCheck(TObject *Sender);
  988.         void __fastcall edtTrOffTrimQStepCheck(TObject *Sender);
  989.         void __fastcall edtTrOffMinTrimQCheck(TObject *Sender);
  990.         void __fastcall edtTrOffMaxTrimQCheck(TObject *Sender);
  991.         void __fastcall edtTrOffMinOffsetICheck(TObject *Sender);
  992.         void __fastcall edtTrOffMaxOffsetICheck(TObject *Sender);
  993.         void __fastcall edtTrOffOffsetIStepCheck(TObject *Sender);
  994.         void __fastcall edtTrOffOffsetQStepCheck(TObject *Sender);
  995.         void __fastcall edtTrOffMinOffsetQCheck(TObject *Sender);
  996.         void __fastcall edtTrOffMaxOffsetQCheck(TObject *Sender);
  997.         void __fastcall cbCASTempSweepClick(TObject *Sender);
  998.         void __fastcall edtCASMinTempCheck(TObject *Sender);
  999.         void __fastcall edtCASMaxTempCheck(TObject *Sender);
  1000.         void __fastcall edtCASTempStepCheck(TObject *Sender);
  1001.         void __fastcall edtAFCTestCountCheck(TObject *Sender);
  1002.         void __fastcall cbAFCContSineWaveClick(TObject *Sender);
  1003.         void __fastcall cbContSineWave_AFCSweepClick(TObject *Sender);
  1004.         void __fastcall btnEPSKGUIRampSettingClick(TObject *Sender);
  1005.         void __fastcall btnSNCFGFileClick(TObject *Sender);
  1006.         void __fastcall edtSNThresholdCheck(TObject *Sender);
  1007.         void __fastcall btnSNSaveToFileClick(TObject *Sender);
  1008.         void __fastcall btnSNStartClick(TObject *Sender);
  1009.         void __fastcall btnSNStopClick(TObject *Sender);
  1010.         void __fastcall btnTXIQBBTXSettingClick(TObject *Sender);
  1011.         void __fastcall btnRegSettingClick(TObject *Sender);
  1012.         void __fastcall FormActivate(TObject *Sender);
  1013.         void __fastcall m_rbTXIQPhaseselClick(TObject *Sender);
  1014.         void __fastcall m_edtTXIQMinPhaseselCheck(TObject *Sender);
  1015.         void __fastcall m_edtTXIQMaxPhaseselCheck(TObject *Sender);
  1016.         void __fastcall m_edtTXIQPhaseselStepCheck(TObject *Sender);
  1017.         void __fastcall m_btnAFCRtc32kClick(TObject *Sender);
  1018.         void __fastcall m_edtTXIQPhaseselCheck(TObject *Sender);
  1019.         void __fastcall m_RXLNvramDBClick(TObject *Sender);
  1020.         void __fastcall btnRXLStartClick(TObject *Sender);
  1021.         void __fastcall btnRXLCfgFileClick(TObject *Sender);
  1022.         void __fastcall edtRXLPmCountCheck(TObject *Sender);
  1023.         void __fastcall edtRXLGainCheck(TObject *Sender);
  1024.         void __fastcall m_edtRXLDnPowerCheck(TObject *Sender);
  1025.         void __fastcall edtRXLThreasholdCheck(TObject *Sender);
  1026.         void __fastcall btnRXLStopClick(TObject *Sender);
  1027.         void __fastcall btnRXLGenFileClick(TObject *Sender);
  1028.         
  1029.         //void __fastcall btnTXUploadFromFlashClick(TObject *Sender);
  1030.        // void __fastcall btnTXDownloadToFlashClick(TObject *Sender);
  1031.         
  1032. private:  // User declarations
  1033.        // common
  1034.        CMETAHANDLE m_META_HANDLE_Obj;
  1035.        bool  m_bInit;
  1036.        unsigned int  m_uiFinalRfid;
  1037.        BBCHIP_TYPE  m_eBBChip;
  1038.        E_BBTXCFG_VER_T m_eBbTxCfgVer;
  1039.        RfMsCapabilityEx_S   m_sFinalMSCAP;
  1040.        bool m_bFirstPmCnf;
  1041.        bool m_bFirstPMShow;
  1042.        bool m_bFirstPMCHShow;
  1043.        bool m_bFirstSNShow;
  1044.        bool m_bFirstAFCCtrlShow;
  1045.        bool m_bFirstAFCSweepShow;
  1046.        bool m_bFirstTXShow;
  1047.        bool m_bFirstTXPCSShow;
  1048.        bool m_bFirstTrOffShow;
  1049.        bool m_bFirstMultiSlotTxShow;
  1050.        bool m_bFirstCrystalAFCSweepShow;
  1051.        bool m_bFirstTxFreqErrShow;
  1052.       //RFID      rf_id;
  1053.        // band
  1054.        //  RFBandSupport_S  band_support;
  1055.       // FrequencyBand  FreqBand;
  1056.        AnsiString as_NVRAM_DB_File;
  1057.        // PM
  1058.        bool  isDownloadIP2Trigger;
  1059.        bool  isSetMT6139CW7ToRegTrigger;
  1060.        int   SetMT6139CoefToRegTrigger;
  1061.        int   SetMT6139CW2ToRegTrigger;
  1062.        c_RFMod_Sky74045_Coef_T   c_sky74045_coef;
  1063.        c_RFMod_Sky74117_Coef_T   mc_sky74117_coef;
  1064.        uc_RFMod_MT6139_Coef_T     uc_mt6139_coef;
  1065.       // c_RFMod_B5P_Coef_T        c_b5p_coef;
  1066.        RF_SKY74045_Coef_T   sky74045_coef;
  1067.        RF_MT6139B_Coef_T     mt6139_coef;
  1068.        RF_BRIGHT5P_Coef_T        b5p_coef;
  1069.        S_MT6139_CW7  mt6139_cw7;
  1070.        // PM channel sweep
  1071.        sPMCHSweep  pmch_sweep;
  1072.        bool  b_OpenPMCHCfgFile;
  1073.        bool  b_SetupPMCHLogFile;
  1074.        TStringList *st_Log_PMCH; // save log
  1075.        // PM saturate and noise floor
  1076.        S_SNSweep  m_sn_sweep;
  1077.        bool  m_bOpenSNCfgFile;
  1078.        bool  m_bSetupSNLogFile;
  1079.        TStringList *m_st_Log_SN; // save log
  1080.        
  1081.        // AFC
  1082.        sTContSine  t_cont_sine;
  1083.        // cyrstal AFC
  1084.        TEdit *edtCrystalAFC[TOTAL_AFCDAC_COUNT];
  1085.        TEdit *edtCrystalAFCFreqErr[TOTAL_AFCDAC_COUNT];
  1086.        TYPE_META_FACTORY_CONTROL MF_ctrl;
  1087.        TYPE_META_FACTORY_ADC_CONTROL MF_ADC_ctrl; // for test
  1088.       // TMETA_factory_cfg *META_factory_cfg; // for test
  1089.        char TimeSlotMask;
  1090.        // crystal AFC sweep
  1091.        unsigned short ComPortCount;
  1092.        unsigned short ComPortArray[MAX_SUPPORT_COM_NUM];
  1093.        S_CAS_T  CAS;
  1094.        // CT
  1095.        E_CT_SUPPORT  m_eCtSupport;
  1096.        CRFCTCMN   RF_CTCMN_Obj;
  1097.        // TX level
  1098.       S_UI_L1CAL_TXIQ   m_sUiL1CalTxIq;
  1099.     //   S_BB_TX_PARAMETER_ACCESS m_sBBTXParAccess;
  1100.     //   bool m_bBBTxDownloadTrigger;
  1101.        // Multislot TX
  1102.        //RfMsCapability_S   RfMsCapability;
  1103.        
  1104.        // TX power channel sweep
  1105.        sTXPCSSweep  txpcs_sweep;
  1106.        bool  b_OpenTXPCSCfgFile;
  1107.        bool  b_SetupTXPCSLogFile;
  1108.        // TX frequency error
  1109.         bool b_OpenTxFreqErrCfgFile;
  1110.         bool b_SetupTxFreqErrLogFile;
  1111.         AnsiString as_TxFreqErrLogFileName;
  1112.        // bool b_SetupLogFile;
  1113.       // AnsiString  as_LogFileName;
  1114.         TStringList *st_Log; // save log
  1115.        TMETA_crystal_cfg *META_crystal_cfg, *META_crystal_AFC_sweep_cfg;
  1116.        HANDLE hAgeDll;
  1117.        CBBADC  BB_ADC_Object;
  1118.        CBBREG  BB_REG_Object;
  1119.        int adc_value;
  1120.        int  CurAdcChannel;
  1121.        ViStatus vistat;
  1122.        ViChar errmsg[256];
  1123.        ViInt16      MeasFcnDone;
  1124.        ViInt32   PFERIntegrity;
  1125.        ViReal64  PFERRMSError;
  1126.        ViReal64  PFERPeakError;
  1127.        ViReal64  PFERFreqError;
  1128.        ViReal64  FreqError;
  1129.        char buf[80];
  1130.        // crystal AFC sweep
  1131.        bool  b_OpenCASDBFile, b_OpenCASCfgFile, b_SetupCASLogFile;
  1132.        AnsiString  as_CASLogFileName;
  1133.        AnsiString as_AgeTaModel;
  1134.        TStringList *st_Log_CAS; // save log
  1135.        TNotifyEvent ne, neTBU;
  1136.        // offset IQ sweep
  1137.        bool b_SetupTrOffLogFile;
  1138.        bool b_OpenTrOffDBFile;
  1139.        bool b_OpenTrOffCfgFile;
  1140.        AnsiString as_TrOffLogFileName;
  1141.        S_TXIQ_SWEEP_T m_TxIqSweep;
  1142.        E_BANDSEL m_eCurBand;
  1143.    bool FirstTime;
  1144.    CRFPM    RF_PM_Object;
  1145.        CRFCR    RF_CR_Object;
  1146.        CRFCT    RF_CT_Object;
  1147.        CRFTX    RF_TX_Object;
  1148.      //  CRFTX8PSK  RF_TX_8PSK_Object;
  1149.        CRFAPC8PSK  RF_APC_8PSK_Object;
  1150.        CRFAFC   RF_AFC_Object;
  1151.        CRFAGC   RF_AGC_Object;
  1152.        CRFAPC   RF_APC_Object;
  1153.        CRFTXIQ  m_cRF_TXIQ_Obj;
  1154.        CRFTXIQRUN m_cRF_TXIQRUN_Obj;
  1155.        CRFSTOP  RF_STOP_Object;
  1156.        CCRYSTALAFC CRYSTAL_AFC_Object;
  1157.        //CRFID    RF_ID_Object;
  1158.    //CCRYSTALAFCSWEEP  CRYSTAL_AFC_SWEEP_Object;
  1159.    CRFMULTISLOTTX  RF_MULTI_SLOT_TX_Object;
  1160.    bool is_title_AFCSweep;
  1161.    // multi slot tx
  1162.    bool m_bMultiSlotTxExSupport;
  1163.    // RX path loss subband search
  1164.    S_RXL_SWEEP_T m_sRxlSweep;
  1165.    S_RCT m_sRct;
  1166.    l1cal_agcPathLoss_T m_sRxPathLoss;
  1167.    TThread *m_pt_RXLSweep;
  1168.        
  1169. public:  // User declarations
  1170.     TThread *pt_Age8960, *pt_Age8960_Crystal_Sweep_TX, *pt_Age8960_Crystal_Sweep_RX;
  1171.    __fastcall TfrmRFTool(TComponent* Owner);
  1172. // Shine add member objects follow
  1173.    // common
  1174.    int Get_APCTxPattern( void );
  1175.    void _fastcall SubClassWndProc( Messages::TMessage &Message);
  1176.    void  ShowHintLabel( TControl *sender, char* hint );
  1177.    void  ApplyHideProperty( void );
  1178.    bool  read_db_file( AnsiString asFileName );
  1179.    void  UpdateDBFileCaption(AnsiString asFileName);
  1180.    // PM
  1181.    bool  CheckIP2RegFields( void );
  1182.    void  Display_PMCalibrationMode( void );
  1183.    void  REQ_PM_Start( void );
  1184.    void  PM_UploadFromFlashDone( void );
  1185.    void  PM_DownloadToFlashDone( void );
  1186.    void  read_PM_files_setup( AnsiString asSetupFile, AnsiString asExeName );
  1187.    void  read_PM_db_file( AnsiString asFileName );
  1188.    // PM channel sweep
  1189.     TThread *pt_PMCH_sweep;
  1190.    void read_PMCH_cfg_file( AnsiString asFileName);
  1191.    void setup_PMCH_log_file( AnsiString asFileName);
  1192.    void write_PMCH_log_file( AnsiString as_PMCHLogFileName );
  1193.    void wrap_PMCH_log_file( AnsiString as_PMCHLogFileName );
  1194.    void read_PMCH_files_setup( AnsiString asSetupFile, AnsiString asExeName );
  1195.    void write_PMCH_files_setup( AnsiString asSetupFile, AnsiString asExeName );
  1196.    bool CheckPMCHFields( void );
  1197.    void __fastcall on_PMCH_TerminateSuccess(TObject *Sender);
  1198.    void __fastcall on_PMCH_TerminateFail(TObject *Sender);
  1199.    void __fastcall on_PMCH_TerminateByUser(TObject *Sender);
  1200.    // RX path loss subband search
  1201.    bool CheckRXLFields(void);
  1202.    void read_RXL_cfg_file(AnsiString asFileName);
  1203.    void __fastcall on_RXL_TerminateSuccess(TObject *Sender);
  1204.    void __fastcall on_RXL_TerminateFail(TObject *Sender);
  1205.    void __fastcall on_RXL_TerminateByUser(TObject *Sender);
  1206.    // Saturate & noise floor
  1207.    TThread *m_pt_SN_sweep;
  1208.    void read_SN_cfg_file( AnsiString asFileName );
  1209.    void __fastcall on_SN_TerminateSuccess(TObject *Sender);
  1210.    void __fastcall on_SN_TerminateFail(TObject *Sender);
  1211.    void __fastcall on_SN_TerminateByUser(TObject *Sender);
  1212.    void  FillSNResult( bool  is_title, S_SNResult  &sn_result );
  1213.    void read_SN_files_setup( AnsiString asSetupFile, AnsiString asExeName );
  1214.    void write_SN_files_setup( AnsiString asSetupFile, AnsiString asExeName );
  1215.    // AFC
  1216.    void cbContSineWaveClick( void );
  1217.    void QuerySineWaveSupport( void );
  1218.    void __fastcall on_QueryContSineSupport_Fail(TObject *Sender);
  1219.    void __fastcall on_QueryContSineSupport_TerminateSuccess(TObject *Sender);
  1220.    // TX level
  1221.    APCTxPattern Get_GmskBurstType(void);
  1222.    APCTxPattern Get_EpskBurstType(void);
  1223.    void  Display_TxCS( RfMsCapabilityBits capability, E_MODULATION modulation );
  1224.    void  Display_TXGmskBurstType( void );
  1225.    void  Display_TXEpskBurstType( void );
  1226.    void  Display_TxGmskUi( void );
  1227.    void  Display_TxEpskUi( void );
  1228.    //void  RedrawBBTxParameters(void);
  1229.    // TX power sweep
  1230.    TThread *pt_TXPCS_sweep;
  1231.    bool CheckTXPCSFields( void );
  1232.    void read_TXPCS_cfg_file( AnsiString asFileName);
  1233.    void setup_TXPCS_log_file( AnsiString asFileName);
  1234.    void write_TXPCS_log_file( void );
  1235.    void wrap_TXPCS_log_file( AnsiString as_PMCHLogFileName );
  1236.    void read_TXPCS_files_setup( AnsiString asSetupFile, AnsiString asExeName );
  1237.    void write_TXPCS_files_setup( AnsiString asSetupFile, AnsiString asExeName );
  1238.    void __fastcall on_TXPCS_TerminateSuccess(TObject *Sender);
  1239.    void __fastcall on_TXPCS_TerminateFail(TObject *Sender);
  1240.    void __fastcall on_TXPCS_TerminateByUser(TObject *Sender);
  1241.    // TX IQ sweep
  1242.    TThread *m_pt_TXIQ_sweep;
  1243.    void write_TXIQ_log(void);
  1244.    void setup_TXIQ_log_file(AnsiString asFileName);
  1245.    void read_TXIQ_db_file(AnsiString asFileName);
  1246.    void read_TXIQ_cfg_file(AnsiString asFileName);
  1247.    void read_TXIQ_files_setup(AnsiString asSetupFile, AnsiString asExeName);
  1248.    void write_TXIQ_files_setup(AnsiString asSetupFile, AnsiString asExeName);
  1249.    void wrap_TXIQ_log_file(void);
  1250.    void __fastcall on_TXIQ_TerminateSuccess(TObject *Sender);
  1251.    void __fastcall on_TXIQ_TerminateByUser(TObject *Sender);
  1252.    // crystal AFC sweep
  1253.        void  Display_ComPort( void );
  1254.    // call back
  1255.    void  ConfirmCallback_PM( void );
  1256.    void  CNF_PM_SetMT6139CoefToReg( void );
  1257.    void  CNF_PM_SetMT6139CW2ToReg( void );
  1258.    void  CNF_PM_GetBCcodeFromReg( void );
  1259.    void  CNF_PM_SetBCcodeToReg( void );
  1260.    void  CNF_PM_GetAcodeFromReg( void );
  1261.    void  CNF_PM_GetMT6139CW7FromReg( void );
  1262.    void  CNF_PM_SetMT6139CW7ToReg( void );
  1263.    void  ConfirmCallback_CR( void );
  1264.    void  ConfirmCallback_CT( void );
  1265.    void  ConfirmCallback_TX( void );
  1266.    void  ConfirmCallback_AFC( void );
  1267.    void  ConfirmCallback_SetAfcSinWaveDetection( void );
  1268.    void  ConfirmCallback_CrystalAFC( void );
  1269.    void  ConfirmCallback_MultiSlotTX( void );
  1270.    void  ConfirmCallback_QueryRfMsCapability( void );
  1271.    void  AFC_UploadFromFlashDone( void );
  1272.    void  AFC_DownloadToFlashDone( void );
  1273.   //void  TXIQ_UploadFromFlashDone( void );
  1274.   // void  TXIQ_DownloadToFlashDone( void );
  1275.    void  CurrentPageReset( void );
  1276.    void  CurrentPageLock( void );
  1277.    void  FillPMResult( bool  is_title, TRichEdit *rmemo );
  1278.    void  FillAFCResult( void );
  1279.    void  Force_RF_Stop( void );
  1280.    // Crystal
  1281.    void  Crystal_AFCData_UploadFromFlashDone( void );
  1282.    void  Crystal_AFCData_DownloadToFlashDone( void );
  1283.    void  Crystal_CapId_UploadFromFlashDone( void );
  1284.    void  Crystal_CapId_DownloadToFlashDone( void );
  1285.    // Crystal AFC sweep
  1286.    void  read_CAS_db_file( AnsiString asFileName );
  1287.    void  read_CAS_cfg_file( AnsiString asFileName);
  1288.    void  setup_CAS_log_file( AnsiString asFileName);
  1289.    void  read_CAS_files_setup( AnsiString asSetupFile, AnsiString asExeName );
  1290.    void  write_CAS_files_setup( AnsiString asSetupFile, AnsiString asExeName );
  1291.    void  write_CAS_log( void );
  1292.    void  wrap_CAS_log_file( void );
  1293.    void __fastcall on_CAS_TerminateSuccess(TObject *Sender);
  1294.    void __fastcall on_CAS_TerminateFail(TObject *Sender);
  1295.    void __fastcall on_CAS_TerminateByUser(TObject *Sender);
  1296.   // void  Crystal_AFC_Sweep_Start_TX_Click( void );
  1297.    void  Crystal_AFC_Sweep_Start_Click( void );
  1298.    // Multislot TX
  1299.    void Display_MultislotTx( void );
  1300.    void Display_MultiSlotTxCS( RfMsCapabilityBits capability );
  1301.    // TX frequency error
  1302.    void write_TxFreqErr_log( void );
  1303.    void wrap_TxFreqErr_log_file( void );
  1304.    void setup_log_file( AnsiString asFileName);
  1305.    void __fastcall on_ThreadInitAge8960_TerminateSuccess(TObject *Sender);
  1306.    void __fastcall on_ThreadInitAge8960_TerminateFail(TObject *Sender);
  1307.    void MeasureAdc1_Done( void );
  1308.    bool __fastcall CheckError(ViStatus ErrorStatus);
  1309.    void  Force_BB_Stop(void);
  1310.    void  read_TxFreqErr_cfg_file( AnsiString asFileName);
  1311.    void  setup_TxFreqErr_log_file( AnsiString asFileName);
  1312.    void  read_TxFreqErr_files_setup( AnsiString asSetupFile, AnsiString asExeName );
  1313.    void  write_TxFreqErr_files_setup( AnsiString asSetupFile, AnsiString asExeName );
  1314.    // PM
  1315.    void Display_IP2Reg( void );
  1316.    void RedrawIP2RegEditor( void );
  1317.    void write_PM_files_setup( AnsiString asSetupFile, AnsiString asExeName );
  1318.    void CNF_SetSky74117IP2MagToReg( void );
  1319.    void CNF_SetSky74117IP2PolToReg( void );
  1320.     // export information
  1321.    void  Init( void );
  1322.    CRFAGC*   Get_AgcObject(void);
  1323.    CRFAPC*   Get_ApcObject(void);
  1324.    E_CT_SUPPORT Get_CtSupport(void);
  1325.    bool Get_MultiSlotTxExSupport(void);
  1326. };
  1327. //---------------------------------------------------------------------------
  1328. extern PACKAGE TfrmRFTool *frmRFTool;
  1329. //---------------------------------------------------------------------------
  1330. #endif