📄 multiportflashdownloadtool.cpp_bak
字号:
miMT6208->Checked = false;
miMT6217->Checked = false;
miMT6218->Checked = false;
miMT6218B->Checked = false;
miMT6219->Checked = false;
as_Baseband_chip = "auto detect";
}
break;
}
}
//------------------------------------------------------------------------------
void TMainForm::Save_BasebandChip( void )
{
INIFileH.write_Baseband_chip( "MultiPortFlashDownloadProject.ini", Application->ExeName, as_Baseband_chip);
}
//=============================================================================
void TMainForm::Display_ExternalClock( void )
{
as_External_clock = INIFileH.read_External_clock( "MultiPortFlashDownloadProject.ini", Application->ExeName );
External_clock_type = Get_ExternalClockType(as_External_clock);
switch( External_clock_type )
{
case EXT_13M:
{
mi13MHz->Checked = true;
mi26MHz->Checked = false;
mi39MHz->Checked = false;
mi52MHz->Checked = false;
}
break;
case EXT_39M:
{
mi39MHz->Checked = true;
mi13MHz->Checked = false;
mi26MHz->Checked = false;
mi52MHz->Checked = false;
}
break;
case EXT_52M:
{
mi52MHz->Checked = true;
mi13MHz->Checked = false;
mi26MHz->Checked = false;
mi39MHz->Checked = false;
}
break;
case EXT_26M:
default:
{
// set to 26mhz
mi26MHz->Checked = true;
mi13MHz->Checked = false;
mi39MHz->Checked = false;
mi52MHz->Checked = false;
as_External_clock = (AnsiString) "26mhz";
}
break;
}
}
//------------------------------------------------------------------------------
void TMainForm::Save_ExternalClock( void )
{
INIFileH.write_External_clock( "MultiPortFlashDownloadProject.ini", Application->ExeName, as_External_clock);
}
//=============================================================================
void TMainForm::Display_CheckECOVersion( void )
{
as_CheckECOVersion = INIFileH.read_CheckECOVersion( "MultiPortFlashDownloadProject.ini", Application->ExeName );
if( as_CheckECOVersion.AnsiCompareIC("no") == 0 )
{
bCheckECOVersion = false;
miCheckECOversion->Checked = false;
}
else
{
as_CheckECOVersion = "yes";
bCheckECOVersion = true;
miCheckECOversion->Checked = true;
}
}
//-----------------------------------------------------------------------------
void TMainForm::Save_CheckECOVersion( void )
{
INIFileH.write_CheckECOVersion( "MultiPortFlashDownloadProject.ini", Application->ExeName, as_CheckECOVersion);
}
//=============================================================================
void TMainForm::Display_CheckTargetResourceLayout( void )
{
AnsiString as_CheckTgtResLayout = INIFileH.read_CheckTgtResLayout( "MultiPortFlashDownloadProject.ini", Application->ExeName );
if( as_CheckTgtResLayout.AnsiCompareIC("no") == 0 )
{
b_CheckTgtResLayout = false;
miCheckTargetResourceLayout->Checked = false;
}
else
{
b_CheckTgtResLayout = true;
miCheckTargetResourceLayout->Checked = true;
}
}
//-----------------------------------------------------------------------------
void TMainForm::Save_CheckTargetResourceLayout( void )
{
if( miCheckTargetResourceLayout->Checked )
{
INIFileH.write_CheckTgtResLayout( "MultiPortFlashDownloadProject.ini", Application->ExeName, "yes");
}
else
{
INIFileH.write_CheckTgtResLayout( "MultiPortFlashDownloadProject.ini", Application->ExeName, "no");
}
}
//=============================================================================
void TMainForm::Display_AutoLoadResByScat( void )
{
AnsiString as_AutoLoadResByScat = INIFileH.read_AutoLoadResByScat( "MultiPortFlashDownloadProject.ini", Application->ExeName );
if( as_AutoLoadResByScat.AnsiCompareIC("no") == 0 )
{
b_AutoLoadResByScat = false;
miAutoLoadResourcefilesByScatter->Checked = false;
}
else
{
b_AutoLoadResByScat = true;
miAutoLoadResourcefilesByScatter->Checked = true;
}
}
//-----------------------------------------------------------------------------
void TMainForm::Save_AutoLoadResByScat( void )
{
if( miAutoLoadResourcefilesByScatter->Checked )
{
INIFileH.write_AutoLoadResByScat( "MultiPortFlashDownloadProject.ini", Application->ExeName, "yes");
}
else
{
INIFileH.write_AutoLoadResByScat( "MultiPortFlashDownloadProject.ini", Application->ExeName, "no");
}
}
//=============================================================================
void TMainForm::Display_CompareResProjectId( void )
{
AnsiString as_CompareResProjectId = INIFileH.read_CompareResProjectId( "MultiPortFlashDownloadProject.ini", Application->ExeName );
if( as_CompareResProjectId.AnsiCompareIC("no") == 0 )
{
b_CompareResProjectId = false;
miCompareResourceProjectId->Checked = false;
}
else
{
b_CompareResProjectId = true;
miCompareResourceProjectId->Checked = true;
}
DL_ResourceProjectIdComparisonSetting(g_DL_HANDLE, b_CompareResProjectId?_TRUE:_FALSE);
}
//-----------------------------------------------------------------------------
void TMainForm::Save_CompareResProjectId( void )
{
if( miCompareResourceProjectId->Checked )
{
INIFileH.write_CompareResProjectId( "MultiPortFlashDownloadProject.ini", Application->ExeName, "yes");
}
else
{
INIFileH.write_CompareResProjectId( "MultiPortFlashDownloadProject.ini", Application->ExeName, "no");
}
}
//=============================================================================
void TMainForm::Display_Baudrate( void )
{
as_Baudrate = INIFileH.read_Baudrate( "MultiPortFlashDownloadProject.ini", Application->ExeName );
UART_baud_rate = Get_Baudrate( as_Baudrate );
switch( UART_baud_rate )
{
case UART_BAUD_115200:
cbBaudrate->ItemIndex = BAUD_RATE_115200_INDEX;
break;
case UART_BAUD_230400:
cbBaudrate->ItemIndex = BAUD_RATE_230400_INDEX;
break;
case UART_BAUD_460800:
cbBaudrate->ItemIndex = BAUD_RATE_460800_INDEX;
break;
case UART_BAUD_921600:
cbBaudrate->ItemIndex = BAUD_RATE_921600_INDEX;
break;
default: // default set to 460800
UART_baud_rate = UART_BAUD_460800;
cbBaudrate->ItemIndex = BAUD_RATE_460800_INDEX;
as_Baudrate = (AnsiString) "460800";
break;
}
}
//------------------------------------------------------------------------------
void TMainForm::Save_Baudrate( void )
{
switch ( cbBaudrate->ItemIndex )
{
case BAUD_RATE_115200_INDEX:
INIFileH.write_Baudrate( "MultiPortFlashDownloadProject.ini", Application->ExeName, (AnsiString) "115200");
break;
case BAUD_RATE_230400_INDEX:
INIFileH.write_Baudrate( "MultiPortFlashDownloadProject.ini", Application->ExeName, (AnsiString) "230400");
break;
case BAUD_RATE_460800_INDEX:
INIFileH.write_Baudrate( "MultiPortFlashDownloadProject.ini", Application->ExeName, (AnsiString) "460800");
break;
case BAUD_RATE_921600_INDEX:
INIFileH.write_Baudrate( "MultiPortFlashDownloadProject.ini", Application->ExeName, (AnsiString) "921600");
break;
default: // default set to 460800
INIFileH.write_Baudrate( "MultiPortFlashDownloadProject.ini", Application->ExeName, (AnsiString) "460800");
break;
}
}
//=============================================================================
void TMainForm::Display_AutoPollingEnabled( void )
{
int i, j;
as_AutoPollingEnabled = INIFileH.read_AutoPollingEnabled( "MultiPortFlashDownloadProject.ini", Application->ExeName );
iAutoPolling = as_AutoPollingEnabled.ToInt();
for (i=0; i<MAX_SUPPORT_PORT_NUM; i++)
{
cbAutoPollingArray[i]->Caption = "Auto polling " + IntToStr( m_TheFirstComNo + i);
}
for(i=0; i<MAX_SUPPORT_PORT_NUM; i++)
{
j= (iAutoPolling & (1<<i));
if(j==0)
{
cbAutoPollingArray[i]->Checked = false;
}
else
{
cbAutoPollingArray[i]->Checked = true;
}
}
}
//----------------------------------------------------------------------------
void TMainForm::Save_AutoPollingEnabled( void )
{
INIFileH.write_AutoPollingEnabled( "MultiPortFlashDownloadProject.ini", Application->ExeName, "0x"+IntToHex(iAutoPolling,2));
}
//==============================================================================
void TMainForm::get_PullDownGPIO17( void )
{
as_PullDownGPIO17 = INIFileH.read_Pull_down_GPIO17( "MultiPortFlashDownloadProject.ini", Application->ExeName );
if( as_PullDownGPIO17.AnsiCompareIC( "yes" ) == 0 )
{
isPullDownGPIO17 = true;
}
else
{
isPullDownGPIO17 = false;
}
}
//------------------------------------------------------------------------------
void __fastcall TMainForm::btnStartAllClick(TObject *Sender)
{
bool result;
int i;
int m_DownLoadStatusResult;
COM_PORT_HANDLE ComPortNo;
if( (result=DownloadCommonFunction()) == false )
{
return;
}
// for (i=0;i<MAX_SUPPORT_PORT_NUM;i++)
// {
// DownloadStatus[i] = DOWNLOAD_STATUS_RUNNING;
// }
Disable_UIComponent();
//Get_Baudrate();
// reset timer and enable timer to click
//m_DownLoadTimeSec = 0;
// Timer_M_DownLoad->Enabled = true;
for (i=0;i<MAX_SUPPORT_PORT_NUM;i++)
{
if(cbCOMArray[i]->Checked == true && DownloadStatus[i] == DOWNLOAD_STATUS_NOTRUNNING)
{
if( miEnableFDLog->Checked )
{
// access
TDateTime datetime;
TDateTime date = datetime.CurrentDate();
TDateTime time = datetime.CurrentTime();
sTime stime;
time.DecodeTime( &stime.hour, &stime.min, &stime.sec, &stime.msec);
MainForm->SetDnDate( i, date );
MainForm->SetDnStartTime( i, time );
MainForm->SetDnStartsTime( i, stime );
}
stopflag[i] = 0;
DownLoadTimeSec[i] = 0;
COMPercentageArray[i]->Caption = "";
TimerCOMArray[i]->Enabled = true;
ComPortNo.number = (i + m_TheFirstComNo);
A_Thread[i] = new TBOOT1(FALSE, hPostMsgDestHandle, ComPortNo, Baseband_chip_type,
External_clock_type, bCheckECOVersion, UART_baud_rate,
bFormatNeeded);
DownloadStatus[i] = DOWNLOAD_STATUS_RUNNING;
btnCOMStartArray[i]->Enabled = false;
cbCOMArray[i]->Enabled = false;
cbAutoPollingArray[i]->Enabled = false;
isStopTrigger[i] = false;
}
}
new WaitForFinish(FALSE);
//Sleep(100);
// power on
}
//---------------------------------------------------------------------------
void __fastcall TMainForm::FormClose(TObject *Sender, TCloseAction &Action)
{
int i;
for(i=0; i<MAX_SUPPORT_PORT_NUM; i++)
{
ResetEvent( Flash_Download_Event[i] );
}
btnStopAllClick( this );
for(int i=0; i<MAX_SUPPORT_PORT_NUM; i++)
{
if( DownloadStatus[i] == DOWNLOAD_STATUS_RUNNING )
{
WaitForSingleObject( Flash_Download_Event[i], 1000 );
}
}
// Save setting to .INI
TIniFile *ini;
ini = new TIniFile(
ChangeFileExt( Application->ExeName, ".INI" ) );
WriteFileSetting();
// INIFileH.write_Baudrate( "MultiPortFlashDownloadProject.ini", Application->ExeName, as_Baudrate);
// stop all timer
for(int i=0; i<MAX_SUPPORT_PORT_NUM; i++)
{
TimerCOMArray[i]->Enabled = false;
}
// Disable Debug
Brom_DebugOff();
// DESTROY HANDLE
DL_Destroy(&g_DL_HANDLE);
DA_Destroy(&g_DA_HANDLE);
// save menu setting
Save_BasebandChip();
Save_ExternalClock();
Save_CheckECOVersion();
Save_Baudrate();
Save_ComEnabled();
Save_AutoPollingEnabled();
Save_Type();
Save_FormatFatRange();
Save_LVSetting();
// access
Save_DataSource();
Save_DBLogOption();
}
//==============================================================================
/////////////////////
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -