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

MTK

开发平台:

C++ Builder

  1. //---------------------------------------------------------------------------
  2. #include <vcl.h>
  3. #include <stdio.h>
  4. #pragma hdrstop
  5. #include "form_WiFiBBCR.h"
  6. #ifndef  _MISC_WIFI_H_
  7. #include "misc_wifi.h"
  8. #endif
  9. //---------------------------------------------------------------------------
  10. #pragma package(smart_init)
  11. #pragma resource "*.dfm"
  12. TfrmWiFiBBCR *frmWiFiBBCR;
  13. //===========================================================================
  14. static void  ConfirmCallback_ReadReg( void )
  15. {   frmWiFiBBCR->ConfirmCallback_ReadReg();
  16. }
  17. //---------------------------------------------------------------------------
  18. static void  ConfirmCallback_WriteReg( void )
  19. {   frmWiFiBBCR->ConfirmCallback_WriteReg();
  20. }
  21. //---------------------------------------------------------------------------
  22. __fastcall TfrmWiFiBBCR::TfrmWiFiBBCR(TComponent* Owner)
  23.         : TForm(Owner)
  24. {
  25.     int i, j;
  26.     // Initialization and PHY-Configuration
  27.     cbIPC[0] = cbIPC0;   lblIPC[0] = lblIPC0;   lblIPCn[0] = lblIPCn0;   edtIPC[0] = edtIPC0;
  28.     cbIPC[1] = cbIPC1;   lblIPC[1] = lblIPC1;   lblIPCn[1] = lblIPCn1;   edtIPC[1] = edtIPC1;
  29.     cbIPC[2] = cbIPC2;   lblIPC[2] = lblIPC2;   lblIPCn[2] = lblIPCn2;   edtIPC[2] = edtIPC2;
  30.     cbIPC[3] = cbIPC3;   lblIPC[3] = lblIPC3;   lblIPCn[3] = lblIPCn3;   edtIPC[3] = edtIPC3;
  31.     cbIPC[4] = cbIPC4;   lblIPC[4] = lblIPC4;   lblIPCn[4] = lblIPCn4;   edtIPC[4] = edtIPC4;
  32.     //  TX-related
  33.     cbTX[0] = cbTX0;   lblTX[0] = lblTX0;   lblTXn[0] = lblTXn0;    edtTX[0] = edtTX0;
  34.     cbTX[1] = cbTX1;   lblTX[1] = lblTX1;   lblTXn[1] = lblTXn1;    edtTX[1] = edtTX1;
  35.     cbTX[2] = cbTX2;   lblTX[2] = lblTX2;   lblTXn[2] = lblTXn2;    edtTX[2] = edtTX2;
  36.     cbTX[3] = cbTX3;   lblTX[3] = lblTX3;   lblTXn[3] = lblTXn3;    edtTX[3] = edtTX3;
  37.     cbTX[4] = cbTX4;   lblTX[4] = lblTX4;   lblTXn[4] = lblTXn4;    edtTX[4] = edtTX4;
  38.     cbTX[5] = cbTX5;   lblTX[5] = lblTX5;   lblTXn[5] = lblTXn5;    edtTX[5] = edtTX5;
  39.     cbTX[6] = cbTX6;   lblTX[6] = lblTX6;   lblTXn[6] = lblTXn6;    edtTX[6] = edtTX6;
  40.     cbTX[7] = cbTX7;   lblTX[7] = lblTX7;   lblTXn[7] = lblTXn7;    edtTX[7] = edtTX7;
  41.     cbTX[8] = cbTX8;   lblTX[8] = lblTX8;   lblTXn[8] = lblTXn8;    edtTX[8] = edtTX8;
  42.     cbTX[9] = cbTX9;   lblTX[9] = lblTX9;   lblTXn[9] = lblTXn9;    edtTX[9] = edtTX9;
  43.     // RX-related
  44.     cbRX[0] = cbRX00;   lblRX[0] = lblRX00;   lblRX[0] = lblRXn00;   edtRX[0] = edtRX00;
  45.     cbRX[1] = cbRX01;   lblRX[1] = lblRX01;   lblRX[1] = lblRXn01;   edtRX[1] = edtRX01;
  46.     cbRX[2] = cbRX02;   lblRX[2] = lblRX02;   lblRX[2] = lblRXn02;   edtRX[2] = edtRX02;
  47.     cbRX[3] = cbRX03;   lblRX[3] = lblRX03;   lblRX[3] = lblRXn03;   edtRX[3] = edtRX03;
  48.     cbRX[4] = cbRX04;   lblRX[4] = lblRX04;   lblRX[4] = lblRXn04;   edtRX[4] = edtRX04;
  49.     cbRX[5] = cbRX05;   lblRX[5] = lblRX05;   lblRX[5] = lblRXn05;   edtRX[5] = edtRX05;
  50.     cbRX[6] = cbRX06;   lblRX[6] = lblRX06;   lblRX[6] = lblRXn06;   edtRX[6] = edtRX06;
  51.     cbRX[7] = cbRX07;   lblRX[7] = lblRX07;   lblRX[7] = lblRXn07;   edtRX[7] = edtRX07;
  52.     cbRX[8] = cbRX08;   lblRX[8] = lblRX08;   lblRX[8] = lblRXn08;   edtRX[8] = edtRX08;
  53.     cbRX[9] = cbRX09;   lblRX[9] = lblRX09;   lblRX[9] = lblRXn09;   edtRX[9] = edtRX09;
  54.     cbRX[10] = cbRX10;   lblRX[10] = lblRX10;   lblRX[10] = lblRXn10;   edtRX[10] = edtRX10;
  55.     cbRX[11] = cbRX11;   lblRX[11] = lblRX11;   lblRX[11] = lblRXn11;   edtRX[11] = edtRX11;
  56.     cbRX[12] = cbRX12;   lblRX[12] = lblRX12;   lblRX[12] = lblRXn12;   edtRX[12] = edtRX12;
  57.     cbRX[13] = cbRX13;   lblRX[13] = lblRX13;   lblRX[13] = lblRXn13;   edtRX[13] = edtRX13;
  58.     cbRX[14] = cbRX14;   lblRX[14] = lblRX14;   lblRX[14] = lblRXn14;   edtRX[14] = edtRX14;
  59.     // BBP Configuration
  60.     cbBBPC[0] = cbBBPC000;   lblBBPC[0] = lblBBPC000;   lblBBPCn[0] = lblBBPCn000;   edtBBPC[0] = edtBBPC000;
  61.     cbBBPC[1] = cbBBPC001;   lblBBPC[1] = lblBBPC001;   lblBBPCn[1] = lblBBPCn001;   edtBBPC[1] = edtBBPC001;
  62.     cbBBPC[2] = cbBBPC002;   lblBBPC[2] = lblBBPC002;   lblBBPCn[2] = lblBBPCn002;   edtBBPC[2] = edtBBPC002;
  63.     cbBBPC[3] = cbBBPC003;   lblBBPC[3] = lblBBPC003;   lblBBPCn[3] = lblBBPCn003;   edtBBPC[3] = edtBBPC003;
  64.     cbBBPC[4] = cbBBPC004;   lblBBPC[4] = lblBBPC004;   lblBBPCn[4] = lblBBPCn004;   edtBBPC[4] = edtBBPC004;
  65.     cbBBPC[5] = cbBBPC005;   lblBBPC[5] = lblBBPC005;   lblBBPCn[5] = lblBBPCn005;   edtBBPC[5] = edtBBPC005;
  66.     cbBBPC[6] = cbBBPC006;   lblBBPC[6] = lblBBPC006;   lblBBPCn[6] = lblBBPCn006;   edtBBPC[6] = edtBBPC006;
  67.     cbBBPC[7] = cbBBPC007;   lblBBPC[7] = lblBBPC007;   lblBBPCn[7] = lblBBPCn007;   edtBBPC[7] = edtBBPC007;
  68.     cbBBPC[8] = cbBBPC008;   lblBBPC[8] = lblBBPC008;   lblBBPCn[8] = lblBBPCn008;   edtBBPC[8] = edtBBPC008;
  69.     cbBBPC[9] = cbBBPC009;   lblBBPC[9] = lblBBPC009;   lblBBPCn[9] = lblBBPCn009;   edtBBPC[9] = edtBBPC009;
  70.     cbBBPC[10] = cbBBPC010;   lblBBPC[10] = lblBBPC010;   lblBBPCn[10] = lblBBPCn010;   edtBBPC[10] = edtBBPC010;
  71.     cbBBPC[11] = cbBBPC011;   lblBBPC[11] = lblBBPC011;   lblBBPCn[11] = lblBBPCn011;   edtBBPC[11] = edtBBPC011;
  72.     cbBBPC[12] = cbBBPC012;   lblBBPC[12] = lblBBPC012;   lblBBPCn[12] = lblBBPCn012;   edtBBPC[12] = edtBBPC012;
  73.     cbBBPC[13] = cbBBPC013;   lblBBPC[13] = lblBBPC013;   lblBBPCn[13] = lblBBPCn013;   edtBBPC[13] = edtBBPC013;
  74.     cbBBPC[14] = cbBBPC014;   lblBBPC[14] = lblBBPC014;   lblBBPCn[14] = lblBBPCn014;   edtBBPC[14] = edtBBPC014;
  75.     cbBBPC[15] = cbBBPC015;   lblBBPC[15] = lblBBPC015;   lblBBPCn[15] = lblBBPCn015;   edtBBPC[15] = edtBBPC015;
  76.     cbBBPC[16] = cbBBPC016;   lblBBPC[16] = lblBBPC016;   lblBBPCn[16] = lblBBPCn016;   edtBBPC[16] = edtBBPC016;
  77.     cbBBPC[17] = cbBBPC017;   lblBBPC[17] = lblBBPC017;   lblBBPCn[17] = lblBBPCn017;   edtBBPC[17] = edtBBPC017;
  78.     cbBBPC[18] = cbBBPC018;   lblBBPC[18] = lblBBPC018;   lblBBPCn[18] = lblBBPCn018;   edtBBPC[18] = edtBBPC018;
  79.     cbBBPC[19] = cbBBPC019;   lblBBPC[19] = lblBBPC019;   lblBBPCn[19] = lblBBPCn019;   edtBBPC[19] = edtBBPC019;
  80.     cbBBPC[20] = cbBBPC020;   lblBBPC[20] = lblBBPC020;   lblBBPCn[20] = lblBBPCn020;   edtBBPC[20] = edtBBPC020;
  81.     cbBBPC[21] = cbBBPC021;   lblBBPC[21] = lblBBPC021;   lblBBPCn[21] = lblBBPCn021;   edtBBPC[21] = edtBBPC021;
  82.     cbBBPC[22] = cbBBPC022;   lblBBPC[22] = lblBBPC022;   lblBBPCn[22] = lblBBPCn022;   edtBBPC[22] = edtBBPC022;
  83.     cbBBPC[23] = cbBBPC023;   lblBBPC[23] = lblBBPC023;   lblBBPCn[23] = lblBBPCn023;   edtBBPC[23] = edtBBPC023;
  84.     cbBBPC[24] = cbBBPC024;   lblBBPC[24] = lblBBPC024;   lblBBPCn[24] = lblBBPCn024;   edtBBPC[24] = edtBBPC024;
  85.     cbBBPC[25] = cbBBPC025;   lblBBPC[25] = lblBBPC025;   lblBBPCn[25] = lblBBPCn025;   edtBBPC[25] = edtBBPC025;
  86.     cbBBPC[26] = cbBBPC026;   lblBBPC[26] = lblBBPC026;   lblBBPCn[26] = lblBBPCn026;   edtBBPC[26] = edtBBPC026;
  87.     cbBBPC[27] = cbBBPC027;   lblBBPC[27] = lblBBPC027;   lblBBPCn[27] = lblBBPCn027;   edtBBPC[27] = edtBBPC027;
  88.     cbBBPC[28] = cbBBPC028;   lblBBPC[28] = lblBBPC028;   lblBBPCn[28] = lblBBPCn028;   edtBBPC[28] = edtBBPC028;
  89.     cbBBPC[29] = cbBBPC029;   lblBBPC[29] = lblBBPC029;   lblBBPCn[29] = lblBBPCn029;   edtBBPC[29] = edtBBPC029;
  90.     cbBBPC[30] = cbBBPC030;   lblBBPC[30] = lblBBPC030;   lblBBPCn[30] = lblBBPCn030;   edtBBPC[30] = edtBBPC030;
  91.     cbBBPC[31] = cbBBPC031;   lblBBPC[31] = lblBBPC031;   lblBBPCn[31] = lblBBPCn031;   edtBBPC[31] = edtBBPC031;
  92.     cbBBPC[32] = cbBBPC032;   lblBBPC[32] = lblBBPC032;   lblBBPCn[32] = lblBBPCn032;   edtBBPC[32] = edtBBPC032;
  93.     cbBBPC[33] = cbBBPC033;   lblBBPC[33] = lblBBPC033;   lblBBPCn[33] = lblBBPCn033;   edtBBPC[33] = edtBBPC033;
  94.     cbBBPC[34] = cbBBPC034;   lblBBPC[34] = lblBBPC034;   lblBBPCn[34] = lblBBPCn034;   edtBBPC[34] = edtBBPC034;
  95.     cbBBPC[35] = cbBBPC035;   lblBBPC[35] = lblBBPC035;   lblBBPCn[35] = lblBBPCn035;   edtBBPC[35] = edtBBPC035;
  96.     cbBBPC[36] = cbBBPC036;   lblBBPC[36] = lblBBPC036;   lblBBPCn[36] = lblBBPCn036;   edtBBPC[36] = edtBBPC036;
  97.     cbBBPC[37] = cbBBPC037;   lblBBPC[37] = lblBBPC037;   lblBBPCn[37] = lblBBPCn037;   edtBBPC[37] = edtBBPC037;
  98.     cbBBPC[38] = cbBBPC038;   lblBBPC[38] = lblBBPC038;   lblBBPCn[38] = lblBBPCn038;   edtBBPC[38] = edtBBPC038;
  99.     cbBBPC[39] = cbBBPC039;   lblBBPC[39] = lblBBPC039;   lblBBPCn[39] = lblBBPCn039;   edtBBPC[39] = edtBBPC039;
  100.     cbBBPC[40] = cbBBPC040;   lblBBPC[40] = lblBBPC040;   lblBBPCn[40] = lblBBPCn040;   edtBBPC[40] = edtBBPC040;
  101.     cbBBPC[41] = cbBBPC041;   lblBBPC[41] = lblBBPC041;   lblBBPCn[41] = lblBBPCn041;   edtBBPC[41] = edtBBPC041;
  102.     cbBBPC[42] = cbBBPC042;   lblBBPC[42] = lblBBPC042;   lblBBPCn[42] = lblBBPCn042;   edtBBPC[42] = edtBBPC042;
  103.     cbBBPC[43] = cbBBPC043;   lblBBPC[43] = lblBBPC043;   lblBBPCn[43] = lblBBPCn043;   edtBBPC[43] = edtBBPC043;
  104.     cbBBPC[44] = cbBBPC044;   lblBBPC[44] = lblBBPC044;   lblBBPCn[44] = lblBBPCn044;   edtBBPC[44] = edtBBPC044;
  105.     cbBBPC[45] = cbBBPC045;   lblBBPC[45] = lblBBPC045;   lblBBPCn[45] = lblBBPCn045;   edtBBPC[45] = edtBBPC045;
  106.     cbBBPC[46] = cbBBPC046;   lblBBPC[46] = lblBBPC046;   lblBBPCn[46] = lblBBPCn046;   edtBBPC[46] = edtBBPC046;
  107.     cbBBPC[47] = cbBBPC047;   lblBBPC[47] = lblBBPC047;   lblBBPCn[47] = lblBBPCn047;   edtBBPC[47] = edtBBPC047;
  108.     cbBBPC[48] = cbBBPC048;   lblBBPC[48] = lblBBPC048;   lblBBPCn[48] = lblBBPCn048;   edtBBPC[48] = edtBBPC048;
  109.     cbBBPC[49] = cbBBPC049;   lblBBPC[49] = lblBBPC049;   lblBBPCn[49] = lblBBPCn049;   edtBBPC[49] = edtBBPC049;
  110.     cbBBPC[50] = cbBBPC050;   lblBBPC[50] = lblBBPC050;   lblBBPCn[50] = lblBBPCn050;   edtBBPC[50] = edtBBPC050;
  111.     cbBBPC[51] = cbBBPC051;   lblBBPC[51] = lblBBPC051;   lblBBPCn[51] = lblBBPCn051;   edtBBPC[51] = edtBBPC051;
  112.     cbBBPC[52] = cbBBPC052;   lblBBPC[52] = lblBBPC052;   lblBBPCn[52] = lblBBPCn052;   edtBBPC[52] = edtBBPC052;
  113.     cbBBPC[53] = cbBBPC053;   lblBBPC[53] = lblBBPC053;   lblBBPCn[53] = lblBBPCn053;   edtBBPC[53] = edtBBPC053;
  114.     cbBBPC[54] = cbBBPC054;   lblBBPC[54] = lblBBPC054;   lblBBPCn[54] = lblBBPCn054;   edtBBPC[54] = edtBBPC054;
  115.     cbBBPC[55] = cbBBPC055;   lblBBPC[55] = lblBBPC055;   lblBBPCn[55] = lblBBPCn055;   edtBBPC[55] = edtBBPC055;
  116.     cbBBPC[56] = cbBBPC056;   lblBBPC[56] = lblBBPC056;   lblBBPCn[56] = lblBBPCn056;   edtBBPC[56] = edtBBPC056;
  117.     cbBBPC[57] = cbBBPC057;   lblBBPC[57] = lblBBPC057;   lblBBPCn[57] = lblBBPCn057;   edtBBPC[57] = edtBBPC057;
  118.     cbBBPC[58] = cbBBPC058;   lblBBPC[58] = lblBBPC058;   lblBBPCn[58] = lblBBPCn058;   edtBBPC[58] = edtBBPC058;
  119.     cbBBPC[59] = cbBBPC059;   lblBBPC[59] = lblBBPC059;   lblBBPCn[59] = lblBBPCn059;   edtBBPC[59] = edtBBPC059;
  120.     cbBBPC[60] = cbBBPC060;   lblBBPC[60] = lblBBPC060;   lblBBPCn[60] = lblBBPCn060;   edtBBPC[60] = edtBBPC060;
  121.     cbBBPC[61] = cbBBPC061;   lblBBPC[61] = lblBBPC061;   lblBBPCn[61] = lblBBPCn061;   edtBBPC[61] = edtBBPC061;
  122.     cbBBPC[62] = cbBBPC062;   lblBBPC[62] = lblBBPC062;   lblBBPCn[62] = lblBBPCn062;   edtBBPC[62] = edtBBPC062;
  123.     cbBBPC[63] = cbBBPC063;   lblBBPC[63] = lblBBPC063;   lblBBPCn[63] = lblBBPCn063;   edtBBPC[63] = edtBBPC063;
  124.     cbBBPC[64] = cbBBPC064;   lblBBPC[64] = lblBBPC064;   lblBBPCn[64] = lblBBPCn064;   edtBBPC[64] = edtBBPC064;
  125.     cbBBPC[65] = cbBBPC065;   lblBBPC[65] = lblBBPC065;   lblBBPCn[65] = lblBBPCn065;   edtBBPC[65] = edtBBPC065;
  126.     cbBBPC[66] = cbBBPC066;   lblBBPC[66] = lblBBPC066;   lblBBPCn[66] = lblBBPCn066;   edtBBPC[66] = edtBBPC066;
  127.     cbBBPC[67] = cbBBPC067;   lblBBPC[67] = lblBBPC067;   lblBBPCn[67] = lblBBPCn067;   edtBBPC[67] = edtBBPC067;
  128.     cbBBPC[68] = cbBBPC068;   lblBBPC[68] = lblBBPC068;   lblBBPCn[68] = lblBBPCn068;   edtBBPC[68] = edtBBPC068;
  129.     cbBBPC[69] = cbBBPC069;   lblBBPC[69] = lblBBPC069;   lblBBPCn[69] = lblBBPCn069;   edtBBPC[69] = edtBBPC069;
  130.     cbBBPC[70] = cbBBPC070;   lblBBPC[70] = lblBBPC070;   lblBBPCn[70] = lblBBPCn070;   edtBBPC[70] = edtBBPC070;
  131.     cbBBPC[71] = cbBBPC071;   lblBBPC[71] = lblBBPC071;   lblBBPCn[71] = lblBBPCn071;   edtBBPC[71] = edtBBPC071;
  132.     cbBBPC[72] = cbBBPC072;   lblBBPC[72] = lblBBPC072;   lblBBPCn[72] = lblBBPCn072;   edtBBPC[72] = edtBBPC072;
  133.     cbBBPC[73] = cbBBPC073;   lblBBPC[73] = lblBBPC073;   lblBBPCn[73] = lblBBPCn073;   edtBBPC[73] = edtBBPC073;
  134.     // set name property
  135.     // Initialization and PHY-Configuration
  136.     m_sBBCR_Setting[WIFI_BBCR_IPC][0].name = "DEV_ID";
  137.     m_sBBCR_Setting[WIFI_BBCR_IPC][1].name = "IO_POLAR";
  138.     m_sBBCR_Setting[WIFI_BBCR_IPC][2].name = "TR_CFG1";
  139.     m_sBBCR_Setting[WIFI_BBCR_IPC][3].name = "TR_CFG2";
  140.     m_sBBCR_Setting[WIFI_BBCR_IPC][4].name = "INT_CSR";
  141.     // TX-related
  142.     m_sBBCR_Setting[WIFI_BBCR_TX][0].name = "TX_STAT";
  143.     m_sBBCR_Setting[WIFI_BBCR_TX][1].name = "TX_LEN_H";
  144.     m_sBBCR_Setting[WIFI_BBCR_TX][2].name = "TX_LEN_L";
  145.     m_sBBCR_Setting[WIFI_BBCR_TX][3].name = "TX_SV_O_H";
  146.     m_sBBCR_Setting[WIFI_BBCR_TX][4].name = "TX_SV_O_L";
  147.     m_sBBCR_Setting[WIFI_BBCR_TX][5].name = "TX_SV_CCK";
  148.     m_sBBCR_Setting[WIFI_BBCR_TX][6].name = "TXPWR_OFD";
  149.     m_sBBCR_Setting[WIFI_BBCR_TX][7].name = "TXPWR_CCK";
  150.     m_sBBCR_Setting[WIFI_BBCR_TX][8].name = "PAPWR_H";
  151.     m_sBBCR_Setting[WIFI_BBCR_TX][9].name = "PAPWR_L";
  152.     // RX-related
  153.     m_sBBCR_Setting[WIFI_BBCR_RX][0].name = "RX_STAT";
  154.     m_sBBCR_Setting[WIFI_BBCR_RX][1].name = "RX_LEN_H";
  155.     m_sBBCR_Setting[WIFI_BBCR_RX][2].name = "RX_LEN_L";
  156.     m_sBBCR_Setting[WIFI_BBCR_RX][3].name = "RX_SVR_H";
  157.     m_sBBCR_Setting[WIFI_BBCR_RX][4].name = "RX_SVR_L";
  158.     m_sBBCR_Setting[WIFI_BBCR_RX][5].name = "RSSI";
  159.     m_sBBCR_Setting[WIFI_BBCR_RX][6].name = "SQ_B5";
  160.     m_sBBCR_Setting[WIFI_BBCR_RX][7].name = "SQ_B4";
  161.     m_sBBCR_Setting[WIFI_BBCR_RX][8].name = "SQ_B3";
  162.     m_sBBCR_Setting[WIFI_BBCR_RX][9].name = "SQ_B2";
  163.     m_sBBCR_Setting[WIFI_BBCR_RX][10].name = "SQ_B1";
  164.     m_sBBCR_Setting[WIFI_BBCR_RX][11].name = "SQ_B0";
  165.     m_sBBCR_Setting[WIFI_BBCR_RX][12].name = "RADAR_PW";
  166.     m_sBBCR_Setting[WIFI_BBCR_RX][13].name = "RADAR_PWR";
  167.     m_sBBCR_Setting[WIFI_BBCR_RX][14].name = "CR38";
  168.     // BBP Configuration
  169.     m_sBBCR_Setting[WIFI_BBCR_BBPC][0].name = "ODTX_BF_ADDR";
  170.     m_sBBCR_Setting[WIFI_BBCR_BBPC][1].name = "ODTX_BF_DATA";
  171.     m_sBBCR_Setting[WIFI_BBCR_BBPC][2].name = "ODTX_FT_ADDR";
  172.     m_sBBCR_Setting[WIFI_BBCR_BBPC][3].name = "ODTX_FT_DATA";
  173.     m_sBBCR_Setting[WIFI_BBCR_BBPC][4].name = "CCKTX_F_ADDR";
  174.     m_sBBCR_Setting[WIFI_BBCR_BBPC][5].name = "CCKTX_F_DATA";
  175.     m_sBBCR_Setting[WIFI_BBCR_BBPC][6].name = "AGC_ADDR";
  176.     m_sBBCR_Setting[WIFI_BBCR_BBPC][7].name = "AGC_DATA";
  177.     m_sBBCR_Setting[WIFI_BBCR_BBPC][8].name = "OFDM_TR_ADDR";
  178.     m_sBBCR_Setting[WIFI_BBCR_BBPC][9].name = "OFDM_TR_DATA";
  179.     m_sBBCR_Setting[WIFI_BBCR_BBPC][10].name = "CCK_SQ_1";
  180.     m_sBBCR_Setting[WIFI_BBCR_BBPC][11].name = "CCK_SQ_2";
  181.     m_sBBCR_Setting[WIFI_BBCR_BBPC][12].name = "CCK_CE_TH";
  182.     m_sBBCR_Setting[WIFI_BBCR_BBPC][13].name = "CCK_L_PRM";
  183.     m_sBBCR_Setting[WIFI_BBCR_BBPC][14].name = "CCK_S_PRM";
  184.     m_sBBCR_Setting[WIFI_BBCR_BBPC][15].name = "CCK_PREAMB_LEN";
  185.     m_sBBCR_Setting[WIFI_BBCR_BBPC][16].name = "CCK_MISC_1";
  186.     m_sBBCR_Setting[WIFI_BBCR_BBPC][17].name = "CCK_MISC_2";
  187.     m_sBBCR_Setting[WIFI_BBCR_BBPC][18].name = "CCK_MISC_3";
  188.     m_sBBCR_Setting[WIFI_BBCR_BBPC][19].name = "MPDU_ANT_CTL";
  189.     m_sBBCR_Setting[WIFI_BBCR_BBPC][20].name = "MPDU_ANT_TMO";
  190.     m_sBBCR_Setting[WIFI_BBCR_BBPC][21].name = "AP_ADDRB5";
  191.     m_sBBCR_Setting[WIFI_BBCR_BBPC][22].name = "AP_ADDRB4";
  192.     m_sBBCR_Setting[WIFI_BBCR_BBPC][23].name = "AP_ADDRB3";
  193.     m_sBBCR_Setting[WIFI_BBCR_BBPC][24].name = "AP_ADDRB2";
  194.     m_sBBCR_Setting[WIFI_BBCR_BBPC][25].name = "AP_ADDRB1";
  195.     m_sBBCR_Setting[WIFI_BBCR_BBPC][26].name = "AP_ADDRB0";
  196.     m_sBBCR_Setting[WIFI_BBCR_BBPC][27].name = "OFDM_MISC1_CTL";
  197.     m_sBBCR_Setting[WIFI_BBCR_BBPC][28].name = "OFDM_MISC2_CTL";
  198.     m_sBBCR_Setting[WIFI_BBCR_BBPC][29].name = "OFDM_ACQ_SHORT";
  199.     m_sBBCR_Setting[WIFI_BBCR_BBPC][30].name = "OFDM_ACQ_LONG";
  200.     m_sBBCR_Setting[WIFI_BBCR_BBPC][31].name = "AFEBandGAP";
  201.     m_sBBCR_Setting[WIFI_BBCR_BBPC][32].name = "AFEPowerDOWN";
  202.     m_sBBCR_Setting[WIFI_BBCR_BBPC][33].name = "AFETx_DAC";
  203.     m_sBBCR_Setting[WIFI_BBCR_BBPC][34].name = "AFETx_DAC";
  204.     m_sBBCR_Setting[WIFI_BBCR_BBPC][35].name = "AFETx_DAC_FD";
  205.     m_sBBCR_Setting[WIFI_BBCR_BBPC][36].name = "Test_MODE1";
  206.     m_sBBCR_Setting[WIFI_BBCR_BBPC][37].name = "Test_MODE2";
  207.     m_sBBCR_Setting[WIFI_BBCR_BBPC][38].name = "Test_MODE3";
  208.     m_sBBCR_Setting[WIFI_BBCR_BBPC][39].name = "Test_MODE4";
  209.     m_sBBCR_Setting[WIFI_BBCR_BBPC][40].name = "AFE_Rx_ADC";
  210.     m_sBBCR_Setting[WIFI_BBCR_BBPC][41].name = "AFE_Rx_ADC";
  211.     m_sBBCR_Setting[WIFI_BBCR_BBPC][42].name = "AFE_ADC";
  212.     m_sBBCR_Setting[WIFI_BBCR_BBPC][43].name = "AFE_ALC_ADC";
  213.     m_sBBCR_Setting[WIFI_BBCR_BBPC][44].name = "AFE_ALC_ADC";
  214.     m_sBBCR_Setting[WIFI_BBCR_BBPC][45].name = "CNTR_CTL";
  215.     m_sBBCR_Setting[WIFI_BBCR_BBPC][46].name = "N_ED_PASS_H";
  216.     m_sBBCR_Setting[WIFI_BBCR_BBPC][47].name = "N_ED_PASS_L";
  217.     m_sBBCR_Setting[WIFI_BBCR_BBPC][48].name = "N_OSD_PASS_H";
  218.     m_sBBCR_Setting[WIFI_BBCR_BBPC][49].name = "N_OSD_PASS_L";
  219.     m_sBBCR_Setting[WIFI_BBCR_BBPC][50].name = "N_mdrdy_PASS_H";
  220.     m_sBBCR_Setting[WIFI_BBCR_BBPC][51].name = "N_mdrdy_PASS_L";
  221.     m_sBBCR_Setting[WIFI_BBCR_BBPC][52].name = "N_SQ1_PASS_H";
  222.     m_sBBCR_Setting[WIFI_BBCR_BBPC][53].name = "N_SQ1_PASS_L";
  223.     m_sBBCR_Setting[WIFI_BBCR_BBPC][54].name = "RxADCI_prob_O";
  224.     m_sBBCR_Setting[WIFI_BBCR_BBPC][55].name = "RxADCQ_prob_O";
  225.     m_sBBCR_Setting[WIFI_BBCR_BBPC][56].name = "N_CRC16_PASS_H";
  226.     m_sBBCR_Setting[WIFI_BBCR_BBPC][57].name = "N_CRC16_PASS_L";
  227.     m_sBBCR_Setting[WIFI_BBCR_BBPC][58].name = "N_CCK_SFD_PASS_H";
  228.     m_sBBCR_Setting[WIFI_BBCR_BBPC][59].name = "N_CCK_SFD_PASS_L";
  229.     m_sBBCR_Setting[WIFI_BBCR_BBPC][60].name = "N_CCK_FCS_PASS_H";
  230.     m_sBBCR_Setting[WIFI_BBCR_BBPC][61].name = "N_CCK_FCS_PASS_L";
  231.     m_sBBCR_Setting[WIFI_BBCR_BBPC][62].name = "Noise_floor_H";
  232.     m_sBBCR_Setting[WIFI_BBCR_BBPC][63].name = "Noise_floor_L";
  233.     m_sBBCR_Setting[WIFI_BBCR_BBPC][64].name = "Instant_Rx_PWR";
  234.     m_sBBCR_Setting[WIFI_BBCR_BBPC][65].name = "CCK_CMF_ERR_RDBK";
  235.     m_sBBCR_Setting[WIFI_BBCR_BBPC][66].name = "PostAGC_ACCUM_H";
  236.     m_sBBCR_Setting[WIFI_BBCR_BBPC][67].name = "PostAGC_ACCUM_L";
  237.     m_sBBCR_Setting[WIFI_BBCR_BBPC][68].name = "RPI_CNT_H_BYTE";
  238.     m_sBBCR_Setting[WIFI_BBCR_BBPC][69].name = "RPI_CNT_L_BYTE";
  239.     m_sBBCR_Setting[WIFI_BBCR_BBPC][70].name = "RPI_CTL_REG";
  240.     m_sBBCR_Setting[WIFI_BBCR_BBPC][71].name = "RPI_TH_Addr";
  241.     m_sBBCR_Setting[WIFI_BBCR_BBPC][72].name = "RPI_TH_Data";
  242.     m_sBBCR_Setting[WIFI_BBCR_BBPC][73].name = "RDD_Counter";
  243.     
  244.     // set idx property
  245.     // Initialization and PHY-Configuration
  246.     m_sBBCR_Setting[WIFI_BBCR_IPC][0].idx = 0;
  247.     m_sBBCR_Setting[WIFI_BBCR_IPC][1].idx = 1;
  248.     m_sBBCR_Setting[WIFI_BBCR_IPC][2].idx = 2;
  249.     m_sBBCR_Setting[WIFI_BBCR_IPC][3].idx = 3;
  250.     m_sBBCR_Setting[WIFI_BBCR_IPC][4].idx = 4;
  251.     // TX-related
  252.     m_sBBCR_Setting[WIFI_BBCR_TX][0].idx =  8;
  253.     m_sBBCR_Setting[WIFI_BBCR_TX][1].idx =  9;
  254.     m_sBBCR_Setting[WIFI_BBCR_TX][2].idx = 10;
  255.     m_sBBCR_Setting[WIFI_BBCR_TX][3].idx = 11;
  256.     m_sBBCR_Setting[WIFI_BBCR_TX][4].idx = 12;
  257.     m_sBBCR_Setting[WIFI_BBCR_TX][5].idx = 13;
  258.     m_sBBCR_Setting[WIFI_BBCR_TX][6].idx = 14;
  259.     m_sBBCR_Setting[WIFI_BBCR_TX][7].idx = 15;
  260.     m_sBBCR_Setting[WIFI_BBCR_TX][8].idx = 16;
  261.     m_sBBCR_Setting[WIFI_BBCR_TX][9].idx = 17;
  262.     // RX-related
  263.     m_sBBCR_Setting[WIFI_BBCR_RX][0].idx = 24;
  264.     m_sBBCR_Setting[WIFI_BBCR_RX][1].idx = 25;
  265.     m_sBBCR_Setting[WIFI_BBCR_RX][2].idx = 26;
  266.     m_sBBCR_Setting[WIFI_BBCR_RX][3].idx = 27;
  267.     m_sBBCR_Setting[WIFI_BBCR_RX][4].idx = 28;
  268.     m_sBBCR_Setting[WIFI_BBCR_RX][5].idx = 29;
  269.     m_sBBCR_Setting[WIFI_BBCR_RX][6].idx = 30;
  270.     m_sBBCR_Setting[WIFI_BBCR_RX][7].idx = 31;
  271.     m_sBBCR_Setting[WIFI_BBCR_RX][8].idx = 32;
  272.     m_sBBCR_Setting[WIFI_BBCR_RX][9].idx = 33;
  273.     m_sBBCR_Setting[WIFI_BBCR_RX][10].idx = 34;
  274.     m_sBBCR_Setting[WIFI_BBCR_RX][11].idx = 35;
  275.     m_sBBCR_Setting[WIFI_BBCR_RX][12].idx = 36;
  276.     m_sBBCR_Setting[WIFI_BBCR_RX][13].idx = 37;
  277.     m_sBBCR_Setting[WIFI_BBCR_RX][14].idx = 38;
  278.     // BBP Configuration
  279.     m_sBBCR_Setting[WIFI_BBCR_BBPC][0].idx = 39;
  280.     m_sBBCR_Setting[WIFI_BBCR_BBPC][1].idx = 40;
  281.     m_sBBCR_Setting[WIFI_BBCR_BBPC][2].idx = 41;
  282.     m_sBBCR_Setting[WIFI_BBCR_BBPC][3].idx = 42;
  283.     m_sBBCR_Setting[WIFI_BBCR_BBPC][4].idx = 43;
  284.     m_sBBCR_Setting[WIFI_BBCR_BBPC][5].idx = 44;
  285.     m_sBBCR_Setting[WIFI_BBCR_BBPC][6].idx = 45;
  286.     m_sBBCR_Setting[WIFI_BBCR_BBPC][7].idx = 46;
  287.     m_sBBCR_Setting[WIFI_BBCR_BBPC][8].idx = 47;
  288.     m_sBBCR_Setting[WIFI_BBCR_BBPC][9].idx = 48;
  289.     m_sBBCR_Setting[WIFI_BBCR_BBPC][10].idx = 49;
  290.     m_sBBCR_Setting[WIFI_BBCR_BBPC][11].idx = 50;
  291.     m_sBBCR_Setting[WIFI_BBCR_BBPC][12].idx = 56;
  292.     m_sBBCR_Setting[WIFI_BBCR_BBPC][13].idx = 59;
  293.     m_sBBCR_Setting[WIFI_BBCR_BBPC][14].idx = 60;
  294.     m_sBBCR_Setting[WIFI_BBCR_BBPC][15].idx = 61;
  295.     m_sBBCR_Setting[WIFI_BBCR_BBPC][16].idx = 62;
  296.     m_sBBCR_Setting[WIFI_BBCR_BBPC][17].idx = 63;
  297.     m_sBBCR_Setting[WIFI_BBCR_BBPC][18].idx = 64;
  298.     m_sBBCR_Setting[WIFI_BBCR_BBPC][19].idx = 68;
  299.     m_sBBCR_Setting[WIFI_BBCR_BBPC][20].idx = 69;
  300.     m_sBBCR_Setting[WIFI_BBCR_BBPC][21].idx = 70;
  301.     m_sBBCR_Setting[WIFI_BBCR_BBPC][22].idx = 71;
  302.     m_sBBCR_Setting[WIFI_BBCR_BBPC][23].idx = 72;
  303.     m_sBBCR_Setting[WIFI_BBCR_BBPC][24].idx = 73;
  304.     m_sBBCR_Setting[WIFI_BBCR_BBPC][25].idx = 74;
  305.     m_sBBCR_Setting[WIFI_BBCR_BBPC][26].idx = 75;
  306.     m_sBBCR_Setting[WIFI_BBCR_BBPC][27].idx = 76;
  307.     m_sBBCR_Setting[WIFI_BBCR_BBPC][28].idx = 77;
  308.     m_sBBCR_Setting[WIFI_BBCR_BBPC][29].idx = 78;
  309.     m_sBBCR_Setting[WIFI_BBCR_BBPC][30].idx = 79;
  310.     m_sBBCR_Setting[WIFI_BBCR_BBPC][31].idx = 81;
  311.     m_sBBCR_Setting[WIFI_BBCR_BBPC][32].idx = 82;
  312.     m_sBBCR_Setting[WIFI_BBCR_BBPC][33].idx = 83;
  313.     m_sBBCR_Setting[WIFI_BBCR_BBPC][34].idx = 84;
  314.     m_sBBCR_Setting[WIFI_BBCR_BBPC][35].idx = 85;
  315.     m_sBBCR_Setting[WIFI_BBCR_BBPC][36].idx = 88;
  316.     m_sBBCR_Setting[WIFI_BBCR_BBPC][37].idx = 89;
  317.     m_sBBCR_Setting[WIFI_BBCR_BBPC][38].idx = 90;
  318.     m_sBBCR_Setting[WIFI_BBCR_BBPC][39].idx = 91;
  319.     m_sBBCR_Setting[WIFI_BBCR_BBPC][40].idx = 92;
  320.     m_sBBCR_Setting[WIFI_BBCR_BBPC][41].idx = 93;
  321.     m_sBBCR_Setting[WIFI_BBCR_BBPC][42].idx = 94;
  322.     m_sBBCR_Setting[WIFI_BBCR_BBPC][43].idx = 95;
  323.     m_sBBCR_Setting[WIFI_BBCR_BBPC][44].idx = 96;
  324.     m_sBBCR_Setting[WIFI_BBCR_BBPC][45].idx = 97;
  325.     m_sBBCR_Setting[WIFI_BBCR_BBPC][46].idx = 98;
  326.     m_sBBCR_Setting[WIFI_BBCR_BBPC][47].idx = 99;
  327.     m_sBBCR_Setting[WIFI_BBCR_BBPC][48].idx = 100;
  328.     m_sBBCR_Setting[WIFI_BBCR_BBPC][49].idx = 101;
  329.     m_sBBCR_Setting[WIFI_BBCR_BBPC][50].idx = 102;
  330.     m_sBBCR_Setting[WIFI_BBCR_BBPC][51].idx = 103;
  331.     m_sBBCR_Setting[WIFI_BBCR_BBPC][52].idx = 104;
  332.     m_sBBCR_Setting[WIFI_BBCR_BBPC][53].idx = 105;
  333.     m_sBBCR_Setting[WIFI_BBCR_BBPC][54].idx = 106;
  334.     m_sBBCR_Setting[WIFI_BBCR_BBPC][55].idx = 107;
  335.     m_sBBCR_Setting[WIFI_BBCR_BBPC][56].idx = 108;
  336.     m_sBBCR_Setting[WIFI_BBCR_BBPC][57].idx = 109;
  337.     m_sBBCR_Setting[WIFI_BBCR_BBPC][58].idx = 110;
  338.     m_sBBCR_Setting[WIFI_BBCR_BBPC][59].idx = 111;
  339.     m_sBBCR_Setting[WIFI_BBCR_BBPC][60].idx = 112;
  340.     m_sBBCR_Setting[WIFI_BBCR_BBPC][61].idx = 113;
  341.     m_sBBCR_Setting[WIFI_BBCR_BBPC][62].idx = 114;
  342.     m_sBBCR_Setting[WIFI_BBCR_BBPC][63].idx = 115;
  343.     m_sBBCR_Setting[WIFI_BBCR_BBPC][64].idx = 116;
  344.     m_sBBCR_Setting[WIFI_BBCR_BBPC][65].idx = 117;
  345.     m_sBBCR_Setting[WIFI_BBCR_BBPC][66].idx = 118;
  346.     m_sBBCR_Setting[WIFI_BBCR_BBPC][67].idx = 119;
  347.     m_sBBCR_Setting[WIFI_BBCR_BBPC][68].idx = 120;
  348.     m_sBBCR_Setting[WIFI_BBCR_BBPC][69].idx = 121;
  349.     m_sBBCR_Setting[WIFI_BBCR_BBPC][70].idx = 122;
  350.     m_sBBCR_Setting[WIFI_BBCR_BBPC][71].idx = 123;
  351.     m_sBBCR_Setting[WIFI_BBCR_BBPC][72].idx = 124;
  352.     m_sBBCR_Setting[WIFI_BBCR_BBPC][73].idx = 125;
  353.     // set addr property
  354.     // Initialization and PHY-Configuration
  355.     m_sBBCR_Setting[WIFI_BBCR_IPC][0].addr = 0x00;
  356.     m_sBBCR_Setting[WIFI_BBCR_IPC][1].addr = 0x02;
  357.     m_sBBCR_Setting[WIFI_BBCR_IPC][2].addr = 0x04;
  358.     m_sBBCR_Setting[WIFI_BBCR_IPC][3].addr = 0x06;
  359.     m_sBBCR_Setting[WIFI_BBCR_IPC][4].addr = 0x08;
  360.     // TX-related
  361.     m_sBBCR_Setting[WIFI_BBCR_TX][0].addr = 0x10;
  362.     m_sBBCR_Setting[WIFI_BBCR_TX][1].addr = 0x12;
  363.     m_sBBCR_Setting[WIFI_BBCR_TX][2].addr = 0x14;
  364.     m_sBBCR_Setting[WIFI_BBCR_TX][3].addr = 0x16;
  365.     m_sBBCR_Setting[WIFI_BBCR_TX][4].addr = 0x18;
  366.     m_sBBCR_Setting[WIFI_BBCR_TX][5].addr = 0x1A;
  367.     m_sBBCR_Setting[WIFI_BBCR_TX][6].addr = 0x1C;
  368.     m_sBBCR_Setting[WIFI_BBCR_TX][7].addr = 0x1E;
  369.     m_sBBCR_Setting[WIFI_BBCR_TX][8].addr = 0x20;
  370.     m_sBBCR_Setting[WIFI_BBCR_TX][9].addr = 0x22;
  371.     // RX-related
  372.     m_sBBCR_Setting[WIFI_BBCR_RX][0].addr = 0x30;
  373.     m_sBBCR_Setting[WIFI_BBCR_RX][1].addr = 0x32;
  374.     m_sBBCR_Setting[WIFI_BBCR_RX][2].addr = 0x34;
  375.     m_sBBCR_Setting[WIFI_BBCR_RX][3].addr = 0x36;
  376.     m_sBBCR_Setting[WIFI_BBCR_RX][4].addr = 0x38;
  377.     m_sBBCR_Setting[WIFI_BBCR_RX][5].addr = 0x3A;
  378.     m_sBBCR_Setting[WIFI_BBCR_RX][6].addr = 0x3C;
  379.     m_sBBCR_Setting[WIFI_BBCR_RX][7].addr = 0x3E;
  380.     m_sBBCR_Setting[WIFI_BBCR_RX][8].addr = 0x40;
  381.     m_sBBCR_Setting[WIFI_BBCR_RX][9].addr = 0x42;
  382.     m_sBBCR_Setting[WIFI_BBCR_RX][10].addr = 0x44;
  383.     m_sBBCR_Setting[WIFI_BBCR_RX][11].addr = 0x46;
  384.     m_sBBCR_Setting[WIFI_BBCR_RX][12].addr = 0x48;
  385.     m_sBBCR_Setting[WIFI_BBCR_RX][13].addr = 0x4A;
  386.     m_sBBCR_Setting[WIFI_BBCR_RX][14].addr = 0x4C;
  387.     // BBP Configuration
  388.     m_sBBCR_Setting[WIFI_BBCR_BBPC][0].addr = 0x4E;
  389.     m_sBBCR_Setting[WIFI_BBCR_BBPC][1].addr = 0x50;
  390.     m_sBBCR_Setting[WIFI_BBCR_BBPC][2].addr = 0x52;
  391.     m_sBBCR_Setting[WIFI_BBCR_BBPC][3].addr = 0x54;
  392.     m_sBBCR_Setting[WIFI_BBCR_BBPC][4].addr = 0x56;
  393.     m_sBBCR_Setting[WIFI_BBCR_BBPC][5].addr = 0x58;
  394.     m_sBBCR_Setting[WIFI_BBCR_BBPC][6].addr = 0x5A;
  395.     m_sBBCR_Setting[WIFI_BBCR_BBPC][7].addr = 0x5C;
  396.     m_sBBCR_Setting[WIFI_BBCR_BBPC][8].addr = 0x5E;
  397.     m_sBBCR_Setting[WIFI_BBCR_BBPC][9].addr = 0x60;
  398.     m_sBBCR_Setting[WIFI_BBCR_BBPC][10].addr = 0x62;
  399.     m_sBBCR_Setting[WIFI_BBCR_BBPC][11].addr = 0x64;
  400.     m_sBBCR_Setting[WIFI_BBCR_BBPC][12].addr = 0x70;
  401.     m_sBBCR_Setting[WIFI_BBCR_BBPC][13].addr = 0x76;
  402.     m_sBBCR_Setting[WIFI_BBCR_BBPC][14].addr = 0x78;
  403.     m_sBBCR_Setting[WIFI_BBCR_BBPC][15].addr = 0x7A;
  404.     m_sBBCR_Setting[WIFI_BBCR_BBPC][16].addr = 0x7C;
  405.     m_sBBCR_Setting[WIFI_BBCR_BBPC][17].addr = 0x7E;
  406.     m_sBBCR_Setting[WIFI_BBCR_BBPC][18].addr = 0x80;
  407.     m_sBBCR_Setting[WIFI_BBCR_BBPC][19].addr = 0x88;
  408.     m_sBBCR_Setting[WIFI_BBCR_BBPC][20].addr = 0x8A;
  409.     m_sBBCR_Setting[WIFI_BBCR_BBPC][21].addr = 0x8C;
  410.     m_sBBCR_Setting[WIFI_BBCR_BBPC][22].addr = 0x8E;
  411.     m_sBBCR_Setting[WIFI_BBCR_BBPC][23].addr = 0x90;
  412.     m_sBBCR_Setting[WIFI_BBCR_BBPC][24].addr = 0x92;
  413.     m_sBBCR_Setting[WIFI_BBCR_BBPC][25].addr = 0x94;
  414.     m_sBBCR_Setting[WIFI_BBCR_BBPC][26].addr = 0x96;
  415.     m_sBBCR_Setting[WIFI_BBCR_BBPC][27].addr = 0x98;
  416.     m_sBBCR_Setting[WIFI_BBCR_BBPC][28].addr = 0x9A;
  417.     m_sBBCR_Setting[WIFI_BBCR_BBPC][29].addr = 0x9C;
  418.     m_sBBCR_Setting[WIFI_BBCR_BBPC][30].addr = 0x9E;
  419.     m_sBBCR_Setting[WIFI_BBCR_BBPC][31].addr = 0xA2;
  420.     m_sBBCR_Setting[WIFI_BBCR_BBPC][32].addr = 0xA4;
  421.     m_sBBCR_Setting[WIFI_BBCR_BBPC][33].addr = 0xA6;
  422.     m_sBBCR_Setting[WIFI_BBCR_BBPC][34].addr = 0xA8;
  423.     m_sBBCR_Setting[WIFI_BBCR_BBPC][35].addr = 0xAA;
  424.     m_sBBCR_Setting[WIFI_BBCR_BBPC][36].addr = 0xB0;
  425.     m_sBBCR_Setting[WIFI_BBCR_BBPC][37].addr = 0xB2;
  426.     m_sBBCR_Setting[WIFI_BBCR_BBPC][38].addr = 0xB4;
  427.     m_sBBCR_Setting[WIFI_BBCR_BBPC][39].addr = 0xB6;
  428.     m_sBBCR_Setting[WIFI_BBCR_BBPC][40].addr = 0xB8;
  429.     m_sBBCR_Setting[WIFI_BBCR_BBPC][41].addr = 0xBA;
  430.     m_sBBCR_Setting[WIFI_BBCR_BBPC][42].addr = 0xBC;
  431.     m_sBBCR_Setting[WIFI_BBCR_BBPC][43].addr = 0xBE;
  432.     m_sBBCR_Setting[WIFI_BBCR_BBPC][44].addr = 0xC0;
  433.     m_sBBCR_Setting[WIFI_BBCR_BBPC][45].addr = 0xC2;
  434.     m_sBBCR_Setting[WIFI_BBCR_BBPC][46].addr = 0xC4;
  435.     m_sBBCR_Setting[WIFI_BBCR_BBPC][47].addr = 0xC6;
  436.     m_sBBCR_Setting[WIFI_BBCR_BBPC][48].addr = 0xC8;
  437.     m_sBBCR_Setting[WIFI_BBCR_BBPC][49].addr = 0xCA;
  438.     m_sBBCR_Setting[WIFI_BBCR_BBPC][50].addr = 0xCC;
  439.     m_sBBCR_Setting[WIFI_BBCR_BBPC][51].addr = 0xCE;
  440.     m_sBBCR_Setting[WIFI_BBCR_BBPC][52].addr = 0xD0;
  441.     m_sBBCR_Setting[WIFI_BBCR_BBPC][53].addr = 0xD2;
  442.     m_sBBCR_Setting[WIFI_BBCR_BBPC][54].addr = 0xD4;
  443.     m_sBBCR_Setting[WIFI_BBCR_BBPC][55].addr = 0xD6;
  444.     m_sBBCR_Setting[WIFI_BBCR_BBPC][56].addr = 0xD8;
  445.     m_sBBCR_Setting[WIFI_BBCR_BBPC][57].addr = 0xDA;
  446.     m_sBBCR_Setting[WIFI_BBCR_BBPC][58].addr = 0xDC;
  447.     m_sBBCR_Setting[WIFI_BBCR_BBPC][59].addr = 0xDE;
  448.     m_sBBCR_Setting[WIFI_BBCR_BBPC][60].addr = 0xE0;
  449.     m_sBBCR_Setting[WIFI_BBCR_BBPC][61].addr = 0xE2;
  450.     m_sBBCR_Setting[WIFI_BBCR_BBPC][62].addr = 0xE4;
  451.     m_sBBCR_Setting[WIFI_BBCR_BBPC][63].addr = 0xE6;
  452.     m_sBBCR_Setting[WIFI_BBCR_BBPC][64].addr = 0xE8;
  453.     m_sBBCR_Setting[WIFI_BBCR_BBPC][65].addr = 0xEA;
  454.     m_sBBCR_Setting[WIFI_BBCR_BBPC][66].addr = 0xEC;
  455.     m_sBBCR_Setting[WIFI_BBCR_BBPC][67].addr = 0xEE;
  456.     m_sBBCR_Setting[WIFI_BBCR_BBPC][68].addr = 0xF0;
  457.     m_sBBCR_Setting[WIFI_BBCR_BBPC][69].addr = 0xF2;
  458.     m_sBBCR_Setting[WIFI_BBCR_BBPC][70].addr = 0xF4;
  459.     m_sBBCR_Setting[WIFI_BBCR_BBPC][71].addr = 0xF6;
  460.     m_sBBCR_Setting[WIFI_BBCR_BBPC][72].addr = 0xF8;
  461.     m_sBBCR_Setting[WIFI_BBCR_BBPC][73].addr = 0xFA;
  462.     // set RO property
  463.     // Initialization and PHY-Configuration
  464.     m_sBBCR_Setting[WIFI_BBCR_IPC][0].RO = true;
  465.     m_sBBCR_Setting[WIFI_BBCR_IPC][1].RO = false;
  466.     m_sBBCR_Setting[WIFI_BBCR_IPC][2].RO = false;
  467.     m_sBBCR_Setting[WIFI_BBCR_IPC][3].RO = false;
  468.     m_sBBCR_Setting[WIFI_BBCR_IPC][4].RO = false;
  469.     // TX-related
  470.     m_sBBCR_Setting[WIFI_BBCR_TX][0].RO = false;
  471.     m_sBBCR_Setting[WIFI_BBCR_TX][1].RO = false;
  472.     m_sBBCR_Setting[WIFI_BBCR_TX][2].RO = false;
  473.     m_sBBCR_Setting[WIFI_BBCR_TX][3].RO = false;
  474.     m_sBBCR_Setting[WIFI_BBCR_TX][4].RO = false;
  475.     m_sBBCR_Setting[WIFI_BBCR_TX][5].RO = false;
  476.     m_sBBCR_Setting[WIFI_BBCR_TX][6].RO = false;
  477.     m_sBBCR_Setting[WIFI_BBCR_TX][7].RO = false;
  478.     m_sBBCR_Setting[WIFI_BBCR_TX][8].RO = true;
  479.     m_sBBCR_Setting[WIFI_BBCR_TX][9].RO = true;
  480.     // RX-related
  481.     m_sBBCR_Setting[WIFI_BBCR_RX][0].RO = true;
  482.     m_sBBCR_Setting[WIFI_BBCR_RX][1].RO = true;
  483.     m_sBBCR_Setting[WIFI_BBCR_RX][2].RO = true;
  484.     m_sBBCR_Setting[WIFI_BBCR_RX][3].RO = true;
  485.     m_sBBCR_Setting[WIFI_BBCR_RX][4].RO = true;
  486.     m_sBBCR_Setting[WIFI_BBCR_RX][5].RO = true;
  487.     m_sBBCR_Setting[WIFI_BBCR_RX][6].RO = true;
  488.     m_sBBCR_Setting[WIFI_BBCR_RX][7].RO = true;
  489.     m_sBBCR_Setting[WIFI_BBCR_RX][8].RO = true;
  490.     m_sBBCR_Setting[WIFI_BBCR_RX][9].RO = true;
  491.     m_sBBCR_Setting[WIFI_BBCR_RX][10].RO = true;
  492.     m_sBBCR_Setting[WIFI_BBCR_RX][11].RO = true;
  493.     m_sBBCR_Setting[WIFI_BBCR_RX][12].RO = true;
  494.     m_sBBCR_Setting[WIFI_BBCR_RX][13].RO = true;
  495.     m_sBBCR_Setting[WIFI_BBCR_RX][14].RO = true;
  496.     // BBP Configuration
  497.     m_sBBCR_Setting[WIFI_BBCR_BBPC][0].RO = false;
  498.     m_sBBCR_Setting[WIFI_BBCR_BBPC][1].RO = false;
  499.     m_sBBCR_Setting[WIFI_BBCR_BBPC][2].RO = false;
  500.     m_sBBCR_Setting[WIFI_BBCR_BBPC][3].RO = false;
  501.     m_sBBCR_Setting[WIFI_BBCR_BBPC][4].RO = false;
  502.     m_sBBCR_Setting[WIFI_BBCR_BBPC][5].RO = false;
  503.     m_sBBCR_Setting[WIFI_BBCR_BBPC][6].RO = false;
  504.     m_sBBCR_Setting[WIFI_BBCR_BBPC][7].RO = false;
  505.     m_sBBCR_Setting[WIFI_BBCR_BBPC][8].RO = false;
  506.     m_sBBCR_Setting[WIFI_BBCR_BBPC][9].RO = false;
  507.     m_sBBCR_Setting[WIFI_BBCR_BBPC][10].RO = false;
  508.     m_sBBCR_Setting[WIFI_BBCR_BBPC][11].RO = false;
  509.     m_sBBCR_Setting[WIFI_BBCR_BBPC][12].RO = false;
  510.     m_sBBCR_Setting[WIFI_BBCR_BBPC][13].RO = false;
  511.     m_sBBCR_Setting[WIFI_BBCR_BBPC][14].RO = false;
  512.     m_sBBCR_Setting[WIFI_BBCR_BBPC][15].RO = false;
  513.     m_sBBCR_Setting[WIFI_BBCR_BBPC][16].RO = false;
  514.     m_sBBCR_Setting[WIFI_BBCR_BBPC][17].RO = false;
  515.     m_sBBCR_Setting[WIFI_BBCR_BBPC][18].RO = false;
  516.     m_sBBCR_Setting[WIFI_BBCR_BBPC][19].RO = false;
  517.     m_sBBCR_Setting[WIFI_BBCR_BBPC][20].RO = false;
  518.     m_sBBCR_Setting[WIFI_BBCR_BBPC][21].RO = false;
  519.     m_sBBCR_Setting[WIFI_BBCR_BBPC][22].RO = false;
  520.     m_sBBCR_Setting[WIFI_BBCR_BBPC][23].RO = false;
  521.     m_sBBCR_Setting[WIFI_BBCR_BBPC][24].RO = false;
  522.     m_sBBCR_Setting[WIFI_BBCR_BBPC][25].RO = false;
  523.     m_sBBCR_Setting[WIFI_BBCR_BBPC][26].RO = false;
  524.     m_sBBCR_Setting[WIFI_BBCR_BBPC][27].RO = false;
  525.     m_sBBCR_Setting[WIFI_BBCR_BBPC][28].RO = false;
  526.     m_sBBCR_Setting[WIFI_BBCR_BBPC][29].RO = false;
  527.     m_sBBCR_Setting[WIFI_BBCR_BBPC][30].RO = false;
  528.     m_sBBCR_Setting[WIFI_BBCR_BBPC][31].RO = false;
  529.     m_sBBCR_Setting[WIFI_BBCR_BBPC][32].RO = false;
  530.     m_sBBCR_Setting[WIFI_BBCR_BBPC][33].RO = false;
  531.     m_sBBCR_Setting[WIFI_BBCR_BBPC][34].RO = false;
  532.     m_sBBCR_Setting[WIFI_BBCR_BBPC][35].RO = false;
  533.     m_sBBCR_Setting[WIFI_BBCR_BBPC][36].RO = false;
  534.     m_sBBCR_Setting[WIFI_BBCR_BBPC][37].RO = false;
  535.     m_sBBCR_Setting[WIFI_BBCR_BBPC][38].RO = false;
  536.     m_sBBCR_Setting[WIFI_BBCR_BBPC][39].RO = false;
  537.     m_sBBCR_Setting[WIFI_BBCR_BBPC][40].RO = false;
  538.     m_sBBCR_Setting[WIFI_BBCR_BBPC][41].RO = false;
  539.     m_sBBCR_Setting[WIFI_BBCR_BBPC][42].RO = false;
  540.     m_sBBCR_Setting[WIFI_BBCR_BBPC][43].RO = false;
  541.     m_sBBCR_Setting[WIFI_BBCR_BBPC][44].RO = false;
  542.     m_sBBCR_Setting[WIFI_BBCR_BBPC][45].RO = false;
  543.     m_sBBCR_Setting[WIFI_BBCR_BBPC][46].RO = true;
  544.     m_sBBCR_Setting[WIFI_BBCR_BBPC][47].RO = true;
  545.     m_sBBCR_Setting[WIFI_BBCR_BBPC][48].RO = true;
  546.     m_sBBCR_Setting[WIFI_BBCR_BBPC][49].RO = true;
  547.     m_sBBCR_Setting[WIFI_BBCR_BBPC][50].RO = true;
  548.     m_sBBCR_Setting[WIFI_BBCR_BBPC][51].RO = true;
  549.     m_sBBCR_Setting[WIFI_BBCR_BBPC][52].RO = true;
  550.     m_sBBCR_Setting[WIFI_BBCR_BBPC][53].RO = true;
  551.     m_sBBCR_Setting[WIFI_BBCR_BBPC][54].RO = true;
  552.     m_sBBCR_Setting[WIFI_BBCR_BBPC][55].RO = true;
  553.     m_sBBCR_Setting[WIFI_BBCR_BBPC][56].RO = true;
  554.     m_sBBCR_Setting[WIFI_BBCR_BBPC][57].RO = true;
  555.     m_sBBCR_Setting[WIFI_BBCR_BBPC][58].RO = true;
  556.     m_sBBCR_Setting[WIFI_BBCR_BBPC][59].RO = true;
  557.     m_sBBCR_Setting[WIFI_BBCR_BBPC][60].RO = true;
  558.     m_sBBCR_Setting[WIFI_BBCR_BBPC][61].RO = true;
  559.     m_sBBCR_Setting[WIFI_BBCR_BBPC][62].RO = true;
  560.     m_sBBCR_Setting[WIFI_BBCR_BBPC][63].RO = true;
  561.     m_sBBCR_Setting[WIFI_BBCR_BBPC][64].RO = true;
  562.     m_sBBCR_Setting[WIFI_BBCR_BBPC][65].RO = true;
  563.     m_sBBCR_Setting[WIFI_BBCR_BBPC][66].RO = true;
  564.     m_sBBCR_Setting[WIFI_BBCR_BBPC][67].RO = true;
  565.     m_sBBCR_Setting[WIFI_BBCR_BBPC][68].RO = false;
  566.     m_sBBCR_Setting[WIFI_BBCR_BBPC][69].RO = false;
  567.     m_sBBCR_Setting[WIFI_BBCR_BBPC][70].RO = false;
  568.     m_sBBCR_Setting[WIFI_BBCR_BBPC][71].RO = false;
  569.     m_sBBCR_Setting[WIFI_BBCR_BBPC][72].RO = false;
  570.     m_sBBCR_Setting[WIFI_BBCR_BBPC][73].RO = true;
  571.     // set R/C property
  572.     // Initialization and PHY-Configuration
  573.     m_sBBCR_Setting[WIFI_BBCR_IPC][0].RC = false; // "DEV_ID";
  574.     m_sBBCR_Setting[WIFI_BBCR_IPC][1].RC = false; // "IO_POLAR";
  575.     m_sBBCR_Setting[WIFI_BBCR_IPC][2].RC = false; // "TR_CFG1";
  576.     m_sBBCR_Setting[WIFI_BBCR_IPC][3].RC = false; // "TR_CFG2";
  577.     m_sBBCR_Setting[WIFI_BBCR_IPC][4].RC = true;  // "INT_CSR";
  578.     // TX-related
  579.     m_sBBCR_Setting[WIFI_BBCR_TX][0].RC = false; // "TX_STAT";
  580.     m_sBBCR_Setting[WIFI_BBCR_TX][1].RC = false; // "TX_LEN_H";
  581.     m_sBBCR_Setting[WIFI_BBCR_TX][2].RC = false; // "TX_LEN_L";
  582.     m_sBBCR_Setting[WIFI_BBCR_TX][3].RC = false; // "TX_SV_O_H";
  583.     m_sBBCR_Setting[WIFI_BBCR_TX][4].RC = false; // "TX_SV_O_L";
  584.     m_sBBCR_Setting[WIFI_BBCR_TX][5].RC = false; // "TX_SV_CCK";
  585.     m_sBBCR_Setting[WIFI_BBCR_TX][6].RC = false; // "TXPWR_OFD";
  586.     m_sBBCR_Setting[WIFI_BBCR_TX][7].RC = false; // "TXPWR_CCK";
  587.     m_sBBCR_Setting[WIFI_BBCR_TX][8].RC = false; // "PAPWR_H";
  588.     m_sBBCR_Setting[WIFI_BBCR_TX][9].RC = false; // "PAPWR_L";
  589.     // RX-related
  590.     m_sBBCR_Setting[WIFI_BBCR_RX][0].RC = false; // "RX_STAT";
  591.     m_sBBCR_Setting[WIFI_BBCR_RX][1].RC = false; // "RX_LEN_H";
  592.     m_sBBCR_Setting[WIFI_BBCR_RX][2].RC = false; // "RX_LEN_L";
  593.     m_sBBCR_Setting[WIFI_BBCR_RX][3].RC = false; // "RX_SVR_H";
  594.     m_sBBCR_Setting[WIFI_BBCR_RX][4].RC = false; // "RX_SVR_L";
  595.     m_sBBCR_Setting[WIFI_BBCR_RX][5].RC = false; //  "RSSI";
  596.     m_sBBCR_Setting[WIFI_BBCR_RX][6].RC = false; // "SQ_B5";
  597.     m_sBBCR_Setting[WIFI_BBCR_RX][7].RC = false; // "SQ_B4";
  598.     m_sBBCR_Setting[WIFI_BBCR_RX][8].RC = false; // "SQ_B3";
  599.     m_sBBCR_Setting[WIFI_BBCR_RX][9].RC = false; // "SQ_B2";
  600.     m_sBBCR_Setting[WIFI_BBCR_RX][10].RC = false; // "SQ_B1";
  601.     m_sBBCR_Setting[WIFI_BBCR_RX][11].RC = false; // "SQ_B0";
  602.     m_sBBCR_Setting[WIFI_BBCR_RX][12].RC = false; // "RADAR_PW";
  603.     m_sBBCR_Setting[WIFI_BBCR_RX][13].RC = false; // "RADAR_PWR";
  604.     m_sBBCR_Setting[WIFI_BBCR_RX][14].RC = false; // "CR38";
  605.     // BBP Configuration
  606.     m_sBBCR_Setting[WIFI_BBCR_BBPC][0].RC = false; // "ODTX_BF_ADDR";
  607.     m_sBBCR_Setting[WIFI_BBCR_BBPC][1].RC = false; // "ODTX_BF_DATA";
  608.     m_sBBCR_Setting[WIFI_BBCR_BBPC][2].RC = false; // "ODTX_FT_ADDR";
  609.     m_sBBCR_Setting[WIFI_BBCR_BBPC][3].RC = false; // "ODTX_FT_DATA";
  610.     m_sBBCR_Setting[WIFI_BBCR_BBPC][4].RC = false; // "CCKTX_F_ADDR";
  611.     m_sBBCR_Setting[WIFI_BBCR_BBPC][5].RC = false; // "CCKTX_F_DATA";
  612.     m_sBBCR_Setting[WIFI_BBCR_BBPC][6].RC = false; // "AGC_ADDR";
  613.     m_sBBCR_Setting[WIFI_BBCR_BBPC][7].RC = false; // "AGC_DATA";
  614.     m_sBBCR_Setting[WIFI_BBCR_BBPC][8].RC = false; // "OFDM_TR_ADDR";
  615.     m_sBBCR_Setting[WIFI_BBCR_BBPC][9].RC = false; // "OFDM_TR_DATA";
  616.     m_sBBCR_Setting[WIFI_BBCR_BBPC][10].RC = false; // "CCK_SQ_1";
  617.     m_sBBCR_Setting[WIFI_BBCR_BBPC][11].RC = false; // "CCK_SQ_2";
  618.     m_sBBCR_Setting[WIFI_BBCR_BBPC][12].RC = false; // "CCK_CE_TH";
  619.     m_sBBCR_Setting[WIFI_BBCR_BBPC][13].RC = false; // "CCK_L_PRM";
  620.     m_sBBCR_Setting[WIFI_BBCR_BBPC][14].RC = false; // "CCK_S_PRM";
  621.     m_sBBCR_Setting[WIFI_BBCR_BBPC][15].RC = false; // "CCK_PREAMB_LEN";
  622.     m_sBBCR_Setting[WIFI_BBCR_BBPC][16].RC = false; // "CCK_MISC_1";
  623.     m_sBBCR_Setting[WIFI_BBCR_BBPC][17].RC = false; // "CCK_MISC_2";
  624.     m_sBBCR_Setting[WIFI_BBCR_BBPC][18].RC = false; // "CCK_MISC_3";
  625.     m_sBBCR_Setting[WIFI_BBCR_BBPC][19].RC = false; // "MPDU_ANT_CTL";
  626.     m_sBBCR_Setting[WIFI_BBCR_BBPC][20].RC = false; // "MPDU_ANT_TMO";
  627.     m_sBBCR_Setting[WIFI_BBCR_BBPC][21].RC = false; // "AP_ADDRB5";
  628.     m_sBBCR_Setting[WIFI_BBCR_BBPC][22].RC = false; // "AP_ADDRB4";
  629.     m_sBBCR_Setting[WIFI_BBCR_BBPC][23].RC = false; // "AP_ADDRB3";
  630.     m_sBBCR_Setting[WIFI_BBCR_BBPC][24].RC = false; // "AP_ADDRB2";
  631.     m_sBBCR_Setting[WIFI_BBCR_BBPC][25].RC = false; // "AP_ADDRB1";
  632.     m_sBBCR_Setting[WIFI_BBCR_BBPC][26].RC = false; // "AP_ADDRB0";
  633.     m_sBBCR_Setting[WIFI_BBCR_BBPC][27].RC = false; // "OFDM_MISC1_CTL";
  634.     m_sBBCR_Setting[WIFI_BBCR_BBPC][28].RC = false; // "OFDM_MISC2_CTL";
  635.     m_sBBCR_Setting[WIFI_BBCR_BBPC][29].RC = false; // "OFDM_ACQ_SHORT";
  636.     m_sBBCR_Setting[WIFI_BBCR_BBPC][30].RC = false; // "OFDM_ACQ_LONG";
  637.     m_sBBCR_Setting[WIFI_BBCR_BBPC][31].RC = false; // "AFEBandGAP";
  638.     m_sBBCR_Setting[WIFI_BBCR_BBPC][32].RC = false; // "AFEPowerDOWN";
  639.     m_sBBCR_Setting[WIFI_BBCR_BBPC][33].RC = false; // "AFETx_DAC";
  640.     m_sBBCR_Setting[WIFI_BBCR_BBPC][34].RC = false; // "AFETx_DAC";
  641.     m_sBBCR_Setting[WIFI_BBCR_BBPC][35].RC = false; // "AFETx_DAC_FD";
  642.     m_sBBCR_Setting[WIFI_BBCR_BBPC][36].RC = false; // "Test_MODE1";
  643.     m_sBBCR_Setting[WIFI_BBCR_BBPC][37].RC = false; // "Test_MODE2";
  644.     m_sBBCR_Setting[WIFI_BBCR_BBPC][38].RC = false; // "Test_MODE3";
  645.     m_sBBCR_Setting[WIFI_BBCR_BBPC][39].RC = false; // "Test_MODE4";
  646.     m_sBBCR_Setting[WIFI_BBCR_BBPC][40].RC = false; // "AFE_Rx_ADC";
  647.     m_sBBCR_Setting[WIFI_BBCR_BBPC][41].RC = false; // "AFE_Rx_ADC";
  648.     m_sBBCR_Setting[WIFI_BBCR_BBPC][42].RC = false; // "AFE_ADC";
  649.     m_sBBCR_Setting[WIFI_BBCR_BBPC][43].RC = false; // "AFE_ALC_ADC";
  650.     m_sBBCR_Setting[WIFI_BBCR_BBPC][44].RC = false; // "AFE_ALC_ADC";
  651.     m_sBBCR_Setting[WIFI_BBCR_BBPC][45].RC = false; // "CNTR_CTL";
  652.     m_sBBCR_Setting[WIFI_BBCR_BBPC][46].RC = false; // "N_ED_PASS_H";
  653.     m_sBBCR_Setting[WIFI_BBCR_BBPC][47].RC = false; // "N_ED_PASS_L";
  654.     m_sBBCR_Setting[WIFI_BBCR_BBPC][48].RC = false; // "N_OSD_PASS_H";
  655.     m_sBBCR_Setting[WIFI_BBCR_BBPC][49].RC = false; // "N_OSD_PASS_L";
  656.     m_sBBCR_Setting[WIFI_BBCR_BBPC][50].RC = false; // "N_mdrdy_PASS_H";
  657.     m_sBBCR_Setting[WIFI_BBCR_BBPC][51].RC = false; // "N_mdrdy_PASS_L";
  658.     m_sBBCR_Setting[WIFI_BBCR_BBPC][52].RC = false; // "N_SQ1_PASS_H";
  659.     m_sBBCR_Setting[WIFI_BBCR_BBPC][53].RC = false; // "N_SQ1_PASS_L";
  660.     m_sBBCR_Setting[WIFI_BBCR_BBPC][54].RC = false; // "RxADCI_prob_O";
  661.     m_sBBCR_Setting[WIFI_BBCR_BBPC][55].RC = false; // "RxADCQ_prob_O";
  662.     m_sBBCR_Setting[WIFI_BBCR_BBPC][56].RC = false; // "N_CRC16_PASS_H";
  663.     m_sBBCR_Setting[WIFI_BBCR_BBPC][57].RC = false; // "N_CRC16_PASS_L";
  664.     m_sBBCR_Setting[WIFI_BBCR_BBPC][58].RC = false; // "N_CCK_SFD_PASS_H";
  665.     m_sBBCR_Setting[WIFI_BBCR_BBPC][59].RC = false; // "N_CCK_SFD_PASS_L";
  666.     m_sBBCR_Setting[WIFI_BBCR_BBPC][60].RC = false; // "N_CCK_FCS_PASS_H";
  667.     m_sBBCR_Setting[WIFI_BBCR_BBPC][61].RC = false; // "N_CCK_FCS_PASS_L";
  668.     m_sBBCR_Setting[WIFI_BBCR_BBPC][62].RC = false; // "Noise_floor_H";
  669.     m_sBBCR_Setting[WIFI_BBCR_BBPC][63].RC = false; // "Noise_floor_L";
  670.     m_sBBCR_Setting[WIFI_BBCR_BBPC][64].RC = false; // "Instant_Rx_PWR";
  671.     m_sBBCR_Setting[WIFI_BBCR_BBPC][65].RC = false; // "CCK_CMF_ERR_RDBK";
  672.     m_sBBCR_Setting[WIFI_BBCR_BBPC][66].RC = false; // "PostAGC_ACCUM_H";
  673.     m_sBBCR_Setting[WIFI_BBCR_BBPC][67].RC = false; // "PostAGC_ACCUM_L";
  674.     m_sBBCR_Setting[WIFI_BBCR_BBPC][68].RC = true; // "RPI_CNT_H_BYTE";
  675.     m_sBBCR_Setting[WIFI_BBCR_BBPC][69].RC = true; // "RPI_CNT_L_BYTE";
  676.     m_sBBCR_Setting[WIFI_BBCR_BBPC][70].RC = false; // "RPI_CTL_REG";
  677.     m_sBBCR_Setting[WIFI_BBCR_BBPC][71].RC = false; // "RPI_TH_Addr";
  678.     m_sBBCR_Setting[WIFI_BBCR_BBPC][72].RC = false; // "RPI_TH_Data";
  679.     m_sBBCR_Setting[WIFI_BBCR_BBPC][73].RC = false; // "RDD_Counter";
  680.     // Set value
  681.     for( i=0; i<WIFI_BBCR_TYPE_NUM; i++ )
  682.     {
  683.         for( j=0; j<WIFI_BBCR_MAX_NUM; j++ )
  684.         {    m_sBBCR_Setting[i][j].value = 0;
  685.         }
  686.     }
  687.     // Set checked property
  688.     for( i=0; i<WIFI_BBCR_TYPE_NUM; i++ )
  689.     {
  690.         for( j=0; j<WIFI_BBCR_MAX_NUM; j++ )
  691.         {    m_sBBCR_Setting[i][j].checked = false;
  692.         }
  693.     }
  694. }
  695. //---------------------------------------------------------------------------
  696. void TfrmWiFiBBCR::ReDrawFields( void )
  697. {
  698.     int i;
  699.     char  str[256];
  700.     
  701.     // Initialization, PHY Configuration and TX/RX
  702.     if( 0 == btnIPTRBBCRData->Tag ) // Dec
  703.     {
  704.         btnIPTRBBCRData->Caption = "BBCR Data (Dec)";
  705.         // Initialization and PHY-Configuration
  706.         for( i=0; i<WIFI_IPC_NUM; i++ )
  707.         {   edtIPC[i]->Text = IntToStr( m_sBBCR_Setting[WIFI_BBCR_IPC][i].value );
  708.         }
  709.         // TX-related
  710.         for( i=0; i<WIFI_TX_NUM; i++ )
  711.         {   edtTX[i]->Text = IntToStr( m_sBBCR_Setting[WIFI_BBCR_TX][i].value );
  712.         }
  713.         // RX-related
  714.         for( i=0; i<WIFI_RX_NUM; i++ )
  715.         {   edtRX[i]->Text = IntToStr( m_sBBCR_Setting[WIFI_BBCR_RX][i].value );
  716.         }
  717.     }
  718.     else
  719.     {
  720.         btnIPTRBBCRData->Caption = "BBCR Data (Hex)";
  721.         // Initialization and PHY-Configuration
  722.         for( i=0; i<WIFI_IPC_NUM; i++ )
  723.         {
  724.             sprintf( str, "%X", m_sBBCR_Setting[WIFI_BBCR_IPC][i].value );
  725.             edtIPC[i]->Text = str;
  726.         }
  727.         // TX-related
  728.         for( i=0; i<WIFI_TX_NUM; i++ )
  729.         {
  730.             sprintf( str, "%X", m_sBBCR_Setting[WIFI_BBCR_TX][i].value );
  731.             edtTX[i]->Text = str;
  732.         }
  733.         // RX-related
  734.         for( i=0; i<WIFI_RX_NUM; i++ )
  735.         {
  736.             sprintf( str, "%X", m_sBBCR_Setting[WIFI_BBCR_RX][i].value );
  737.             edtRX[i]->Text = str;
  738.         }
  739.     }
  740.     // BBP Configuration
  741.     if( 0 == btnBBPCBBCRData->Tag ) // Dec
  742.     {
  743.         btnBBPCBBCRData->Caption = "MCR Data (Dec)";
  744.         // BBP Configuration
  745.         for( i=0; i<WIFI_BBPC_NUM; i++ )
  746.         {   edtBBPC[i]->Text = IntToStr( m_sBBCR_Setting[WIFI_BBCR_BBPC][i].value );
  747.         }
  748.     }
  749.     else
  750.     {
  751.         btnBBPCBBCRData->Caption = "BBCR Data (Hex)";
  752.         // BBP Configuration
  753.         for( i=0; i<WIFI_BBPC_NUM; i++ )
  754.         {
  755.             sprintf( str, "%X", m_sBBCR_Setting[WIFI_BBCR_BBPC][i].value );
  756.             edtBBPC[i]->Text = str;
  757.         }
  758.     }
  759. }
  760. //---------------------------------------------------------------------------
  761. bool TfrmWiFiBBCR::CheckFields( void )
  762. {
  763.     int i;
  764.     unsigned char         ucdata[WIFI_BBCR_MAX_NUM];
  765.     AnsiString text;
  766.     // Initialization, PHY Configuration and TX/RX
  767.     if( 0 == btnIPTRBBCRData->Tag ) // Dec
  768.     {
  769.         // Initialization and PHY-Configuration
  770.         for( i=0; i<WIFI_IPC_NUM; i++ )
  771.         {
  772.             text = edtIPC[i]->Text;  if( !IsValidDecWiFiBBRegValue( text, ucdata[i] ) )         {  edtIPCCheck(edtIPC[i]);   return false;   }
  773.             m_sBBCR_Setting[WIFI_BBCR_IPC][i].value = ucdata[i];
  774.         }
  775.         // TX-related
  776.         for( i=0; i<WIFI_TX_NUM; i++ )
  777.         {
  778.             text = edtTX[i]->Text;  if( !IsValidDecWiFiBBRegValue( text, ucdata[i] ) )         {  edtTXCheck(edtTX[i]);   return false;   }
  779.             m_sBBCR_Setting[WIFI_BBCR_TX][i].value = ucdata[i];
  780.         }
  781.         // RX-related
  782.         for( i=0; i<WIFI_RX_NUM; i++ )
  783.         {
  784.             text = edtRX[i]->Text;  if( !IsValidDecWiFiBBRegValue( text, ucdata[i] ) )         {  edtRXCheck(edtRX[i]);   return false;   }
  785.             m_sBBCR_Setting[WIFI_BBCR_RX][i].value = ucdata[i];
  786.         }
  787.     }
  788.     else // Hex
  789.     {
  790.         // Initialization and PHY-Configuration
  791.         for( i=0; i<WIFI_IPC_NUM; i++ )
  792.         {
  793.             text = edtIPC[i]->Text;  if( !IsValidHexWiFiBBRegValue( text, ucdata[i] ) )         {  edtIPCCheck(edtIPC[i]);   return false;   }
  794.             m_sBBCR_Setting[WIFI_BBCR_IPC][i].value = ucdata[i];
  795.         }
  796.         // TX-related
  797.         for( i=0; i<WIFI_TX_NUM; i++ )
  798.         {
  799.             text = edtTX[i]->Text;  if( !IsValidHexWiFiBBRegValue( text, ucdata[i] ) )         {  edtTXCheck(edtTX[i]);   return false;   }
  800.             m_sBBCR_Setting[WIFI_BBCR_TX][i].value = ucdata[i];
  801.         }
  802.         // RX-related
  803.         for( i=0; i<WIFI_RX_NUM; i++ )
  804.         {
  805.             text = edtRX[i]->Text;  if( !IsValidHexWiFiBBRegValue( text, ucdata[i] ) )         {  edtRXCheck(edtRX[i]);   return false;   }
  806.             m_sBBCR_Setting[WIFI_BBCR_RX][i].value = ucdata[i];
  807.         }
  808.     }
  809.     // BBP Configuration
  810.     if( 0 == btnBBPCBBCRData->Tag ) // Dec
  811.     {
  812.         for( i=0; i<WIFI_BBPC_NUM; i++ )
  813.         {
  814.             text = edtBBPC[i]->Text;  if( !IsValidDecWiFiBBRegValue( text, ucdata[i] ) )         {  edtBBPCCheck(edtBBPC[i]);   return false;   }
  815.         }
  816.     }
  817.     else
  818.     {
  819.         for( i=0; i<WIFI_BBPC_NUM; i++ )
  820.         {
  821.             text = edtBBPC[i]->Text;  if( !IsValidHexWiFiBBRegValue( text, ucdata[i] ) )         {  edtBBPCCheck(edtBBPC[i]);   return false;   }
  822.         }
  823.     }
  824.     return true;
  825. }
  826. //---------------------------------------------------------------------------
  827. void  TfrmWiFiBBCR::ShowHintLabel( TControl *sender, char* hint )
  828. {
  829.    TPoint pt0 = this->ClientOrigin;
  830.    TPoint pt1 = sender->ClientOrigin;
  831.    lblHint->Left = (pt1.x-pt0.x);
  832.    lblHint->Top  = (pt1.y-pt0.y)+sender->Height+3;
  833.    lblHint->Caption = hint;
  834.    lblHint->Visible = true;
  835.    HintTimer->Enabled = true;
  836. }
  837. //---------------------------------------------------------------------------
  838. //---------------------------------------------------------------------------
  839. void  TfrmWiFiBBCR::CurrentPageLock( void )
  840. {
  841. }
  842. //---------------------------------------------------------------------------
  843. void  TfrmWiFiBBCR::CurrentPageReset( void )
  844. {
  845. }
  846. void __fastcall TfrmWiFiBBCR::cbIPCHeaderClick(TObject *Sender)
  847. {
  848.     for( int i=0; i<WIFI_IPC_NUM; i++ )
  849.     {
  850.         cbIPC[i]->Checked = cbIPCHeader->Checked;
  851.         m_sBBCR_Setting[WIFI_BBCR_IPC][i].checked = cbIPCHeader->Checked;
  852.     }
  853. }
  854. //---------------------------------------------------------------------------
  855. void __fastcall TfrmWiFiBBCR::cbTXHeaderClick(TObject *Sender)
  856. {
  857.     for( int i=0; i<WIFI_TX_NUM; i++ )
  858.     {
  859.         cbTX[i]->Checked = cbTXHeader->Checked;
  860.         m_sBBCR_Setting[WIFI_BBCR_TX][i].checked = cbTXHeader->Checked;
  861.     }
  862. }
  863. //---------------------------------------------------------------------------
  864. void __fastcall TfrmWiFiBBCR::cbRXHeaderClick(TObject *Sender)
  865. {
  866.     for( int i=0; i<WIFI_RX_NUM; i++ )
  867.     {
  868.         cbRX[i]->Checked = cbRXHeader->Checked;
  869.         m_sBBCR_Setting[WIFI_BBCR_RX][i].checked = cbRXHeader->Checked;
  870.     }
  871. }
  872. //---------------------------------------------------------------------------
  873. void __fastcall TfrmWiFiBBCR::cbBBPCHeaderClick(TObject *Sender)
  874. {
  875.     for( int i=0; i<WIFI_BBPC_NUM; i++ )
  876.     {
  877.         cbBBPC[i]->Checked = cbBBPCHeader->Checked;
  878.         m_sBBCR_Setting[WIFI_BBCR_BBPC][i].checked = cbBBPCHeader->Checked;;
  879.     }
  880. }
  881. //---------------------------------------------------------------------------
  882. void __fastcall TfrmWiFiBBCR::edtBBPCCheck(TObject *Sender)
  883. {
  884.     AnsiString  text;
  885.     unsigned char  ucdata;
  886.     int  band;
  887.     TEdit *edit = (TEdit*)Sender;
  888.     char  hint[] = " character is not valid ";
  889.     text = edit->Text;
  890.     if( 0 == btnBBPCBBCRData->Tag )  // Dec
  891.     {
  892.         if( !IsValidDecWiFiBBRegValue( text, ucdata ) )
  893.         {
  894.             ShowHintLabel( edit, hint );
  895.             edit->SetFocus();
  896.             return;
  897.         }
  898.     }
  899.     else  // Hex
  900.     {
  901.         if( !IsValidHexWiFiBBRegValue( text, ucdata ) )
  902.         {
  903.             ShowHintLabel( edit, hint );
  904.             edit->SetFocus();
  905.             return;
  906.         }
  907.     }
  908.     m_sBBCR_Setting[WIFI_BBCR_BBPC][edit->Tag].value = ucdata;
  909. }
  910. //---------------------------------------------------------------------------
  911. void __fastcall TfrmWiFiBBCR::edtIPCCheck(TObject *Sender)
  912. {
  913.     AnsiString  text;
  914.     unsigned char  ucdata;
  915.     int  band;
  916.     TEdit *edit = (TEdit*)Sender;
  917.     char  hint[] = " character is not valid ";
  918.     text = edit->Text;
  919.     if( 0 == btnIPTRBBCRData->Tag )  // Dec
  920.     {
  921.         if( !IsValidDecWiFiBBRegValue( text, ucdata ) )
  922.         {
  923.             ShowHintLabel( edit, hint );
  924.             edit->SetFocus();
  925.             return;
  926.         }
  927.     }
  928.     else  // Hex
  929.     {
  930.         if( !IsValidHexWiFiBBRegValue( text, ucdata ) )
  931.         {
  932.             ShowHintLabel( edit, hint );
  933.             edit->SetFocus();
  934.             return;
  935.         }
  936.     }
  937.     m_sBBCR_Setting[WIFI_BBCR_IPC][edit->Tag].value = ucdata;
  938. }
  939. //---------------------------------------------------------------------------
  940. void __fastcall TfrmWiFiBBCR::edtTXCheck(TObject *Sender)
  941. {
  942.     AnsiString  text;
  943.     unsigned char  ucdata;
  944.     int  band;
  945.     TEdit *edit = (TEdit*)Sender;
  946.     char  hint[] = " character is not valid ";
  947.     text = edit->Text;
  948.     if( 0 == btnIPTRBBCRData->Tag )  // Dec
  949.     {
  950.         if( !IsValidDecWiFiBBRegValue( text, ucdata ) )
  951.         {
  952.             ShowHintLabel( edit, hint );
  953.             edit->SetFocus();
  954.             return;
  955.         }
  956.     }
  957.     else  // Hex
  958.     {
  959.         if( !IsValidHexWiFiBBRegValue( text, ucdata ) )
  960.         {
  961.             ShowHintLabel( edit, hint );
  962.             edit->SetFocus();
  963.             return;
  964.         }
  965.     }
  966.     m_sBBCR_Setting[WIFI_BBCR_TX][edit->Tag].value = ucdata;
  967. }
  968. //---------------------------------------------------------------------------
  969. void __fastcall TfrmWiFiBBCR::edtRXCheck(TObject *Sender)
  970. {
  971.     AnsiString  text;
  972.     unsigned char  ucdata;
  973.     int  band;
  974.     TEdit *edit = (TEdit*)Sender;
  975.     char  hint[] = " character is not valid ";
  976.     text = edit->Text;
  977.     if( 0 == btnIPTRBBCRData->Tag )  // Dec
  978.     {
  979.         if( !IsValidDecWiFiBBRegValue( text, ucdata ) )
  980.         {
  981.             ShowHintLabel( edit, hint );
  982.             edit->SetFocus();
  983.             return;
  984.         }
  985.     }
  986.     else  // Hex
  987.     {
  988.         if( !IsValidHexWiFiBBRegValue( text, ucdata ) )
  989.         {
  990.             ShowHintLabel( edit, hint );
  991.             edit->SetFocus();
  992.             return;
  993.         }
  994.     }
  995.     m_sBBCR_Setting[WIFI_BBCR_RX][edit->Tag].value = ucdata;
  996. }
  997. //---------------------------------------------------------------------------
  998. void __fastcall TfrmWiFiBBCR::cbIPCClick(TObject *Sender)
  999. {
  1000.     TCheckBox *cb = (TCheckBox*)Sender;
  1001.     m_sBBCR_Setting[WIFI_BBCR_IPC][cb->Tag].checked = cb->Checked;
  1002. }
  1003. //---------------------------------------------------------------------------
  1004. void __fastcall TfrmWiFiBBCR::cbTXClick(TObject *Sender)
  1005. {
  1006.     TCheckBox *cb = (TCheckBox*)Sender;
  1007.     m_sBBCR_Setting[WIFI_BBCR_TX][cb->Tag].checked = cb->Checked;
  1008. }
  1009. //---------------------------------------------------------------------------
  1010. void __fastcall TfrmWiFiBBCR::cbRXClick(TObject *Sender)
  1011. {
  1012.     TCheckBox *cb = (TCheckBox*)Sender;
  1013.     m_sBBCR_Setting[WIFI_BBCR_RX][cb->Tag].checked = cb->Checked;
  1014. }
  1015. //---------------------------------------------------------------------------
  1016. void __fastcall TfrmWiFiBBCR::cbBBPCClick(TObject *Sender)
  1017. {
  1018.     TCheckBox *cb = (TCheckBox*)Sender;
  1019.     m_sBBCR_Setting[WIFI_BBCR_BBPC][cb->Tag].checked = cb->Checked;
  1020. }
  1021. //---------------------------------------------------------------------------
  1022. void __fastcall TfrmWiFiBBCR::btnSaveToFileClick(TObject *Sender)
  1023. {
  1024.      char str[512];
  1025.     bool ok;
  1026.     ok = CheckFields();
  1027.     if(!ok)
  1028.     {
  1029.         sbWiFiBBCR->Panels->Items[0]->Text = (AnsiString) "  Save baseband control register setting to file fail";
  1030.         Application->MessageBox( "Execution Failure : Save baseband control register setting to file", "FAILURE", MB_OK );
  1031.         return;
  1032.     }
  1033.     ok = SaveDialog->Execute();
  1034.     if( !ok )
  1035.     {
  1036.         sbWiFiBBCR->Panels->Items[0]->Text = (AnsiString) "  Save baseband control register setting to file fail";
  1037.         Application->MessageBox( "Execution Failure : Save baseband control register setting to file", "FAILURE", MB_OK );
  1038.         return;
  1039.     }
  1040.     strcpy( str, SaveDialog->FileName.c_str() );
  1041.     for(int i=0; i<WIFI_BBCR_TYPE_NUM; i++ )
  1042.     {
  1043.         for(int j=0; j<WIFI_BBCR_MAX_NUM; j++ )
  1044.         {
  1045.             m_WIFI_BB_Obj.Set_BBCR_Setting( i, j, m_sBBCR_Setting[i][j] );
  1046.         }
  1047.     }
  1048.     ok = m_WIFI_BB_Obj.REQ_Write_To_File( str );
  1049.     if( !ok )
  1050.     {
  1051.         sbWiFiBBCR->Panels->Items[0]->Text = (AnsiString) "  Save baseband control register setting to file fail";
  1052.         Application->MessageBox( "Execution Failure : Save baseband control register setting to file", "FAILURE", MB_OK );
  1053.         return;
  1054.     }
  1055.     sbWiFiBBCR->Panels->Items[0]->Text = (AnsiString) "  Save baseband control register setting to file successfully";
  1056. }
  1057. //---------------------------------------------------------------------------
  1058. void __fastcall TfrmWiFiBBCR::btnLoadFromFileClick(TObject *Sender)
  1059. {
  1060.     char str[512];
  1061.     bool ok;
  1062.     ok = OpenDialog->Execute();
  1063.     if( !ok )
  1064.     {
  1065.         sbWiFiBBCR->Panels->Items[0]->Text = (AnsiString) "  Load baseband control register setting from file fail";
  1066.         Application->MessageBox( "Execution Failure : Load baseband control register setting from file", "FAILURE", MB_OK );
  1067.         return;
  1068.     }
  1069.     strcpy( str, OpenDialog->FileName.c_str() );
  1070.     ok = m_WIFI_BB_Obj.REQ_Read_From_File( str );
  1071.     if( !ok )
  1072.     {
  1073.         sbWiFiBBCR->Panels->Items[0]->Text = (AnsiString) "  Load baseband control register setting from file fail";
  1074.         Application->MessageBox( "Execution Failure : Load baseband control register setting from file", "FAILURE", MB_OK );
  1075.         return;
  1076.     }
  1077.     for(int i=0; i<WIFI_BBCR_TYPE_NUM; i++ )
  1078.     {
  1079.         for(int j=0; j<WIFI_BBCR_MAX_NUM; j++ )
  1080.         {
  1081.             m_sBBCR_Setting[i][j].value = m_WIFI_BB_Obj.Get_BBCR_Setting_Value( i, j );
  1082.         }
  1083.     }
  1084.     ReDrawFields();
  1085.     sbWiFiBBCR->Panels->Items[0]->Text = (AnsiString) "  Load baseband control register setting from file successfully";
  1086. }
  1087. //---------------------------------------------------------------------------
  1088. void __fastcall TfrmWiFiBBCR::btnIPTRBBCRDataClick(TObject *Sender)
  1089. {
  1090.     if( 0 == btnIPTRBBCRData->Tag )  // Dec-->Hex
  1091.     {    btnIPTRBBCRData->Tag = 1;
  1092.     }
  1093.     else  //Hex-->Dec
  1094.     {    btnIPTRBBCRData->Tag = 0;
  1095.     }
  1096.     ReDrawFields();
  1097. }
  1098. //---------------------------------------------------------------------------
  1099. void __fastcall TfrmWiFiBBCR::btnBBPCBBCRDataClick(TObject *Sender)
  1100. {
  1101.     if( 0 == btnBBPCBBCRData->Tag )  // Dec-->Hex
  1102.     {    btnBBPCBBCRData->Tag = 1;
  1103.     }
  1104.     else  //Hex-->Dec
  1105.     {    btnBBPCBBCRData->Tag = 0;
  1106.     }
  1107.     ReDrawFields();
  1108. }
  1109. //---------------------------------------------------------------------------
  1110. void __fastcall TfrmWiFiBBCR::btnWriteToRegisterClick(TObject *Sender)
  1111. {
  1112.     if( ! CheckFields() )
  1113.     {
  1114.         sbWiFiBBCR->Panels->Items[0]->Text = (AnsiString) "  Write baseband register fail";
  1115.         Application->MessageBox( "Execution Failure : Write baseband register", "FAILURE", MB_OK );
  1116.         return;
  1117.     }
  1118.     CurrentPageLock();
  1119.     Compose_BBCR_Parameter();
  1120.     Compose_BBCR_Data();
  1121.     if( 0 == m_sBBCR.count )
  1122.     {
  1123.         sbWiFiBBCR->Panels->Items[0]->Text = (AnsiString)"  Please select at least one baseband register ";
  1124.         Application->MessageBox( "Execution Fail : Please select at least one baseband register", "FAIL", MB_OK );
  1125.         return;
  1126.     }
  1127.     m_WIFI_BB_Obj.ConfirmCallback  = ::ConfirmCallback_WriteReg;
  1128.     m_WIFI_BB_Obj.REQ_Write_BBCR_Setting_To_Reg_Start( m_sBBCR );
  1129.     sbWiFiBBCR->Panels->Items[0]->Text = (AnsiString)"  Write baseband register progressing";
  1130. }
  1131. //---------------------------------------------------------------------------
  1132. void TfrmWiFiBBCR::ConfirmCallback_WriteReg( void )
  1133. {
  1134.     int state = m_WIFI_BB_Obj.Get_ConfirmState();
  1135.     switch( state )
  1136.     {
  1137.         case STATE_BB_OK:
  1138.         {
  1139.             sbWiFiBBCR->Panels->Items[0]->Text = (AnsiString)"  Write baseband register successfully";
  1140.         }
  1141.         break;
  1142.         case STATE_BB_FAIL:
  1143.         {
  1144.             sbWiFiBBCR->Panels->Items[0]->Text = (AnsiString)"  Write baseband register fail";
  1145.             Application->MessageBox( "Execution Timeout : Write baseband register", "FAIL", MB_OK );
  1146.         }
  1147.         break;
  1148.         case STATE_BB_TIMEOUT:
  1149.         {
  1150.             sbWiFiBBCR->Panels->Items[0]->Text = (AnsiString)"  Write baseband register timeout";
  1151.             Application->MessageBox( "Execution Timeout : Write baseband register", "TIMEOUT", MB_OK );
  1152.         }
  1153.         break;
  1154.         case STATE_BB_STOP:
  1155.             sbWiFiBBCR->Panels->Items[0]->Text = (AnsiString)"  Write baseband register stop";
  1156.         break;
  1157.     }
  1158.     CurrentPageReset();
  1159. }
  1160. //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  1161. void __fastcall TfrmWiFiBBCR::btnReadFromRegisterClick(TObject *Sender)
  1162. {
  1163.     CurrentPageLock();
  1164.     Compose_BBCR_Parameter();
  1165.     if( 0 == m_sBBCR.count )
  1166.     {
  1167.         sbWiFiBBCR->Panels->Items[0]->Text = (AnsiString)"  Please select at least one baseband register ";
  1168.         Application->MessageBox( "Execution Fail : Please select at least one baseband register", "FAIL", MB_OK );
  1169.         return;
  1170.     }
  1171.     m_WIFI_BB_Obj.ConfirmCallback  = ::ConfirmCallback_ReadReg;
  1172.     m_WIFI_BB_Obj.REQ_Read_BBCR_Setting_From_Reg_Start( m_sBBCR );
  1173.     sbWiFiBBCR->Panels->Items[0]->Text = (AnsiString)"  Read baseband register progressing";
  1174. }
  1175. //---------------------------------------------------------------------------
  1176. void TfrmWiFiBBCR::ConfirmCallback_ReadReg( void )
  1177. {
  1178.     int state = m_WIFI_BB_Obj.Get_ConfirmState();
  1179.     switch( state )
  1180.     {
  1181.         case STATE_BB_OK:
  1182.         {
  1183.            // for(int i=0; i<WIFI_BBCR_TYPE_NUM; i++ )
  1184.            // {
  1185.            //     for(int j=0; j<WIFI_BBCR_MAX_NUM; j++ )
  1186.            //     {
  1187.            //         m_sBBCR_Setting[i][j].value = m_WIFI_BB_Obj.Get_WiFiBBCRValue( i, j );
  1188.            //     }
  1189.            // }
  1190.             m_sBBCR = m_WIFI_BB_Obj.Get_BBCR();
  1191.             DeCompose_BBCR_Data();
  1192.             ReDrawFields();
  1193.             sbWiFiBBCR->Panels->Items[0]->Text = (AnsiString)"  Read baseband register successfully";
  1194.         }
  1195.         break;
  1196.         case STATE_BB_FAIL:
  1197.         {
  1198.             sbWiFiBBCR->Panels->Items[0]->Text = (AnsiString)"  Read baseband register fail";
  1199.             Application->MessageBox( "Execution Fail : Read baseband register", "FAIL", MB_OK );
  1200.         }
  1201.         break;
  1202.         case STATE_BB_TIMEOUT:
  1203.         {
  1204.             sbWiFiBBCR->Panels->Items[0]->Text = (AnsiString)"  Read baseband register timeout";
  1205.             Application->MessageBox( "Execution Timeout : Read baseband register", "TIMEOUT", MB_OK );
  1206.         }
  1207.         break;
  1208.         case STATE_BB_STOP:
  1209.             sbWiFiBBCR->Panels->Items[0]->Text = (AnsiString)"  Read baseband register stop";
  1210.         break;
  1211.     }
  1212.     CurrentPageReset();
  1213. }
  1214. //---------------------------------------------------------------------------
  1215. void __fastcall TfrmWiFiBBCR::HintTimerTimer(TObject *Sender)
  1216. {
  1217.     HintTimer->Enabled = false;
  1218.     lblHint->Visible = false;
  1219. }
  1220. //---------------------------------------------------------------------------
  1221. void TfrmWiFiBBCR::Compose_BBCR_Parameter( void )
  1222. {
  1223.     m_sBBCR.count = 0;
  1224.     for(int i=0; i<WIFI_BBCR_TYPE_NUM; i++ )
  1225.     {
  1226.         for(int j=0; j<WIFI_BBCR_MAX_NUM; j++ )
  1227.         {
  1228.             if( m_sBBCR_Setting[i][j].checked )
  1229.             {
  1230.                 m_sBBCR.bb_reg8[m_sBBCR.count].index = m_sBBCR_Setting[i][j].idx;
  1231.                 m_sBBCR.count++;
  1232.             }
  1233.         }
  1234.     }
  1235. #if 0
  1236.    // m_sBBCR.number = m_sBBCR_Setting[WIFI_BBCR_BBPC][WIFI_BBPC_NUM-1].idx+1;
  1237.     m_sBBCR.index = m_sBBCR_Setting[WIFI_BBCR_IPC][0].idx; // 0x00
  1238.     for( i=0; i<m_sBBCR.number; i++ )
  1239.         m_sBBCR.flag[i] = false;
  1240.     for(int i=0; i<WIFI_BBCR_TYPE_NUM; i++ )
  1241.     {
  1242.         for(int j=0; j<WIFI_BBCR_MAX_NUM; j++ )
  1243.         {
  1244.             if( m_sBBCR_Setting[i][j].checked )
  1245.             {
  1246.                 m_sBBCR.flag[m_sBBCR_Setting[i][j].idx] = true;
  1247.             }
  1248.         }
  1249.     }
  1250. #endif
  1251. }
  1252. //---------------------------------------------------------------------------
  1253. void TfrmWiFiBBCR::Compose_BBCR_Data( void )
  1254. {
  1255.     int count=0;
  1256.     for(int i=0; i<WIFI_BBCR_TYPE_NUM; i++ )
  1257.     {
  1258.         for(int j=0; j<WIFI_BBCR_MAX_NUM; j++ )
  1259.         {
  1260.             if( m_sBBCR_Setting[i][j].checked )
  1261.             {
  1262.                 m_sBBCR.bb_reg8[count].bbcr_data8 = m_sBBCR_Setting[i][j].value;
  1263.                 count++;
  1264.             }
  1265.         }
  1266.     }
  1267. }
  1268. //---------------------------------------------------------------------------
  1269. void TfrmWiFiBBCR::DeCompose_BBCR_Data( void )
  1270. {
  1271.     int count=0;
  1272.     for(int i=0; i<WIFI_BBCR_TYPE_NUM; i++ )
  1273.     {
  1274.         for(int j=0; j<WIFI_BBCR_MAX_NUM; j++ )
  1275.         {
  1276.             if( m_sBBCR_Setting[i][j].checked )
  1277.             {
  1278.                 m_sBBCR_Setting[i][j].value = m_sBBCR.bb_reg8[count].bbcr_data8;
  1279.                 count++;
  1280.             }
  1281.         }
  1282.     }
  1283. }