|
@@ -1349,14 +1349,38 @@ void CMainFrame::OnCombo1_22293()
|
|
|
{
|
|
|
CString strChroma1 = pCombobx1->GetEditText();
|
|
|
WritePrivateProfileString(_T("SATHelper"), _T("chroma1"), strChroma1, m_szRsCfgPath);
|
|
|
+ m_rscfg.chroma1 = strChroma1.GetString();
|
|
|
|
|
|
- CDevice* pDev = g_dmap.find(1)->second;
|
|
|
- int port = atoi(strChroma1.Right(1).GetString());
|
|
|
- if (pDev->m_iPort != port)
|
|
|
+ if (g_dmap.find(1) == g_dmap.end())
|
|
|
{
|
|
|
- pDev->m_iPort = port;
|
|
|
- pDev->Close();
|
|
|
- pDev->Open();
|
|
|
+ CDevice* pdev = new CDevice();
|
|
|
+ pdev->m_iBaudrate = 115200;
|
|
|
+ pdev->m_iDatabit = 8;
|
|
|
+ pdev->m_iPort = atoi(m_rscfg.chroma1.substr(3).c_str());
|
|
|
+ pdev->m_iParitybit = 0;
|
|
|
+ pdev->m_iStopbit = 1;
|
|
|
+ pdev->m_iID = 1;
|
|
|
+ pdev->m_strDeviceName = "Chroma22293";
|
|
|
+ pdev->m_iDeviceType = 1;
|
|
|
+ if (pdev->Open())
|
|
|
+ {
|
|
|
+ g_dmap.insert(std::pair<int, CDevice*>(pdev->m_iID, pdev));
|
|
|
+ }
|
|
|
+ else
|
|
|
+ {
|
|
|
+ delete pdev;
|
|
|
+ }
|
|
|
+ }
|
|
|
+ else
|
|
|
+ {
|
|
|
+ CDevice* pDev = g_dmap.find(1)->second;
|
|
|
+ int port = atoi(strChroma1.Right(1).GetString());
|
|
|
+ if (pDev->m_iPort != port)
|
|
|
+ {
|
|
|
+ pDev->m_iPort = port;
|
|
|
+ pDev->Close();
|
|
|
+ pDev->Open();
|
|
|
+ }
|
|
|
}
|
|
|
}
|
|
|
}
|
|
@@ -1379,14 +1403,38 @@ void CMainFrame::OnCombo2_22293()
|
|
|
{
|
|
|
CString strChroma2 = pCombobx2->GetEditText();
|
|
|
WritePrivateProfileString(_T("SATHelper"), _T("chroma2"), strChroma2, m_szRsCfgPath);
|
|
|
+ m_rscfg.chroma2 = strChroma2.GetString();
|
|
|
|
|
|
- CDevice* pDev = g_dmap.find(2)->second;
|
|
|
- int port = atoi(strChroma2.Right(1).GetString());
|
|
|
- if (pDev->m_iPort != port)
|
|
|
+ if (g_dmap.find(2) == g_dmap.end())
|
|
|
{
|
|
|
- pDev->m_iPort = port;
|
|
|
- pDev->Close();
|
|
|
- pDev->Open();
|
|
|
+ CDevice* pdev = new CDevice();
|
|
|
+ pdev->m_iBaudrate = 115200;
|
|
|
+ pdev->m_iDatabit = 8;
|
|
|
+ pdev->m_iPort = atoi(m_rscfg.chroma2.substr(3).c_str());
|
|
|
+ pdev->m_iParitybit = 0;
|
|
|
+ pdev->m_iStopbit = 1;
|
|
|
+ pdev->m_iID = 2;
|
|
|
+ pdev->m_strDeviceName = "Chroma22293";
|
|
|
+ pdev->m_iDeviceType = 1;
|
|
|
+ if (pdev->Open())
|
|
|
+ {
|
|
|
+ g_dmap.insert(std::pair<int, CDevice*>(pdev->m_iID, pdev));
|
|
|
+ }
|
|
|
+ else
|
|
|
+ {
|
|
|
+ delete pdev;
|
|
|
+ }
|
|
|
+ }
|
|
|
+ else
|
|
|
+ {
|
|
|
+ CDevice* pDev = g_dmap.find(2)->second;
|
|
|
+ int port = atoi(strChroma2.Right(1).GetString());
|
|
|
+ if (pDev->m_iPort != port)
|
|
|
+ {
|
|
|
+ pDev->m_iPort = port;
|
|
|
+ pDev->Close();
|
|
|
+ pDev->Open();
|
|
|
+ }
|
|
|
}
|
|
|
}
|
|
|
}
|