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

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.  *   META_crystal_cfg.h
  40.  *
  41.  * Project:
  42.  * --------
  43.  *   Maui META APP
  44.  *
  45.  * Description:
  46.  * ------------
  47.  *  Crystal configuration 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. #ifndef _META_CRYSTAL_CFG_H_
  66. #define _META_CRYSTAL_CFG_H_
  67. #include <Classes.hpp>
  68. class TMETA_crystal_cfg : public TPersistent
  69. {
  70.    private :
  71.       // 8960 Initialization
  72.       AnsiString as_8960_GPIB_Addr;
  73.       int i_TimeOut;
  74.       // dB cable loss
  75.       double  d_GSM400_CL, d_GSM850_CL, d_GSM900_CL, d_DCS1800_CL, d_PCS1900_CL;
  76.       AnsiString as_CMU200_GPIB_Addr;
  77.       int i_CMU200_TimeOut;
  78.       // dB cable loss
  79.       double  d_CMU200_INPUT_GSM400_CL, d_CMU200_INPUT_GSM850_CL, d_CMU200_INPUT_GSM900_CL, d_CMU200_INPUT_DCS1800_CL, d_CMU200_INPUT_PCS1900_CL;
  80.       double  d_CMU200_OUTPUT_GSM400_CL, d_CMU200_OUTPUT_GSM850_CL, d_CMU200_OUTPUT_GSM900_CL, d_CMU200_OUTPUT_DCS1800_CL, d_CMU200_OUTPUT_PCS1900_CL;
  81.       // Freq Bank
  82.       AnsiString as_FreqBank;
  83.       // C0 for each Bank
  84.       short m_sARFCN_C0_GSM850;
  85.       short m_sARFCN_C0_GSM;
  86.       short m_sARFCN_C0_DCS;
  87.       short m_sARFCN_C0_PCS;
  88.       
  89.       // Downlink power
  90.       double d_P_DL;
  91.       // RX measurement samples
  92.       short i_N_PM;
  93.       char c_M_PM;
  94.       // AFC calibration
  95.       AnsiString as_AFC_BAND;
  96.       short m_sAFC_ARFCN;
  97.       short m_sN_AFC;
  98.       int i_DAC1;
  99.       int i_DAC2;
  100.       // TX PCL table
  101.       AnsiString as_GSM400_PCL;
  102.       AnsiString as_GSM400_MAX_P;
  103.       AnsiString as_GSM400_WANTED_P;
  104.       AnsiString as_GSM400_MIN_P;
  105.       AnsiString as_GSM400_C;
  106.       AnsiString as_GSM850_PCL;
  107.       AnsiString as_GSM850_MAX_P;
  108.       AnsiString as_GSM850_WANTED_P;
  109.       AnsiString as_GSM850_MIN_P;
  110.       AnsiString as_GSM850_C;
  111.       AnsiString as_GSM900_PCL;
  112.       AnsiString as_GSM900_MAX_P;
  113.       AnsiString as_GSM900_WANTED_P;
  114.       AnsiString as_GSM900_MIN_P;
  115.       AnsiString as_GSM900_C;
  116.       AnsiString as_DCS1800_PCL;
  117.       AnsiString as_DCS1800_MAX_P;
  118.       AnsiString as_DCS1800_WANTED_P;
  119.       AnsiString as_DCS1800_MIN_P;
  120.       AnsiString as_DCS1800_C;
  121.       AnsiString as_PCS1900_PCL;
  122.       AnsiString as_PCS1900_MAX_P;
  123.       AnsiString as_PCS1900_WANTED_P;
  124.       AnsiString as_PCS1900_MIN_P;
  125.       AnsiString as_PCS1900_C;
  126.       char c_TSC;
  127.       int i_N_TX; // test period in frames
  128.       int i_RecursiveTimes;
  129.       double d_APC_Delta; // wanted +- d_APC_delta => APC calibration wanted
  130.    protected:
  131.    //
  132.    public:
  133.       __fastcall TMETA_crystal_cfg();
  134.       __fastcall ~TMETA_crystal_cfg();
  135.       // Agilent 8960
  136.       bool getGPIB_Addr(AnsiString &as);
  137.       bool getTimeOut(int &i);
  138.       bool getGSM400_CableLoss( double &d); // dB
  139.       bool getGSM850_CableLoss( double &d); // dB
  140.       bool getGSM900_CableLoss( double &d); // dB
  141.       bool getDCS1800_CableLoss( double &d); // dB
  142.       bool getPCS1900_CableLoss( double &d); // dB
  143.       // CMU 200
  144.       bool getCMU200_GPIB_Addr(AnsiString &as);
  145.       bool getCMU200_TimeOut(int &i);
  146.       bool getCMU200_INPUT_GSM400_CableLoss( double &d);
  147.       bool getCMU200_INPUT_GSM850_CableLoss( double &d);
  148.       bool getCMU200_INPUT_GSM900_CableLoss( double &d);
  149.       bool getCMU200_INPUT_DCS1800_CableLoss( double &d);
  150.       bool getCMU200_INPUT_PCS1900_CableLoss( double &d);
  151.       bool getCMU200_OUTPUT_GSM400_CableLoss( double &d);
  152.       bool getCMU200_OUTPUT_GSM850_CableLoss( double &d);
  153.       bool getCMU200_OUTPUT_GSM900_CableLoss( double &d);
  154.       bool setCMU200_OUTPUT_GSM900_CableLoss( double d);
  155.       bool getCMU200_OUTPUT_DCS1800_CableLoss( double &d);
  156.       bool getCMU200_OUTPUT_PCS1900_CableLoss( double &d);
  157.       bool getFreqBank(AnsiString &as);
  158.       bool getARFCN_C0_GSM850(short &s);
  159.       bool getARFCN_C0_GSM(short &s);
  160.       bool getARFCN_C0_DCS(short &s);
  161.       bool getARFCN_C0_PCS(short &s);
  162.       bool getP_DL(double &d);
  163.       bool getN_PM(short &i);
  164.       bool getM_PM(char &c);
  165.       bool getAFC_BAND(AnsiString &as);
  166.       bool getAFC_ARFCN(short &s);
  167.       bool getN_AFC(short &s);
  168.       bool getDAC1(int &i);
  169.       bool getDAC2(int &i);
  170.       bool getGSM400_PCL(AnsiString &as);
  171.       bool getGSM400_MAX_P(AnsiString &as);
  172.       bool getGSM400_WANTED_P(AnsiString &as);
  173.       bool getGSM400_MIN_P(AnsiString &as);
  174.       bool getGSM400_C(AnsiString &as);
  175.       bool getGSM850_PCL(AnsiString &as);
  176.       bool getGSM850_MAX_P(AnsiString &as);
  177.       bool getGSM850_WANTED_P(AnsiString &as);
  178.       bool getGSM850_MIN_P(AnsiString &as);
  179.       bool getGSM850_C(AnsiString &as);
  180.       bool getGSM900_PCL(AnsiString &as);
  181.       bool getGSM900_MAX_P(AnsiString &as);
  182.       bool getGSM900_WANTED_P(AnsiString &as);
  183.       bool getGSM900_MIN_P(AnsiString &as);
  184.       bool getGSM900_C(AnsiString &as);
  185.       
  186.       bool getDCS1800_PCL(AnsiString &as);
  187.       bool getDCS1800_MAX_P(AnsiString &as);
  188.       bool getDCS1800_WANTED_P(AnsiString &as);
  189.       bool getDCS1800_MIN_P(AnsiString &as);
  190.       bool getDCS1800_C(AnsiString &as);
  191.       bool getPCS1900_PCL(AnsiString &as);
  192.       bool getPCS1900_MAX_P(AnsiString &as);
  193.       bool getPCS1900_WANTED_P(AnsiString &as);
  194.       bool getPCS1900_MIN_P(AnsiString &as);
  195.       bool getPCS1900_C(AnsiString &as);
  196.       bool getTSC(char &c);
  197.       bool getN_TX(int &i);
  198.       bool getTXlevelRecursiveTimes(int &i);
  199.       bool getAPC_Delta(double &d);
  200.       bool ReadFromIniFile( AnsiString as_FileName );
  201.       bool is_MAX_WANTED_MIN_P_valid();
  202. };
  203. //---------------------------------------------------------------------------
  204. #endif