From 1d6bea2f388455cd0ac7a8c7ad4923c46e4dce4f Mon Sep 17 00:00:00 2001 From: TAO Cheng Date: Fri, 29 Aug 2014 09:27:02 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BF=AE=E6=94=B9MV900=E8=A7=86=E9=A2=91?= =?UTF-8?q?=E5=8D=A1=E6=B5=8B=E8=AF=95=E3=80=82?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../Tools/UsbUtility/Debug/UtilityDebug.Log | 7 +++ .../UsbUtil/Usb_Util.vcxproj.filters | 8 ++- .../UsbUtility/UsbUtil/Videocard_MV900.cpp | 51 ++++++++++++------ .../UsbUtility/UsbUtil/Videocard_MV900.h | 2 +- .../Hsi/Tools/UsbUtility/UsbUtil_VS2010.suo | Bin 150016 -> 150016 bytes 5 files changed, 48 insertions(+), 20 deletions(-) diff --git a/PcDmis/Base/Interfac/Msi/Hsi/Tools/UsbUtility/Debug/UtilityDebug.Log b/PcDmis/Base/Interfac/Msi/Hsi/Tools/UsbUtility/Debug/UtilityDebug.Log index 3f97ae0..7e56789 100644 --- a/PcDmis/Base/Interfac/Msi/Hsi/Tools/UsbUtility/Debug/UtilityDebug.Log +++ b/PcDmis/Base/Interfac/Msi/Hsi/Tools/UsbUtility/Debug/UtilityDebug.Log @@ -4775,3 +4775,10 @@ Usb Port Initialized. Usb Port Initialized. Usb Port Initialized. Usb Port Initialized. +Usb Port Initialized. +Usb Port Initialized. +Usb Port Initialized. +Usb Port Initialized. +Usb Port Initialized. +Usb Port Initialized. +Usb Port Initialized. diff --git a/PcDmis/Base/Interfac/Msi/Hsi/Tools/UsbUtility/UsbUtil/Usb_Util.vcxproj.filters b/PcDmis/Base/Interfac/Msi/Hsi/Tools/UsbUtility/UsbUtil/Usb_Util.vcxproj.filters index 293ab3e..7080ce8 100644 --- a/PcDmis/Base/Interfac/Msi/Hsi/Tools/UsbUtility/UsbUtil/Usb_Util.vcxproj.filters +++ b/PcDmis/Base/Interfac/Msi/Hsi/Tools/UsbUtility/UsbUtil/Usb_Util.vcxproj.filters @@ -220,7 +220,9 @@ Sources Files - + + Sources Files + @@ -475,7 +477,9 @@ Header Files - + + Header Files + diff --git a/PcDmis/Base/Interfac/Msi/Hsi/Tools/UsbUtility/UsbUtil/Videocard_MV900.cpp b/PcDmis/Base/Interfac/Msi/Hsi/Tools/UsbUtility/UsbUtil/Videocard_MV900.cpp index 8cbcb54..e32048c 100644 --- a/PcDmis/Base/Interfac/Msi/Hsi/Tools/UsbUtility/UsbUtil/Videocard_MV900.cpp +++ b/PcDmis/Base/Interfac/Msi/Hsi/Tools/UsbUtility/UsbUtil/Videocard_MV900.cpp @@ -11,7 +11,7 @@ #include "afxdialogex.h" #define WM_UPDATE_IMAGE WM_USER+100 -static BYTE g_DataBuffer[640*480*3]; +static BYTE g_DataBuffer[768*576*3]; int m_VideoWidth=640;//640; int m_VideoHeight=480;//480; int m_VideoBitcount=3; @@ -19,6 +19,10 @@ int m_DisplayWidth=640; int m_DisplayHeight=480; // CVideocard_MV900 dialog HWND Msg_Hwnd=NULL; + +VOID CALLBACK MV900_PrcVidCapCallBack( PUCHAR pData, ULONG Length, CVideocard_MV900* pIS); + + IMPLEMENT_DYNAMIC(CVideocard_MV900, CDialog) CVideocard_MV900::CVideocard_MV900(CWnd* pParent /*=NULL*/) @@ -100,7 +104,7 @@ void CVideocard_MV900::OnBnClickedRadioMv900Rgb() //============================================================================== void CVideocard_MV900::OnBnClickedRadioMv900Gray() { - m_ConvertColorType=RGB24TOGRAY; + m_ConvertColorType=RGB24TORGB; } //============================================================================== void CVideocard_MV900::OnBnClickedMv900CheckMirrorVertically() @@ -147,13 +151,13 @@ void CVideocard_MV900::OnBnClickedButtonMv900Savefile() void CVideocard_MV900::OnBnClickedOk() { LoadVideocard(); - SetTimer(1,50,NULL); + //SetTimer(1,50,NULL); GetDlgItem(IDOK)->EnableWindow(false); } //============================================================================== void CVideocard_MV900::OnBnClickedCancel() { - KillTimer(1); + //KillTimer(1); UnloadVideocard(); CDialog::OnCancel(); } @@ -165,17 +169,24 @@ BOOL CVideocard_MV900::LoadVideocard() m_dwCard=MV_GetCardNumber(); m_hDev = Cap_Create("MVVGA", 0); - int m_Yoff(0),m_Xoff(0),m_Xmax(0),m_Ymax(0); - m_Yoff = Cap_GetPropery( m_hDev, SIG_YOFF ); - m_Xoff = Cap_GetPropery( m_hDev, SIG_XOFF ); - m_Xmax = Cap_GetPropery( m_hDev, SIG_WIDTH); - m_Ymax = Cap_GetPropery( m_hDev, SIG_HIGH ); - + //int m_Yoff(0),m_Xoff(0),m_Xmax(0),m_Ymax(0); + //m_Yoff = Cap_GetPropery( m_hDev, SIG_YOFF ); + //m_Xoff = Cap_GetPropery( m_hDev, SIG_XOFF ); + //m_Xmax = Cap_GetPropery( m_hDev, SIG_WIDTH); + //m_Ymax = Cap_GetPropery( m_hDev, SIG_HIGH ); - m_status=Cap_SetPropery(m_hDev,SIG_FRAME,25); + //long min,max,def; + //Cap_GetProperyRange(m_hDev,SIG_YOFF,&min,&max,&def); + //Cap_GetProperyRange(m_hDev,SIG_XOFF,&min,&max,&def); + //Cap_GetProperyRange(m_hDev,SIG_WIDTH,&min,&max,&def); + //Cap_GetProperyRange(m_hDev,SIG_HIGH,&min,&max,&def); + //Cap_GetProperyRange(m_hDev,SIG_FRAME,&min,&max,&def); + //Cap_GetProperyRange(m_hDev,PIEXL_BIT,&min,&max,&def); + + //m_status=Cap_SetPropery(m_hDev,SIG_FRAME,25); m_status=Cap_SetPropery(m_hDev,PIEXL_BIT,24); - m_status=Cap_SetOutSize(m_hDev,m_DisplayHeight,m_DisplayWidth); - Cap_SetCallBack(m_hDev, (PUSERCALL)MV900_PrcVidCapCallBack, this ); + //m_status=Cap_SetOutSize(m_hDev,m_DisplayHeight,m_DisplayWidth); + Cap_SetCallBack(m_hDev, (PUSERCALL)MV900_PrcVidCapCallBack, this); m_status=Cap_Start(m_hDev); #endif //_RELEASE_FULL_VERSION return TRUE; @@ -473,6 +484,11 @@ void CVideocard_MV900::OnPaint() delete pMemDC; ReleaseDC(dc); } +//================================================================================================ +void CVideocard_MV900::UpdateImage() +{ + OnPaint(); +} afx_msg LRESULT CVideocard_MV900::OnUpdateImage(WPARAM wParam, LPARAM lParam) { @@ -496,14 +512,13 @@ void CVideocard_MV900::OnTimer(UINT_PTR nIDEvent) CDialog::OnTimer(nIDEvent); } -const int iStartX(0); -const int iStartY(0); +static int iStartX(0); +static int iStartY(0); //==================================SV4000E===================================== -VOID CALLBACK MV900_PrcVidCapCallBack( PUCHAR pData, ULONG Length, PVOID pUserData) +VOID CALLBACK MV900_PrcVidCapCallBack( PUCHAR pData, ULONG Length,CVideocard_MV900* pIS) { UNREFERENCED_PARAMETER(Length); - UNREFERENCED_PARAMETER(pUserData); //memcpy(g_DataBuffer,(BYTE*)pData,Length);//640*480*m_VideoBitcount for(int y=iStartY;yUpdateImage(); + //PostMessage(Msg_Hwnd,WM_UPDATE_IMAGE,0,0); } diff --git a/PcDmis/Base/Interfac/Msi/Hsi/Tools/UsbUtility/UsbUtil/Videocard_MV900.h b/PcDmis/Base/Interfac/Msi/Hsi/Tools/UsbUtility/UsbUtil/Videocard_MV900.h index 7e64573..d644634 100644 --- a/PcDmis/Base/Interfac/Msi/Hsi/Tools/UsbUtility/UsbUtil/Videocard_MV900.h +++ b/PcDmis/Base/Interfac/Msi/Hsi/Tools/UsbUtility/UsbUtil/Videocard_MV900.h @@ -1,6 +1,5 @@ #pragma once -VOID CALLBACK MV900_PrcVidCapCallBack( PUCHAR pData, ULONG Length, PVOID pUserData ); // CVideocard_MV900 dialog class CVideocard_MV900 : public CDialog @@ -41,6 +40,7 @@ private: int m_nContrast; int m_nBrightness; public: + void UpdateImage(); afx_msg void OnBnClickedRadioMv900Rgb(); afx_msg void OnBnClickedRadioMv900Gray(); afx_msg void OnBnClickedMv900CheckMirrorVertically(); diff --git a/PcDmis/Base/Interfac/Msi/Hsi/Tools/UsbUtility/UsbUtil_VS2010.suo b/PcDmis/Base/Interfac/Msi/Hsi/Tools/UsbUtility/UsbUtil_VS2010.suo index 393a891b0c9a8be331347926b084c22b0b84e525..ed03316dbd6cc0a20d663ad6269f857972a9988d 100644 GIT binary patch delta 3904 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 BHN*e_ delta 5321 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