?? windows ce的串口通信.txt
字號:
Windows CE的串口通信
以前看了很多文檔,知道Windows CE的串口如何操作,但是由于從來沒有想過要用串口,也沒有實際的作過。昨天有人需要用我們的開發板,而他們主要就是要用串口,我就寫了一個程序,用來測試串口是否工作。記錄下來,作為以后串口通信程序的起點。
HANDLE hSer;
hSer = CreateFile (TEXT ('COM1:'), GENERIC_READ | GENERIC_WRITE,
0, NULL, OPEN_EXISTING, 0, NULL);
if(hSer == INVALID_HANDLE_VALUE)
{
MessageBox(L'CreateFailed',L'Failed');
return;
}
int RC;
DWORD cByte_send,cByte_written;
char ch[20];
cByte_send = sizeof(ch);
sprintf(ch,'test COM1 good!');
RC=WriteFile(hSer,&ch,cByte_send,&cByte_written,NULL);
WCHAR ret[10];
wsprintf(ret,L'%d',cByte_written);
if(RC)
{
MessageBox(L'Send Ok!');
MessageBox(ret);
CloseHandle(hSer);
return;
}
wsprintf(ret,L'%d',GetLastError());
MessageBox(ret);
CloseHandle(hSer);
這部分程序實際上跟對WInCE下大部分流驅動程序的操作方法一樣,首先用CreateFile打開該設備,然后用Writefile/ReadFile進行讀寫,最后用CloseHandle來關閉。該程序沒有改變串口的配置信息,如果要修改,應該定義各DCB(Dirver control Block),然后使用GetCommState/SetCommState來進行讀取和修改串口信息。實際上這個函數是對串口驅動IoControl的封裝,如果你愿意,你也完全可以直接使用Iocontrol來進行^_^
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -