⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 backlighttest.cpp

📁 Microsoft WinCE 6.0 BSP FINAL release source code for use with the i.MX27ADS TO2 WCE600_FINAL_MX27_S
💻 CPP
📖 第 1 页 / 共 2 页
字号:
            return TPR_FAIL;
        }    

        Sleep (1000);
    }

    // go back to mid level
    if(PmicBacklightSetDutyCycle(BACKLIGHT_MAIN_DISPLAY, DutyCycle[NUM_TEST_DUTYCYCLES/2]))
    {
        g_pKato->Log(BKL_ZONE_ERROR, TEXT("BacklightTest.cpp:BacklightCurrentControlModeTest(): PmicBacklightSetDutyCycle() failed!\r\n"));
            
        return TPR_FAIL;
    }

//////////////////////////////////////////////////////////////////////////////////////////////////
    // test the period setting    
    g_pKato->Log(LOG_COMMENT, TEXT("BacklightTest.cpp:BacklightCurrentControlModeTest(): Test the period setting!\r\n"));
    
    for (i = 0; i< NUM_TEST_PERIODS; i++)
    {
        if(PmicBacklightSetCycleTime(Period[i]))
        {
            g_pKato->Log(BKL_ZONE_ERROR, TEXT("BacklightTest.cpp:BacklightCurrentControlModeTest(): PmicBacklightSetCycleTime() failed!\r\n"));
            return TPR_FAIL;
        }

        if(PmicBacklightGetCycleTime(&ret))
        {
            g_pKato->Log(BKL_ZONE_ERROR, TEXT("BacklightTest.cpp:BacklightCurrentControlModeTest(): PmicBacklightGetCycleTime() failed!\r\n"));
            return TPR_FAIL;
        }        

        g_pKato->Log(BKL_ZONE_ERROR, TEXT("%X round returned period %X \r\n"), i, ret);
        if (ret != Period[i])
        {
            g_pKato->Log(BKL_ZONE_ERROR, TEXT("BacklightTest.cpp:BacklightCurrentControlModeTest(): Returned Period setting differs with Passed-in! \r\n"));
            return TPR_FAIL;
        }    

        Sleep ((Period[i] + 1)*750);
    }

    // go back first mid level
    if(PmicBacklightSetCycleTime( Period[0]))
    {
        g_pKato->Log(BKL_ZONE_ERROR, TEXT("BacklightTest.cpp:BacklightCurrentControlModeTest(): PmicBacklightSetCycleTime() failed!\r\n"));
            
        return TPR_FAIL;
    }

///////////////////////////////////////////////////////////////////////////////////////////////////
    // Test the edge slow enable
    g_pKato->Log(LOG_COMMENT, TEXT("BacklightTest.cpp:BacklightCurrentControlModeTest(): Test the edge slow enable!\r\n"));

    if(PmicBacklightEnableEdgeSlow())
    {
        g_pKato->Log(BKL_ZONE_ERROR, TEXT("BacklightTest.cpp:BacklightCurrentControlModeTest(): PmicBacklightEnableEdgeSlow() failed!\r\n"));
        return TPR_FAIL;
    }

    // Test the edge slow disable
    g_pKato->Log(LOG_COMMENT, TEXT("BacklightTest.cpp:BacklightCurrentControlModeTest(): Test the edge slow disable!\r\n"));

    if(PmicBacklightDisableEdgeSlow())
    {
        g_pKato->Log(BKL_ZONE_ERROR, TEXT("BacklightTest.cpp:BacklightCurrentControlModeTest(): PmicBacklightDisableEdgeSlow() failed!\r\n"));
        return TPR_FAIL;
    }

    // Go back to slow
    g_pKato->Log(LOG_COMMENT, TEXT("BacklightTest.cpp:BacklightCurrentControlModeTest(): Test the edge slow enable!\r\n"));

    if(PmicBacklightEnableEdgeSlow())
    {
        g_pKato->Log(BKL_ZONE_ERROR, TEXT("BacklightTest.cpp:BacklightCurrentControlModeTest(): PmicBacklightEnableEdgeSlow() failed!\r\n"));
        return TPR_FAIL;
    }


////////////////////////////////////////////////////////////////////////////////////////////////////

    // Test the ramping up and ramping down
    g_pKato->Log(LOG_COMMENT, TEXT("BacklightTest.cpp:BacklightCurrentControlModeTest(): Test the ramping up and ramping down!\r\n"));
    
    //first set the duty cycle to minimum value
    if(PmicBacklightSetDutyCycle(BACKLIGHT_MAIN_DISPLAY, DutyCycle[0]))
    {
        g_pKato->Log(BKL_ZONE_ERROR, TEXT("BacklightTest.cpp:BacklightCurrentControlModeTest(): PmicBacklightSetDutyCycle() failed!\r\n"));
        return TPR_FAIL;
    }

    //enable the ramp up
    if(PmicBacklightRampUp(BACKLIGHT_MAIN_DISPLAY))
    {
        g_pKato->Log(BKL_ZONE_ERROR, TEXT("BacklightTest.cpp:BacklightCurrentControlModeTest(): PmicBacklightRampUp() failed!\r\n"));
        return TPR_FAIL;
    }  

    Sleep (2000);

    //set the duty cycle to maximum value
    if(PmicBacklightSetDutyCycle(BACKLIGHT_MAIN_DISPLAY, DutyCycle[NUM_TEST_DUTYCYCLES-1]))
    {
        g_pKato->Log(BKL_ZONE_ERROR, TEXT("BacklightTest.cpp:BacklightCurrentControlModeTest(): PmicBacklightSetDutyCycle() failed!\r\n"));
        return TPR_FAIL;
    }

    //enable the ramp down
    if(PmicBacklightRampDown(BACKLIGHT_MAIN_DISPLAY))
    {
        g_pKato->Log(BKL_ZONE_ERROR, TEXT("BacklightTest.cpp:BacklightCurrentControlModeTest(): PmicBacklightRampDown() failed!\r\n"));
        return TPR_FAIL;
    }  

    Sleep (2000);

    // go back to mid level
    if(PmicBacklightSetDutyCycle(BACKLIGHT_MAIN_DISPLAY, DutyCycle[NUM_TEST_DUTYCYCLES/2]))
    {
        g_pKato->Log(BKL_ZONE_ERROR, TEXT("BacklightTest.cpp:BacklightCurrentControlModeTest(): PmicBacklightSetDutyCycle() failed!\r\n"));
            
        return TPR_FAIL;
    }
    
    g_pKato->Log(LOG_COMMENT, TEXT("BacklightTest.cpp:BacklightCurrentControlModeTest() -\r\n"));
    return TPR_PASS;
}


//------------------------------------------------------------------------------
//
// Function: BacklightTriodeModeTest
//
// This function tests the Backlight triode mode
//
// Parameters:
//      uiMsg
//           [in] to determine if the shell wants to execute the test.
//      tpParam
//           [in] Ignored.
//      lpFTE
//           [in] Ignored.
//
// Returns:
//      Specifies if the test passed (TPR_PASS), failed (TPR_FAIL)
//
//------------------------------------------------------------------------------
TESTPROCAPI BacklightTriodeModeTest(UINT uMsg, TPPARAM tpParam, LPFUNCTION_TABLE_ENTRY lpFTE)
{
    UINT8   i, ret;
    
    UNREFERENCED_PARAMETER(tpParam);
    UNREFERENCED_PARAMETER(lpFTE);

    // The shell doesn't necessarily want us to execute the test. Make sure first.
    if(uMsg != TPM_EXECUTE)
    {
        return TPR_NOT_HANDLED;
    }

    g_pKato->Log(LOG_COMMENT, TEXT("BacklightTest.cpp:BacklightTriodeModeTest() +\r\n"));

    // set the backlight to triode mode
    g_pKato->Log(LOG_COMMENT, TEXT("BacklightTest.cpp:BacklightTriodeModeTest(): Set the backlight to triode mode!\r\n"));

    if(PmicBacklightSetMode(BACKLIGHT_MAIN_DISPLAY, BACKLIGHT_TRIODE_MODE))
    {
        g_pKato->Log(BKL_ZONE_ERROR, TEXT("BacklightTest.cpp:BacklightTriodeModeTest(): PmicBacklightSetMode() failed!\r\n"));
        return TPR_FAIL;
    }

    // test the duty cycles setting    
    g_pKato->Log(LOG_COMMENT, TEXT("BacklightTest.cpp:BacklightTriodeModeTest(): Test the duty cycles setting!\r\n"));
    
    for (i = 0; i< NUM_TEST_DUTYCYCLES; i++)
    {
        if(PmicBacklightSetDutyCycle(BACKLIGHT_MAIN_DISPLAY, DutyCycle[i]))
        {
            g_pKato->Log(BKL_ZONE_ERROR, TEXT("BacklightTest.cpp:BacklightTriodeModeTest(): PmicBacklightSetDutyCycle() failed!\r\n"));
            return TPR_FAIL;
        }

        if(PmicBacklightGetDutyCycle(BACKLIGHT_MAIN_DISPLAY, &ret))
        {
            g_pKato->Log(BKL_ZONE_ERROR, TEXT("BacklightTest.cpp:BacklightTriodeModeTest(): PmicBacklightGetDutyCycle() failed!\r\n"));
            return TPR_FAIL;
        }        

        Sleep (1000);

        if (ret != DutyCycle[i])
        {
            g_pKato->Log(BKL_ZONE_ERROR, TEXT("BacklightTest.cpp:BacklightTriodeModeTest(): Returned Duty Cycle setting differs with Passed-in! \r\n"));
            return TPR_FAIL;
        }    
    }

    // go back to mid level
    if(PmicBacklightSetDutyCycle(BACKLIGHT_MAIN_DISPLAY, DutyCycle[NUM_TEST_DUTYCYCLES/2]))
    {
        g_pKato->Log(BKL_ZONE_ERROR, TEXT("BacklightTest.cpp:BacklightTriodeModeTest(): PmicBacklightSetDutyCycle() failed!\r\n"));
            
        return TPR_FAIL;
    }

    // set it back to current mode
    if(PmicBacklightSetMode(BACKLIGHT_MAIN_DISPLAY, BACKLIGHT_CURRENT_CTRL_MODE))
    {
        g_pKato->Log(BKL_ZONE_ERROR, TEXT("BacklightTest.cpp:BacklightTriodeModeTest(): PmicBacklightSetMode() failed!\r\n"));
        return TPR_FAIL;
    }

    g_pKato->Log(LOG_COMMENT, TEXT("BacklightTest.cpp:BacklightTriodeModeTest() -\r\n"));
    return TPR_PASS;
}


//------------------------------------------------------------------------------
//
// Function: BacklightOffTest
//
// This function tests the Backlight OFF
//
// Parameters:
//      uiMsg
//           [in] to determine if the shell wants to execute the test.
//      tpParam
//           [in] Ignored.
//      lpFTE
//           [in] Ignored.
//
// Returns:
//      Specifies if the test passed (TPR_PASS), failed (TPR_FAIL)
//
//------------------------------------------------------------------------------
TESTPROCAPI BacklightOffTest(UINT uMsg, TPPARAM tpParam, LPFUNCTION_TABLE_ENTRY lpFTE)
{
    int  RetVal = IDNO;
    
    UNREFERENCED_PARAMETER(tpParam);
    UNREFERENCED_PARAMETER(lpFTE);

    // The shell doesn't necessarily want us to execute the test. Make sure first.
    if(uMsg != TPM_EXECUTE)
    {
        return TPR_NOT_HANDLED;
    }

    g_pKato->Log(LOG_COMMENT, TEXT("BacklightTest.cpp:BacklightOffTest() +\r\n"));

    // disable the backlight module
    if(PmicBacklightMasterDisable())
    {
        g_pKato->Log(BKL_ZONE_ERROR, TEXT("BacklightTest.cpp:BacklightOffTest(): PmicBacklightMasterDisable() failed!\r\n"));
        return TPR_FAIL;
    }

    RetVal = MessageBox(NULL, TEXT("Press 'Yes' button if Backlight turned 'Off'. If not, Press 'No' button"),
                        TEXT( "Backlight 'Off' Test"), MB_ICONQUESTION|MB_YESNO|MB_SETFOREGROUND);
    if(RetVal == IDNO)      
    {
        g_pKato->Log(BKL_ZONE_ERROR, TEXT("BacklightTest.cpp: BacklightOffTest() - Backlight not turned 'Off'\r\n"));
        return TPR_FAIL;
    }
    
    g_pKato->Log(LOG_COMMENT, TEXT("BacklightTest.cpp:BacklightOffTest() -\r\n"));

    return TPR_PASS;
}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -