windows串口通信的基本步骤

windows串口通信的基本步骤

ID:34419431

大小:83.50 KB

页数:6页

时间:2019-03-06

windows串口通信的基本步骤_第1页
windows串口通信的基本步骤_第2页
windows串口通信的基本步骤_第3页
windows串口通信的基本步骤_第4页
windows串口通信的基本步骤_第5页
资源描述:

《windows串口通信的基本步骤》由会员上传分享,免费在线阅读,更多相关内容在工程资料-天天文库

1、串口通信的基本步骤(1)通过CreateFile(“COMx:“,…)打开串口(2)通过配置DCB结构体和SetCommState函数,设置串口的参数。(3)通过ReadFile()和WriteFile读写串口Windows串口通信实例封装了一个串口通信的C++类CSerial,通过CSerial类的OpenSerialPort()可以打开一个串口,串口打开后后自动新建线程读取串口数据,并通过MessageBox简单的显示出数据。通过CSerial类的SendData()方法可以向串口发送数据。主函数中,新建了一个CSerial类对象,打开串口2,然后简单的通过一个消息框循

2、环来控制向串口不断的发送数据。程序的效果图如下:使用虚拟串口工具虚拟出串口对COM2和COM3,本实例程序读写COM2,使用串口调试助手打开COM3。->在“是否向串口发送数据”消息框中,点击”是(Y)”会向串口发送一条”Thisisaexample”数据。如图,在串口调试助手中收到该数据包->在串口调试助手中,手动发送”jarvischu”,程序会读取到该数据并弹出消息框显示。源码如下:Serial.h#pragmaonce#includeclassCSerial{public:CSerial(void);~CSerial(void);//打开串口BOOLOpenSeri

3、alPort(TCHAR*port,UINTbaud_rate,BYTEdate_bits,BYTEstop_bit,BYTEparity=NOPARITY);//发送数据BOOLSendData(char*data,intlen);public:HANDLEm_hComm;};Serial.cpp#include "StdAfx.h"#include "Serial.h"#include typedef unsigned (__stdcall *PTHREAD_START) (void *);CSerial::CSerial(void){m_hCom

4、m = INVALID_HANDLE_VALUE;}CSerial::~CSerial(void){if(m_hComm != INVALID_HANDLE_VALUE){CloseHandle(m_hComm);}}/********************************************************************************************* * 功能    :读串口线程回调函数  * 描述   :收到数据后,简单的显示出来 ********************************************

5、************************************************/DWORD WINAPI CommProc(LPVOID lpParam){CSerial* pSerial = (CSerial*)lpParam;  ////清空串口PurgeComm(pSerial->m_hComm,PURGE_RXCLEAR

6、PURGE_TXCLEAR);char buf[512];DWORD dwRead;while(pSerial->m_hComm != INVALID_HANDLE_VALUE){BOOL bReadOK = ReadFile(p

7、Serial->m_hComm,buf,512,&dwRead,NULL);if(bReadOK && (dwRead > 0)){buf[dwRead] = '';MessageBoxA(NULL,buf,"串口收到数据",MB_OK);}}return 0;}/******************************************************************************************* * 功能     :打开串口 * port     :串口号, 如_T("COM1:") * baud_rate:波特率 * 

8、date_bits:数据位(有效范围4~8) * stop_bit :停止位 * parity   :奇偶校验。默认为无校验。NOPARITY 0; ODDPARITY 1;EVENPARITY 2;MARKPARITY 3;SPACEPARITY 4 ********************************************************************************************/BOOL CSerial::OpenSerialPort(TCHAR* port

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。