LAPTOP-SNT8I5JK\Boounion
2025-07-01 276074e350f64ec8b71d0573a9936c075a345270
1.VCR结果上报,测试OK;
2.Aligner和Measurement的Panel data上报。
已修改5个文件
41 ■■■■ 文件已修改
SourceCode/Bond/Servo/CBonder.cpp 17 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
SourceCode/Bond/Servo/CEFEM.cpp 1 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
SourceCode/Bond/Servo/CEquipment.cpp 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
SourceCode/Bond/Servo/CMeasurement.cpp 17 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
SourceCode/Bond/Servo/CVcrEventReport.cpp 4 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
SourceCode/Bond/Servo/CBonder.cpp
@@ -349,23 +349,6 @@
        }
        {
            // Panel Data Report
            CEqReadStep* pStep = new CEqReadStep(0xA17f, 386 * 2,
                [&](void* pFrom, int code, const char* pszData, size_t size) -> int {
                    if (code == ROK && pszData != nullptr && size > 0) {
                        decodePanelDataReport((CStep*)pFrom, pszData, size);
                    }
                    return -1;
                });
            pStep->setName(STEP_EQ_PANEL_DATA_REPORT);
            pStep->setProp("Port", (void*)1);
            pStep->setWriteSignalDev(0x45e);
            if (addStep(STEP_ID_PANEL_DATA_REPORT, pStep) != 0) {
                delete pStep;
            }
        }
        {
            // FAC Data Report
            CEqReadStep* pStep = new CEqReadStep(0xA60E, 108 * 2,
                [&](void* pFrom, int code, const char* pszData, size_t size) -> int {
SourceCode/Bond/Servo/CEFEM.cpp
@@ -473,6 +473,7 @@
            pStep->setName(STEP_EQ_VCR1_EVENT_REPORT);
            pStep->setProp("Port", (void*)1);
            pStep->setWriteSignalDev(0x4a);
            pStep->setReturnDev(0x91e);
            if (addStep(STEP_ID_VCR1_EVENT_REPORT, pStep) != 0) {
                delete pStep;
            }
SourceCode/Bond/Servo/CEquipment.cpp
@@ -1619,7 +1619,7 @@
        index += sizeof(short);
        CToolUnits::convertString(&pszData[index], 128 * 2, strPanelJudgeData);
        index += 128 * 2;
        CToolUnits::convertString(&pszData[index], 256 * 2, strPanelJudgeData);
        CToolUnits::convertString(&pszData[index], 256 * 2, strPanelGradeData);
        index += 256 * 2;
SourceCode/Bond/Servo/CMeasurement.cpp
@@ -363,6 +363,23 @@
                delete pStep;
            }
        }
        {
            // Panel Data Report
            CEqReadStep* pStep = new CEqReadStep(0x1A17f, 386 * 2,
                [&](void* pFrom, int code, const char* pszData, size_t size) -> int {
                    if (code == ROK && pszData != nullptr && size > 0) {
                        decodePanelDataReport((CStep*)pFrom, pszData, size);
                    }
                    return -1;
                });
            pStep->setName(STEP_EQ_PANEL_DATA_REPORT);
            pStep->setProp("Port", (void*)1);
            pStep->setWriteSignalDev(0x105e);
            if (addStep(STEP_ID_PANEL_DATA_REPORT, pStep) != 0) {
                delete pStep;
            }
        }
    }
    // 必须要实现的虚函数,在此初始化Slot信息
SourceCode/Bond/Servo/CVcrEventReport.cpp
@@ -46,7 +46,7 @@
    int CVcrEventReport::serialize(char* pszBuffer, int nBufferSize)
    {
        if (nBufferSize < 640) return -1;
        if (nBufferSize < 30) return -1;
        int index = 0;
        int strLen = min(20, m_strGlassId.size());
@@ -73,7 +73,7 @@
    int CVcrEventReport::unserialize(const char* pszBuffer, int nBufferSize)
    {
        if (nBufferSize < 640) return -1;
        if (nBufferSize < 30) return -1;
        int index = 0;
        CToolUnits::convertString(&pszBuffer[index], 20, m_strGlassId);