亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? transbmp.cpp

?? 這是linux的接口的大量原碼,大家可以學習中進步,linux是開發嵌入式不能不學的系統工程
?? CPP
字號:
// TransBmp.cpp : Defines the class behaviors for the application.
//

#include "stdafx.h"
#include "TransBmp.h"

#include "MainFrm.h"
#include "TransBmpDoc.h"
#include "TransBmpView.h"
#include "common.h"

#ifdef _DEBUG
#define new DEBUG_NEW
#undef THIS_FILE
static char THIS_FILE[] = __FILE__;
#endif


static HANDLE					hCom;                     //串口句柄
int		g_nBaudRate = 28800;
/////////////////////////////////////////////////////////////////////////////
// CTransBmpApp

BEGIN_MESSAGE_MAP(CTransBmpApp, CWinApp)
	//{{AFX_MSG_MAP(CTransBmpApp)
	ON_COMMAND(ID_APP_ABOUT, OnAppAbout)
		// NOTE - the ClassWizard will add and remove mapping macros here.
		//    DO NOT EDIT what you see in these blocks of generated code!
	//}}AFX_MSG_MAP
	// Standard file based document commands
	ON_COMMAND(ID_FILE_NEW, CWinApp::OnFileNew)
	ON_COMMAND(ID_FILE_OPEN, CWinApp::OnFileOpen)
END_MESSAGE_MAP()

/////////////////////////////////////////////////////////////////////////////
// CTransBmpApp construction

CTransBmpApp::CTransBmpApp()
{
	// TODO: add construction code here,
	// Place all significant initialization in InitInstance
}

/////////////////////////////////////////////////////////////////////////////
// The one and only CTransBmpApp object

CTransBmpApp theApp;

// CTransBmpApp initialization
//////////////////////////////////////////////////////////////////////////////////////////////
void convert_long ( unsigned char * buffer )
{
	unsigned char Temp;

	Temp = *( ( unsigned char * ) buffer );
	*( ( unsigned char * ) buffer ) = *( ( unsigned char * ) ( buffer + 3 ) );
	*( ( unsigned char * ) ( buffer + 3 ) ) = Temp;

	Temp = *( ( unsigned char * ) ( buffer + 1 ) );
	*( ( unsigned char * ) ( buffer + 1 ) ) = *( ( unsigned char * ) ( buffer + 2 ) );
	*( ( unsigned char * ) ( buffer + 2 ) ) = Temp;
}

int  InitSerial()
{
	DCB Comdcb; //串口通信控制塊
	COMMTIMEOUTS ComTimeOut; //超時控制塊
    
	hCom = CreateFile("COM1",GENERIC_READ | GENERIC_WRITE, 0, NULL, 
		OPEN_EXISTING,0, NULL);//FILE_FLAG_OVERLAPPED FILE_ATTRIBUTE_NORMAL
    if (hCom == INVALID_HANDLE_VALUE)
	{
		TRACE("Failed to open COM1\n");
		return 1;
	}
	PurgeComm(hCom,PURGE_TXABORT|PURGE_RXABORT|
		           PURGE_TXCLEAR|PURGE_RXCLEAR);


	if(!GetCommState(hCom, &Comdcb))
   		return 2;
    //設置串口通信參數
	Comdcb.BaudRate = g_nBaudRate;//4800;	//57600;//38400;//9600
	Comdcb.ByteSize = 8;
	Comdcb.Parity = NOPARITY;
	Comdcb.StopBits = ONESTOPBIT;

	if(!SetCommState(hCom, &Comdcb))
   		return 3;

	ComTimeOut.ReadIntervalTimeout = 200;//50;
	ComTimeOut.ReadTotalTimeoutMultiplier = 0;
	ComTimeOut.ReadTotalTimeoutConstant = 0;

	ComTimeOut.WriteTotalTimeoutMultiplier=0;
	ComTimeOut.WriteTotalTimeoutConstant=0;


	if(!SetCommTimeouts(hCom,&ComTimeOut))
   		return 4;

	return 0;
}

BOOL CTransBmpApp::InitInstance()
{
	AfxEnableControlContainer();

	// Standard initialization
	// If you are not using these features and wish to reduce the size
	//  of your final executable, you should remove from the following
	//  the specific initialization routines you do not need.

#ifdef _AFXDLL
	Enable3dControls();			// Call this when using MFC in a shared DLL
#else
	Enable3dControlsStatic();	// Call this when linking to MFC statically
#endif

	// Change the registry key under which our settings are stored.
	// TODO: You should modify this string to be something appropriate
	// such as the name of your company or organization.
	SetRegistryKey(_T("Local AppWizard-Generated Applications"));

	LoadStdProfileSettings();  // Load standard INI file options (including MRU)
	/////////////////////////////////////////
	//從參數行讀取參數
	char buffer[480];
	char tempbuffer[480];
	strcpy(buffer,GetCommandLine());
	sscanf(buffer,"%s %d",tempbuffer,&g_nBaudRate);
	///////////////////////////////////////////////////////////////////////////////////////////
	//等待連接,連接成功后顯示界面顯示傳來的位圖
	InitSerial();
	///////////////////////////////////////////////////////////////////////////////////////////
	///////////////////////////////////////////////////////////////////////////////////////////
	CString strFileName(_T("test.bmp")); 
	CFile File(strFileName, CFile::modeReadWrite|CFile::modeCreate);
	///////////////////////////////////////////////////////////////////////////////////////////
	DWORD SendRetVal = 0;

	char szRecvBuf[LINESIZE];
	DWORD dwBytesRead = 0;

	//先要傳一個文件長度過來,
	int nFileLen = 0;

	//ReadFile(hCom,(char *)&nFileLen,4,&dwBytesRead,NULL);
	//convert_long((unsigned char *)&nFileLen);
	//TRACE("文件長度%d\n",nFileLen);
	int nBytesHaveRecv = 0;
	for(;;)
	{
		dwBytesRead = 0;
		memset(szRecvBuf,0,LINESIZE);
		ReadFile(hCom,szRecvBuf,LINESIZE,&dwBytesRead,NULL);
		TRACE("收到%d字節:\n",dwBytesRead);
		///////////////////////////////////////////////////////////////////////////////////////
		File.Write((void *)szRecvBuf,dwBytesRead);
		nBytesHaveRecv+=dwBytesRead;
		//if(nBytesHaveRecv >= nFileLen)
		if(dwBytesRead < LINESIZE)
		{
			File.Close();
			TRACE("BMP文件傳輸完畢\n");
			break;
		}
	}
	CloseHandle(hCom);
	///////////////////////////////////////////////////////////////////////////////////////////
	// Register the application's document templates.  Document templates
	//  serve as the connection between documents, frame windows and views.

	CSingleDocTemplate* pDocTemplate;
	pDocTemplate = new CSingleDocTemplate(
		IDR_MAINFRAME,
		RUNTIME_CLASS(CTransBmpDoc),
		RUNTIME_CLASS(CMainFrame),       // main SDI frame window
		RUNTIME_CLASS(CTransBmpView));
	AddDocTemplate(pDocTemplate);

	// Parse command line for standard shell commands, DDE, file open
	/*
	CCommandLineInfo cmdInfo;
	ParseCommandLine(cmdInfo);
	// Dispatch commands specified on the command line
	if (!ProcessShellCommand(cmdInfo))
		return FALSE;
	*///用新的命令行代替
	OnFileNew();
	// The one and only window has been initialized, so show and update it.
	m_pMainWnd->ShowWindow(SW_SHOW);
	m_pMainWnd->UpdateWindow();

	return TRUE;
}


/////////////////////////////////////////////////////////////////////////////
// CAboutDlg dialog used for App About

class CAboutDlg : public CDialog
{
public:
	CAboutDlg();

// Dialog Data
	//{{AFX_DATA(CAboutDlg)
	enum { IDD = IDD_ABOUTBOX };
	//}}AFX_DATA

	// ClassWizard generated virtual function overrides
	//{{AFX_VIRTUAL(CAboutDlg)
	protected:
	virtual void DoDataExchange(CDataExchange* pDX);    // DDX/DDV support
	//}}AFX_VIRTUAL

// Implementation
protected:
	//{{AFX_MSG(CAboutDlg)
		// No message handlers
	//}}AFX_MSG
	DECLARE_MESSAGE_MAP()
};

CAboutDlg::CAboutDlg() : CDialog(CAboutDlg::IDD)
{
	//{{AFX_DATA_INIT(CAboutDlg)
	//}}AFX_DATA_INIT
}

void CAboutDlg::DoDataExchange(CDataExchange* pDX)
{
	CDialog::DoDataExchange(pDX);
	//{{AFX_DATA_MAP(CAboutDlg)
	//}}AFX_DATA_MAP
}

BEGIN_MESSAGE_MAP(CAboutDlg, CDialog)
	//{{AFX_MSG_MAP(CAboutDlg)
		// No message handlers
	//}}AFX_MSG_MAP
END_MESSAGE_MAP()

// App command to run the dialog
void CTransBmpApp::OnAppAbout()
{
	CAboutDlg aboutDlg;
	aboutDlg.DoModal();
}

/////////////////////////////////////////////////////////////////////////////
// CTransBmpApp message handlers

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
欧美国产精品一区二区| 欧美一区永久视频免费观看| 久久精品综合网| 国产经典欧美精品| 欧美国产精品专区| 白白色亚洲国产精品| 国产精品卡一卡二| 色狠狠综合天天综合综合| 亚洲日本在线看| 欧美三级韩国三级日本三斤| 婷婷开心激情综合| 精品理论电影在线观看| 国产精品一卡二| 亚洲男人天堂av| 日韩一区二区三区精品视频| 国产一区二区主播在线| 欧美韩日一区二区三区| 色综合天天综合| 奇米四色…亚洲| 欧美国产成人精品| 欧美亚洲一区二区三区四区| 蜜芽一区二区三区| 国产欧美视频在线观看| 色综合一个色综合亚洲| 日韩av在线发布| 国产精品毛片久久久久久久| 欧美日韩免费观看一区二区三区| 激情久久五月天| 亚洲天堂久久久久久久| 制服丝袜成人动漫| 国产成a人亚洲精品| 亚洲午夜激情av| 国产夜色精品一区二区av| 欧美在线999| 国产高清在线观看免费不卡| 亚洲一二三区视频在线观看| 精品成人佐山爱一区二区| 色综合久久久久网| 精品一区二区在线播放| 亚洲靠逼com| 亚洲国产wwwccc36天堂| 久久精品免费在线观看| 欧美剧情片在线观看| 成人免费视频视频在线观看免费 | 麻豆免费看一区二区三区| 久久看人人爽人人| 欧美日韩成人综合| 色综合久久久久久久久久久| 国产aⅴ综合色| 青青草97国产精品免费观看无弹窗版 | 3atv在线一区二区三区| av激情成人网| 国产v综合v亚洲欧| 七七婷婷婷婷精品国产| 亚洲综合999| 亚洲婷婷综合久久一本伊一区| 精品国产免费久久| 欧美日韩成人综合天天影院| 99久久er热在这里只有精品15 | 欧美一区二区三区影视| 91在线视频播放| 粉嫩欧美一区二区三区高清影视| 久久成人18免费观看| 午夜欧美大尺度福利影院在线看| 一卡二卡欧美日韩| 亚洲欧洲成人精品av97| 久久久91精品国产一区二区精品| 日韩精品中文字幕在线一区| 欧美高清www午色夜在线视频| 欧美主播一区二区三区| 91小视频免费看| 99麻豆久久久国产精品免费 | 亚洲欧美乱综合| 国产精品久久毛片av大全日韩| 国产日韩视频一区二区三区| 久久丝袜美腿综合| 久久女同精品一区二区| 精品va天堂亚洲国产| 久久综合色8888| 国产午夜精品一区二区三区嫩草 | 91精品国产全国免费观看| 欧美三级一区二区| 欧美中文字幕不卡| 欧美日韩国产高清一区二区| 欧美日韩免费在线视频| 在线综合视频播放| 欧美精品777| 日韩午夜av电影| 欧美精品一区二区三区在线| 久久免费午夜影院| 欧美高清一级片在线观看| 亚洲欧洲日本在线| 亚洲三级小视频| 天堂精品中文字幕在线| 视频一区在线视频| 开心九九激情九九欧美日韩精美视频电影| 麻豆成人免费电影| 国产成人精品一区二区三区四区 | 99re成人精品视频| 91蜜桃在线观看| 777色狠狠一区二区三区| 日韩女优毛片在线| 久久久99精品久久| |精品福利一区二区三区| 一区二区三区资源| 丝袜美腿一区二区三区| 美日韩一级片在线观看| 精品中文字幕一区二区 | 粉嫩嫩av羞羞动漫久久久| aa级大片欧美| 日韩一区二区免费高清| 久久伊99综合婷婷久久伊| 国产精品久久久久久久岛一牛影视| 亚洲精品国产高清久久伦理二区| 天天综合网天天综合色| 国产精品资源网| 在线观看国产91| 91精品国产一区二区| 国产欧美一区二区三区网站| 亚洲一区二区三区视频在线播放 | 国产一区二区在线观看视频| 波多野结衣亚洲| 91精品国产黑色紧身裤美女| 日本一区二区三区久久久久久久久不 | 国产午夜精品在线观看| 亚洲午夜av在线| 国产99久久久国产精品免费看| 欧美经典一区二区| 夜夜揉揉日日人人青青一国产精品| 精品一区二区影视| 91国模大尺度私拍在线视频| 久久亚洲私人国产精品va媚药| 一区二区三区在线视频免费| 国产精品一区二区久久精品爱涩| 欧美日韩国产首页| 欧美激情综合五月色丁香小说| 轻轻草成人在线| 欧美在线观看视频一区二区| 中文在线免费一区三区高中清不卡| 日韩精品色哟哟| 一本大道久久a久久综合婷婷| 久久久久久综合| 日av在线不卡| 欧美人与禽zozo性伦| 国产精品成人一区二区三区夜夜夜| 精品综合免费视频观看| 欧美肥胖老妇做爰| 亚洲日本护士毛茸茸| 国产乱子伦视频一区二区三区| 91精品婷婷国产综合久久| 亚洲欧美日韩一区| www.色精品| 久久精品日韩一区二区三区| 免费在线观看一区二区三区| 欧美日韩国产首页在线观看| 亚洲永久精品国产| 99国产精品久久久久久久久久 | 国产精品毛片无遮挡高清| 激情图区综合网| 欧美成人国产一区二区| 日韩不卡在线观看日韩不卡视频| 欧美性高清videossexo| 一区二区三区精品视频| 色偷偷成人一区二区三区91| 亚洲欧洲综合另类| av不卡在线播放| 亚洲精品免费在线观看| www.欧美.com| 亚洲免费在线视频| 欧美极品美女视频| 亚洲国产成人高清精品| 欧美在线一区二区三区| 亚洲黄色免费电影| 欧洲生活片亚洲生活在线观看| 亚洲激情综合网| 在线观看亚洲成人| 亚洲成人黄色影院| 欧美精品一二三| 老司机免费视频一区二区三区| 精品av久久707| 成人一区二区三区中文字幕| 国产精品国产馆在线真实露脸| 91免费视频观看| 一区二区三区久久| 制服视频三区第一页精品| 久久国产精品99久久久久久老狼| 久久综合久久鬼色| 成人精品视频一区二区三区| 亚洲欧美日韩在线不卡| 欧美影院一区二区三区| 日韩精品一二三四| 久久综合成人精品亚洲另类欧美| 成人看片黄a免费看在线| 一区二区三区四区国产精品| 9191成人精品久久| 久久国产精品99久久久久久老狼| 中文天堂在线一区| 欧美四级电影在线观看| 美女视频黄久久| 国产精品天干天干在线综合|