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

📄 main.c

📁 | Target | | 芯片固件程序 | keil C51 uVision2 | Windows98 | Loader | USB2.0接口 | loader.sys设备驱动程序
💻 C
字号:
#include <windows.h>
#include <stdio.h>
#include <process.h>
#include "resource.h"
#include "main.h"

char *build_time = __TIME__;
char *build_date = __DATE__;

BOOL Testing=FALSE;
BOOL StopTest = FALSE;
UINT PacketSize=10;
BOOL PacketSizeIncrement=TRUE;
UINT TestValue = 10;
BOOL TestValueIncrement=FALSE;
BOOL End24Radio=TRUE; 

HINSTANCE   gbhInstance = NULL;

/*******************************
*WinMain: Windows Entry point  *
********************************/
int PASCAL WinMain(HINSTANCE hInstance,
                   HINSTANCE hPrevInstance,
                   LPSTR     lpCmdLine,
                   int       nCmdShow)
{
   	gbhInstance=hInstance;

	LoadIcon(hInstance, MAKEINTRESOURCE(YSU_ICON));

    if(DialogBox(hInstance,MAKEINTRESOURCE(MAIN_DIALOG),NULL,(DLGPROC)MainDlgProc)==-1)
      MessageBox(NULL,"建立主对话框失败!","警告",MB_ICONSTOP);
   
    return 0;
}

/**************************************************
* Main Dialog proc                               *
**************************************************/

BOOL CALLBACK MainDlgProc(HWND    hDlg, 
						  UINT    Message, 
						  WPARAM  wParam, 
						  LPARAM  lParam)
{ 
	HWND    hOutputList = NULL;
	HWND    hTestList = NULL;
	int     nItems = 0;
	char    tempbuff[256];
	HFONT   hFont = NULL;

	hOutputList = GetDlgItem (hDlg, IDC_OUTPUT_LIST);
	hTestList =	GetDlgItem (hDlg, IDC_TEST_LIST);
   	switch(Message) {
		case WM_INITDIALOG:
            hFont = GetStockObject(SYSTEM_FONT);
            SendMessage (hOutputList, WM_SETFONT, (WPARAM)hFont, MAKELPARAM(TRUE,0));

            sprintf(tempbuff,"EZ-USB FX2功能测试 %s %s",build_time,build_date);
            SetDlgItemText (hDlg, IDC_INFORMATION, tempbuff);			
			SetDlgItemText (hDlg, IDC_DEVICE_NAME, "Ezusb-0");
			SetDlgItemText (hDlg, IDC_DOWNLOAD_FILENAME, "bulktest.bix");
			CheckDlgButton(hDlg, IDC_LIST_DETAIL,BST_UNCHECKED);
			CheckDlgButton(hDlg, IDC_TEST_DETAIL,BST_UNCHECKED);
			break; 

		case WM_LBUTTONDOWN:
            MAINTAIN_OUTPUT_LIST (hOutputList, nItems);      
            SendMessage (hOutputList, LB_ADDSTRING, 0, (LPARAM)"you clicked");
            break;

		case WM_COMMAND:
			switch(LOWORD(wParam)) {
				case IDOK:
					if (Testing ==TRUE) {
						MessageBox(hDlg, "测试中,请先退出当前测试,再关闭应用程序!","警告",MB_ICONINFORMATION);
					    break;
					}
					EndDialog(hDlg,TRUE);
					break;

				case IDCANCEL:
					if (Testing ==TRUE) {
						MessageBox(hDlg, "测试中,请先退出当前测试,再关闭应用程序!","警告",MB_ICONINFORMATION);
					    break;
					}
					EndDialog(hDlg,FALSE);
				    break;

				case IDC_ABOUT:
					if(DialogBox(gbhInstance,MAKEINTRESOURCE(ABOUT_DIALOG),hDlg,(DLGPROC)AboutProc)==-1)
                       MessageBox(NULL,"建立对话框失败!","警告",MB_ICONSTOP);
					break;

				case IDC_TEST_SET:
					if (Testing ==TRUE) {
						MessageBox(hDlg, "测试中,请先退出当前测试,再重新设置!","警告",MB_ICONINFORMATION);
					    break;
					}
					if(DialogBox(gbhInstance,MAKEINTRESOURCE(TEST_DIALOG),hDlg,(DLGPROC)TestProc)==-1)
                       MessageBox(NULL,"建立对话框失败!","警告",MB_ICONSTOP);
					break;

				case IDC_TEST_START:
					 StopTest=FALSE;
					 _beginthread(TestThread,0,hDlg);
					 break;

				case IDC_TEST_STOP:
					 StopTest = TRUE;
                     break;

				case IDC_OPEN_DEVICE:
					 OpenDeviceTest(hDlg);
					 break;      

				case IDC_DEVICE_DESCRIPTOR:
					 GetDeviceDescriptorTest(hDlg);
                     break;
					 
				case IDC_CONFIGURATION_DESCRIPTOR: 
					 GetConfigurationDescriptorTest(hDlg);
					 break;

				case IDC_INTERFACE_DESCRIPTOR:
					 GetInterfaceDescriptorTest(hDlg);
					 break;

				case IDC_ENDPOINT_DESCRIPTOR:
					 GetEndPointDescriptorTest(hDlg);
					 break;

				case IDC_STRING_DESCRIPTOR:
					 GetStringDescriptorTest(hDlg);
					 break;

				case IDC_FRAME_NUMBER:
					 GetFrameNumber(hDlg);
					 break;

				case IDC_8051_RESET:
					 Usb8051Reset(hDlg);
					 break;

                case IDC_8051_HOLD:
					 Usb8051Hold(hDlg);
					 break;

				case IDC_DOWNLOAD_FILE:
					 Download8051File(hDlg);
					 break;

				case IDC_LIST_CLEAR:
					 SendMessage (hOutputList, LB_RESETCONTENT, 0, 0);
					 break;

				case IDC_TEST_CLEAR:
					 SendMessage (hTestList, LB_RESETCONTENT, 0, 0);
					 break;
			}

	}
    return FALSE;
}

⌨️ 快捷键说明

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