📄 form_wifimcr.cpp
字号:
m_sMCR_Setting[WIFI_MCR_SC][0].addr = 0x0000; // "SCR";
m_sMCR_Setting[WIFI_MCR_SC][1].addr = 0x0018; // "MRBS";
m_sMCR_Setting[WIFI_MCR_SC][2].addr = 0x0020; // "DEVID";
m_sMCR_Setting[WIFI_MCR_SC][3].addr = 0x0050; // "GPIOCR";
// Miscellaneous and Debug Port
m_sMCR_Setting[WIFI_MCR_MDP][0].addr = 0x0080; // "PRBCR";
m_sMCR_Setting[WIFI_MCR_MDP][1].addr = 0x0084; // "PRBSR";
m_sMCR_Setting[WIFI_MCR_MDP][2].addr = 0x0088; // "PFWDR";
m_sMCR_Setting[WIFI_MCR_MDP][3].addr = 0x008C; // "PRBDR";
m_sMCR_Setting[WIFI_MCR_MDP][4].addr = 0x0094; // "CTPR1";
m_sMCR_Setting[WIFI_MCR_MDP][5].addr = 0x0100; // "QCR";
m_sMCR_Setting[WIFI_MCR_MDP][6].addr = 0x0104; // "ISAR";
m_sMCR_Setting[WIFI_MCR_MDP][7].addr = 0x0108; // "IER";
m_sMCR_Setting[WIFI_MCR_MDP][8].addr = 0x0188; // "DRNGR";
m_sMCR_Setting[WIFI_MCR_MDP][9].addr = 0x018C; // "AIFSR";
m_sMCR_Setting[WIFI_MCR_MDP][10].addr = 0x0190; // "TQCWR";
m_sMCR_Setting[WIFI_MCR_MDP][11].addr = 0x0194; // "AC0CWR";
m_sMCR_Setting[WIFI_MCR_MDP][12].addr = 0x0198; // "AC1CWR";
m_sMCR_Setting[WIFI_MCR_MDP][13].addr = 0x019C; // "AC2CWR";
m_sMCR_Setting[WIFI_MCR_MDP][14].addr = 0x01A0; // "AC3CWR";
m_sMCR_Setting[WIFI_MCR_MDP][15].addr = 0x0500; // "LNUIR0";
m_sMCR_Setting[WIFI_MCR_MDP][16].addr = 0x0504; // "LNUIR1";
m_sMCR_Setting[WIFI_MCR_MDP][17].addr = 0x0508; // "LNUIR2";
// Phyical Layer Control Interface
m_sMCR_Setting[WIFI_MCR_PLCI][0].addr = 0x0240; // "PCICR";
m_sMCR_Setting[WIFI_MCR_PLCI][1].addr = 0x0248; // "PBAR";
m_sMCR_Setting[WIFI_MCR_PLCI][2].addr = 0x0280; // "PPORCR0";
m_sMCR_Setting[WIFI_MCR_PLCI][3].addr = 0x0284; // "PPORCR1";
m_sMCR_Setting[WIFI_MCR_PLCI][4].addr = 0x0288; // "PPDRCR0";
m_sMCR_Setting[WIFI_MCR_PLCI][5].addr = 0x028C; // "PPDRCR1";
m_sMCR_Setting[WIFI_MCR_PLCI][6].addr = 0x0290; // "PPDRCR2";
m_sMCR_Setting[WIFI_MCR_PLCI][7].addr = 0x0294; // "PPMCR";
m_sMCR_Setting[WIFI_MCR_PLCI][8].addr = 0x02A0; // "PSCR";
m_sMCR_Setting[WIFI_MCR_PLCI][9].addr = 0x02A4; // "PSPR";
m_sMCR_Setting[WIFI_MCR_PLCI][10].addr = 0x02A8; // "LCR";
m_sMCR_Setting[WIFI_MCR_PLCI][11].addr = 0x02AC; // "ACR";
// MAC Protocol Timing Control
m_sMCR_Setting[WIFI_MCR_MPTC][0].addr = 0x03F8; // "CWBR";
m_sMCR_Setting[WIFI_MCR_MPTC][1].addr = 0x03FC; // "MPTR";
m_sMCR_Setting[WIFI_MCR_MPTC][2].addr = 0x0400; // "MPDR";
m_sMCR_Setting[WIFI_MCR_MPTC][3].addr = 0x0404; // "TNTDR";
m_sMCR_Setting[WIFI_MCR_MPTC][4].addr = 0x0408; // "STDR";
m_sMCR_Setting[WIFI_MCR_MPTC][5].addr = 0x040C; // "EPDDR";
m_sMCR_Setting[WIFI_MCR_MPTC][6].addr = 0x0410; // "CRFCR0";
m_sMCR_Setting[WIFI_MCR_MPTC][7].addr = 0x0414; // "CRFCR1";
m_sMCR_Setting[WIFI_MCR_MPTC][8].addr = 0x0418; // "DTR";
m_sMCR_Setting[WIFI_MCR_MPTC][9].addr = 0x041C; // "BCWR";
m_sMCR_Setting[WIFI_MCR_MPTC][10].addr = 0x0420; // "RFTPCR";
m_sMCR_Setting[WIFI_MCR_MPTC][11].addr = 0x0440; // "LTTR0";
m_sMCR_Setting[WIFI_MCR_MPTC][12].addr = 0x0444; // "LTTR1";
m_sMCR_Setting[WIFI_MCR_MPTC][13].addr = 0x0448; // "TTAR0";
m_sMCR_Setting[WIFI_MCR_MPTC][14].addr = 0x044C; // "TTAR1";
m_sMCR_Setting[WIFI_MCR_MPTC][15].addr = 0x0450; // "TTAR2";
m_sMCR_Setting[WIFI_MCR_MPTC][16].addr = 0x0454; // "TTSCS";
m_sMCR_Setting[WIFI_MCR_MPTC][17].addr = 0x0458; // "TTTC";
// NVA Control
m_sMCR_Setting[WIFI_MCR_NC][0].addr = 0x0470; // "LNR";
m_sMCR_Setting[WIFI_MCR_NC][1].addr = 0x0474; // "NRTR";
m_sMCR_Setting[WIFI_MCR_NC][2].addr = 0x0478; // "NSUR";
m_sMCR_Setting[WIFI_MCR_NC][3].addr = 0x047C; // "TTIC";
// Beacon Generation
m_sMCR_Setting[WIFI_MCR_BG][0].addr = 0x0480; // "BGCR0";
m_sMCR_Setting[WIFI_MCR_BG][1].addr = 0x0484; // "BGCR1";
m_sMCR_Setting[WIFI_MCR_BG][2].addr = 0x0488; // "SWBCCR";
m_sMCR_Setting[WIFI_MCR_BG][3].addr = 0x048C; // "SWBCDR";
m_sMCR_Setting[WIFI_MCR_BG][4].addr = 0x0490; // "ARRCR";
m_sMCR_Setting[WIFI_MCR_BG][5].addr = 0x0494; // "AFRCR";
m_sMCR_Setting[WIFI_MCR_BG][6].addr = 0x0498; // "ATFCR";
m_sMCR_Setting[WIFI_MCR_BG][7].addr = 0x049C; // "ATBCR";
// Security Engine
m_sMCR_Setting[WIFI_MCR_SE][0].addr = 0x0200; // "SKACR";
m_sMCR_Setting[WIFI_MCR_SE][1].addr = 0x0204; // "SKADR0";
m_sMCR_Setting[WIFI_MCR_SE][2].addr = 0x0208; // "SKADR1";
m_sMCR_Setting[WIFI_MCR_SE][3].addr = 0x020C; // "SKADR2";
m_sMCR_Setting[WIFI_MCR_SE][4].addr = 0x0210; // "SKADR3";
m_sMCR_Setting[WIFI_MCR_SE][5].addr = 0x0214; // "SKADR4";
m_sMCR_Setting[WIFI_MCR_SE][6].addr = 0x0218; // "SKADR5";
m_sMCR_Setting[WIFI_MCR_SE][7].addr = 0x021C; // "SCPR0";
m_sMCR_Setting[WIFI_MCR_SE][8].addr = 0x0220; // "SCPR1";
m_sMCR_Setting[WIFI_MCR_SE][9].addr = 0x0224; // "SKADR6";
m_sMCR_Setting[WIFI_MCR_SE][10].addr = 0x0228; // "SKADR7";
// Transmitter Control
m_sMCR_Setting[WIFI_MCR_TC][0].addr = 0x0300; // "ACWLR";
m_sMCR_Setting[WIFI_MCR_TC][1].addr = 0x0304; // "MPTCR";
m_sMCR_Setting[WIFI_MCR_TC][2].addr = 0x0308; // "NPTCR";
m_sMCR_Setting[WIFI_MCR_TC][3].addr = 0x030C; // "NTTCR";
m_sMCR_Setting[WIFI_MCR_TC][4].addr = 0x0310; // "TXOPGBNTCR";
m_sMCR_Setting[WIFI_MCR_TC][5].addr = 0x0314; // "NDTCR";
m_sMCR_Setting[WIFI_MCR_TC][6].addr = 0x0318; // "NCSTCR";
m_sMCR_Setting[WIFI_MCR_TC][7].addr = 0x031C; // "ACTXOPR0";
m_sMCR_Setting[WIFI_MCR_TC][8].addr = 0x0320; // "ACTXOPR1";
m_sMCR_Setting[WIFI_MCR_TC][9].addr = 0x0324; // "TSTGPCR";
m_sMCR_Setting[WIFI_MCR_TC][10].addr = 0x0328; // "TSTNTCR0";
m_sMCR_Setting[WIFI_MCR_TC][11].addr = 0x032C; // "TSTNTCR1";
// Receiver Control
m_sMCR_Setting[WIFI_MCR_RC][0].addr = 0x0360; // "DRCR";
m_sMCR_Setting[WIFI_MCR_RC][1].addr = 0x0364; // "RFECR";
m_sMCR_Setting[WIFI_MCR_RC][2].addr = 0x0368; // "RFFCR";
m_sMCR_Setting[WIFI_MCR_RC][3].addr = 0x036C; // "RPCR";
m_sMCR_Setting[WIFI_MCR_RC][4].addr = 0x0370; // "CICR";
m_sMCR_Setting[WIFI_MCR_RC][5].addr = 0x0374; // "CACR";
m_sMCR_Setting[WIFI_MCR_RC][6].addr = 0x0378; // "CATR";
m_sMCR_Setting[WIFI_MCR_RC][7].addr = 0x037C; // "CSACR";
m_sMCR_Setting[WIFI_MCR_RC][8].addr = 0x0380; // "RFBCR";
m_sMCR_Setting[WIFI_MCR_RC][9].addr = 0x03A0; // "OMAR0";
m_sMCR_Setting[WIFI_MCR_RC][10].addr = 0x03A4; // "OMAR1";
m_sMCR_Setting[WIFI_MCR_RC][11].addr = 0x03A8; // "CBR0";
m_sMCR_Setting[WIFI_MCR_RC][12].addr = 0x03AC; // "CBR1";
m_sMCR_Setting[WIFI_MCR_RC][13].addr = 0x03B0; // "AMAR0";
m_sMCR_Setting[WIFI_MCR_RC][14].addr = 0x03B4; // "AMAR1";
// HIF_HPI
m_sMCR16_Setting[WIFI_MCR16_HIF_HPI][0].addr = 0x780; // "HPI_CHIPID";
m_sMCR16_Setting[WIFI_MCR16_HIF_HPI][1].addr = 0x78C; // "HPI_MAC_STS";
m_sMCR16_Setting[WIFI_MCR16_HIF_HPI][2].addr = 0x7FC; // "HPI_CTRL";
m_sMCR16_Setting[WIFI_MCR16_HIF_HPI][3].addr = 0x7FE; // "HPI_POWER_CTRL";
m_sMCR16_Setting[WIFI_MCR16_HIF_HPI][4].addr = 0x600; // "TX_DATA_PORT";
m_sMCR16_Setting[WIFI_MCR16_HIF_HPI][5].addr = 0x640; // "TX_STATUS_PORT";
m_sMCR16_Setting[WIFI_MCR16_HIF_HPI][6].addr = 0x680; // "RX_STATUS_PORT";
m_sMCR16_Setting[WIFI_MCR16_HIF_HPI][7].addr = 0x6c0; // "RX_DATA_PORT";
// Set value
for( i=0; i<WIFI_MCR_TYPE_NUM; i++ )
{
for( j=0; j<WIFI_MCR_MAX_NUM; j++ )
{ m_sMCR_Setting[i][j].value = 0;
}
}
// Set checked property
for( i=0; i<WIFI_MCR_TYPE_NUM; i++ )
{
for( j=0; j<WIFI_MCR_MAX_NUM; j++ )
{ m_sMCR_Setting[i][j].checked = false;
}
}
Init();
}
//---------------------------------------------------------------------------
void TfrmWiFiMCR::Init( void )
{
m_bInit = true;
}
//---------------------------------------------------------------------------
void TfrmWiFiMCR::ReDrawFields( int idx )
{
int i;
char str[256];
if( idx & DRAW_MCR_COMMON )
{
// system control register
if( 0 == btnSYSMACMCRData->Tag ) // Dec
{
btnSYSMACMCRData->Caption = "MCR Data (Dec)";
// System Control
for( i=0; i<WIFI_SC_NUM; i++ )
{ edtSC[i]->Text = IntToStr( m_sMCR_Setting[WIFI_MCR_SC][i].value );
}
// Miscellaneous and Debug Port
for( i=0; i<WIFI_MDP_NUM; i++ )
{ edtMDP[i]->Text = IntToStr( m_sMCR_Setting[WIFI_MCR_MDP][i].value );
}
// Phyical Layer Control Interface
for( i=0; i<WIFI_PLCI_NUM; i++ )
{ edtPLCI[i]->Text = IntToStr( m_sMCR_Setting[WIFI_MCR_PLCI][i].value );
}
// MAC Protocol Timing Control
for( i=0; i<WIFI_MPTC_NUM; i++ )
{ edtMPTC[i]->Text = IntToStr( m_sMCR_Setting[WIFI_MCR_MPTC][i].value );
}
// NVA Control
for( i=0; i<WIFI_NC_NUM; i++ )
{ edtNC[i]->Text = IntToStr( m_sMCR_Setting[WIFI_MCR_NC][i].value );
}
// Beacon Generation
for( i=0; i<WIFI_BG_NUM; i++ )
{ edtBG[i]->Text = IntToStr( m_sMCR_Setting[WIFI_MCR_BG][i].value );
}
}
else
{
btnSYSMACMCRData->Caption = "MCR Data (Hex)";
// System Control
for( i=0; i<WIFI_SC_NUM; i++ )
{
sprintf( str, "%X", m_sMCR_Setting[WIFI_MCR_SC][i].value );
edtSC[i]->Text = str;
}
// Miscellaneous and Debug Port
for( i=0; i<WIFI_MDP_NUM; i++ )
{
sprintf( str, "%X", m_sMCR_Setting[WIFI_MCR_MDP][i].value );
edtMDP[i]->Text = str;
}
// Phyical Layer Control Interface
for( i=0; i<WIFI_PLCI_NUM; i++ )
{
sprintf( str, "%X", m_sMCR_Setting[WIFI_MCR_PLCI][i].value );
edtPLCI[i]->Text = str;
}
// MAC Protocol Timing Control
for( i=0; i<WIFI_MPTC_NUM; i++ )
{
sprintf( str, "%X", m_sMCR_Setting[WIFI_MCR_MPTC][i].value );
edtMPTC[i]->Text = str;
}
// NVA Control
for( i=0; i<WIFI_NC_NUM; i++ )
{
sprintf( str, "%X", m_sMCR_Setting[WIFI_MCR_NC][i].value );
edtNC[i]->Text = str;
}
// Beacon Generation
for( i=0; i<WIFI_BG_NUM; i++ )
{
sprintf( str, "%X", m_sMCR_Setting[WIFI_MCR_BG][i].value );
edtBG[i]->Text = str;
}
}
}
// TX/RX Releated register
if( 0 == btnTRXMACMCRData->Tag ) // Dec
{
btnTRXMACMCRData->Caption = "MCR Data (Dec)";
if( idx & DRAW_MCR_COMMON )
{
// Security Engine
for( i=0; i<WIFI_SE_NUM; i++ )
{ edtSE[i]->Text = IntToStr( m_sMCR_Setting[WIFI_MCR_SE][i].value );
}
// Transmitter Control
for( i=0; i<WIFI_TC_NUM; i++ )
{ edtTC[i]->Text = IntToStr( m_sMCR_Setting[WIFI_MCR_TC][i].value );
}
// Receiver Control
for( i=0; i<WIFI_RC_NUM; i++ )
{ edtRC[i]->Text = IntToStr( m_sMCR_Setting[WIFI_MCR_RC][i].value );
}
}
if( idx & DRAW_MCR_HIF )
{
// HIF
switch( m_sWiFiCap.host_interface )
{
case WNDRV_HOST_INTERFACE_SDIO:
{
for( i=0; i<WIFI_HIF_SDIO_NUM; i++ )
{ edtHIF[i]->Text = IntToStr( m_sMCR_Setting[WIFI_MCR_HIF_SDIO][i].value );
}
}
break;
case WNDRV_HOST_INTERFACE_HPI:
{
for( i=0; i<WIFI_HIF_HPI_NUM; i++ )
{ edtHIF[i]->Text = IntToStr( m_sMCR16_Setting[WIFI_MCR16_HIF_HPI][i].value );
}
}
break;
case WNDRV_HOST_INTERFACE_SPI:
{
for( i=0; i<WIFI_HIF_SPI_NUM; i++ )
{ edtHIF[i]->Text = IntToStr( m_sMCR_Setting[WIFI_MCR_HIF_SPI][i].value );
}
}
break;
}
}
}
else
{
btnTRXMACMCRData->Caption = "MCR Data (Hex)";
if( idx & DRAW_MCR_COMMON )
{
// Security Engine
for( i=0; i<WIFI_SE_NUM; i++ )
{
sprintf( str, "%X", m_sMCR_Setting[WIFI_MCR_SE][i].value );
edtSE[i]->Text = str;
}
// Transmitter Control
for( i=0; i<WIFI_TC_NUM; i++ )
{
sprintf( str, "%X", m_sMCR_Setting[WIFI_MCR_TC][i].value );
edtTC[i]->Text = str;
}
// Receiver Control
for( i=0; i<WIFI_RC_NUM; i++ )
{
sprintf( str, "%X", m_sMCR_Setting[WIFI_MCR_RC][i].value );
edtRC[i]->Text = str;
}
}
if( idx & DRAW_MCR_HIF )
{
// HIF
switch( m_sWiFiCap.host_interface )
{
case WNDRV_HOST_INTERFACE_SDIO:
{
for( i=0; i<WIFI_HIF_SDIO_NUM; i++ )
{
sprintf( str, "%X", m_sMCR_Setting[WIFI_MCR_HIF_SDIO][i].value );
edtHIF[i]->Text = str;
}
}
break;
case WNDRV_HOST_INTERFACE_HPI:
{
for( i=0; i<WIFI_HIF_HPI_NUM; i++ )
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -