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

📄 bak_io.cpp

📁 backlite driver for wince4.2
💻 CPP
字号:
//
// Copyright (c) Microsoft Corporation.  All rights reserved.
//
//
// Use of this source code is subject to the terms of the Microsoft end-user
// license agreement (EULA) under which you licensed this SOFTWARE PRODUCT.
// If you did not accept the terms of the EULA, you are not authorized to use
// this source code. For a copy of the EULA, please see the LICENSE.RTF on your
// install media.
//
/*

THIS CODE AND INFORMATION IS PROVIDED "AS IS" WITHOUT WARRANTY OF
ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING BUT NOT LIMITED TO
THE IMPLIED WARRANTIES OF MERCHANTABILITY AND/OR FITNESS FOR A
PARTICULAR PURPOSE.

*/

#include <windows.h>
#include "bak_hw.h"

DWORD 
BAK_Init(DWORD dwContext)
{
	RETAILMSG(DEBUGMODE, (TEXT("BAK_Init+++\r\n") ));
    
    ResetLcd();
    BacklightInitialize();
    //CreatTimerThread();

    RETAILMSG(DEBUGMODE, (TEXT("BAK_Init---\r\n") ));

	return TRUE;
}



BOOL 
BAK_Deinit(DWORD dwContext)
{
	RETAILMSG(DEBUGMODE, (TEXT("BAK_Deinit+++\r\n") ));
    RETAILMSG(DEBUGMODE, (TEXT("BAK_Deinit---\r\n") ));
    return TRUE;
}



DWORD 
BAK_Open(DWORD dwData, DWORD dwAccess, DWORD dwShareMode)
{
	RETAILMSG(DEBUGMODE, (TEXT("BAK_Open+++\r\n") ));
    RETAILMSG(DEBUGMODE, (TEXT("BAK_Open---\r\n") ));    
	return TRUE;
}



BOOL 
BAK_Close(DWORD Handle)
{
	RETAILMSG(DEBUGMODE, (TEXT("BAK_Close+++\r\n") ));
    RETAILMSG(DEBUGMODE, (TEXT("BAK_Close---\r\n") ));    
	return TRUE;
}



void 
BAK_PowerDown(void)
{
	RETAILMSG(DEBUGMODE, (TEXT("BAK_PowerDown+++\r\n") ));
    SetBacklitePWMOff();
    RETAILMSG(DEBUGMODE, (TEXT("BAK_PowerDown---\r\n") ));    
	return;
}



void
BAK_PowerUp(void)
{
	RETAILMSG(DEBUGMODE, (TEXT("BAK_PowerUp+++\r\n") ));
    RETAILMSG(DEBUGMODE, (TEXT("BAK_PowerUp---\r\n") ));    
	return;
}



DWORD 
BAK_Read(DWORD Handle, LPVOID pBuffer, DWORD dwNumBytes)
{
	RETAILMSG(DEBUGMODE, (TEXT("BAK_Read+++\r\n") ));
    RETAILMSG(DEBUGMODE, (TEXT("BAK_Read---\r\n") ));    
	return TRUE;
}



DWORD 
BAK_Write(DWORD Handle, LPCVOID pBuffer, DWORD dwNumBytes)
{
	RETAILMSG(DEBUGMODE, (TEXT("BAK_Write+++\r\n") ));
    RETAILMSG(DEBUGMODE, (TEXT("BAK_Write---\r\n") ));    
	return TRUE;
}



DWORD 
BAK_Seek(DWORD Handle, long lDistance, DWORD dwMoveMethod)
{
	RETAILMSG(DEBUGMODE, (TEXT("BAK_Seek+++\r\n") ));
    RETAILMSG(DEBUGMODE, (TEXT("BAK_Seek---\r\n") ));    
	return TRUE;
}



BOOL 
BAK_IOControl(
			  DWORD Handle, 
			  DWORD dwCode, 
			  PBYTE pBufIn, 
			  DWORD dwLenIn,
			  PBYTE pBufOut, 
			  DWORD dwLenOut, 
			  PDWORD pdwActualOut
			  )
{
    BOOL RetVal = TRUE;
    BACKLITE_STATE BackliteStatus;
    unsigned char HiRatio;

	RETAILMSG(DEBUGMODE, (TEXT("BAK_IOControl+++\r\n") ));

	RETAILMSG(DEBUGMODE, (TEXT("BAK_IOControl: dwCode = %d.\r\n"), dwCode));
    
    BackliteStatus = (BACKLITE_STATE)dwCode;
    switch (BackliteStatus) 
	{
		case BACKLITE_OFF: 
          SetBacklitePWMOff();
         break;

		case BACKLITE_ON: 
          SetBacklitePWMOn();
	     break;
         
        case BACKLITE_UP:
          RETAILMSG(DEBUGMODE, (TEXT("BAK_IOControl: *pBufIn = %d.\r\n"), *pBufIn));
          HiRatio = *((unsigned char*)pBufIn);
          SetBacklitePWM(HiRatio);
         break;
         
        case BACKLITE_DOWN:
          RETAILMSG(DEBUGMODE, (TEXT("BAK_IOControl: *pBufIn = %d.\r\n"), *pBufIn));
          HiRatio = *((unsigned char*)pBufIn);
          SetBacklitePWM(HiRatio);
	     break;

        case BACKLITE_TIME:
            RETAILMSG(DEBUGMODE, (TEXT("BAK_IOControl: *pBufIn = %d.\r\n"), *pBufIn));
            HiRatio = *((unsigned char*)pBufIn);
            g_MilliSecond = HiRatio*3000;
            if (INVALIDE_TIMER != g_Timer)
            {
                BackliteKillTimer();
            }

            BackliteSetTimer(g_MilliSecond);
         break;

        case BACKLITE_ALWAYS:
            if (FIRST_INIT_TIMER != g_MilliSecond)
            {
                BackliteKillTimer();
                SetBacklitePWMOn();
            }
         break;

		default:
          RETAILMSG(DEBUGMODE, (TEXT("BAK_IOControl default\r\n") ));
            break;
	}
    
    RETAILMSG(DEBUGMODE, (TEXT("BAK_IOControl---\r\n") ));    
    
	return(RetVal);
}



BOOL
WINAPI
DllMain(
    HANDLE  hinstDll,
    DWORD   dwReason,
    LPVOID  lpReserved
    )
{
	switch(dwReason)
	{
		case DLL_PROCESS_ATTACH:
			 RETAILMSG(DEBUGMODE, (TEXT("BAK_DllMain: DLL_PROCESS_ATTACH\r\n")));
			break;

		case DLL_PROCESS_DETACH:
			 RETAILMSG(DEBUGMODE, (TEXT("BAK_DllMain: DLL_PROCESS_DETACH\r\n")));
			break;
    }
    return TRUE;
}

⌨️ 快捷键说明

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