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

📄 myserial.h

📁 一个串行口通讯的例子程序
💻 H
字号:
/*******************************************************************************
						
						  串行口操作类 CMySerial 
						 
							 宣善明
							    xuanshanming@sina.com
						    
						      2003年1月



  使用方法:
       先调用InitSerial()函数初始化串口
	   然后分别调用WritePort(),ReadPort()来读写端口
	   其中ReadPort采用线程完成,只允许同时有一个线程读串口,可以设置最大等待时间
	   使用完毕后用CloseSerial()关闭串口即可

*********************************************************************************/

#ifndef _MYSERIAL_H
#define _MYSERIAL_H

class CMySerial 
{
protected:
	HANDLE m_hSerial;    //串口句柄
	DWORD  m_dwError;    //错误代码

	typedef struct _BUFFER
	{
		DWORD dwLen;     //缓冲区长度
		LPBYTE lpByte;   //缓冲区首地址
	} BUFFER, *LPBUFFER;

	long m_nReadThread;      //读串口线程句柄
	BUFFER m_ReadingBuffer;  //读串口缓冲区
	static UINT ReadThread (LPVOID pParam); //读串口线程

public:
	CMySerial();   //构造函数
	~CMySerial();  //析构函数
	
	BOOL InitSerial(UINT nPort=1, UINT baud=2400, char parity='n', 
					UINT databits=8, UINT stopbits=1);  //初始化串口
	BOOL CloseSerial();                                 //关闭串口

	BOOL WritePort(BYTE byte);                //写串口
	BOOL ReadPort(LPBYTE lpByte, DWORD dwLen=1, DWORD dwTimeLimit=2000);  //读串口

	void DisplayError(void);      //格式化输出错误代码 


	//特殊功能函数
	double GetFrequency();   //从串口得到一个数据
	void MaxMin(int *pInt, int len, int &max, int &min);  //找到一组数据中的最大最小值
};

#endif //_MYSERIAL_H

⌨️ 快捷键说明

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