1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980 |
- #pragma once
- typedef void (CALLBACK* MY_ONSERIESREAD)(void * pOwner
- ,BYTE* buf
- ,DWORD dwBufLen );
- class CMyCESeries
- {
- public:
- bool bCanComRead;
- bool m_bSyncOrAsync;
- CMyCESeries(UINT portNo = -1, UINT baud = 9600, UINT parity = NOPARITY, UINT databits = 8, UINT stopbits = 0);
- ~CMyCESeries(void);
- public:
- UINT m_portNo;
- UINT m_baud;
- UINT m_parity;
- UINT m_databits;
- UINT m_stopbits;
-
- BOOL OpenPort(void* pOwner,
- UINT portNo = 1,
- UINT baud = 9600,
- UINT parity = 0,
- UINT databits = 8,
- UINT stopbits = 0,
- bool isASync = true
- );
-
- void ClosePort();
-
- BOOL WriteSyncPort(const BYTE*buf , DWORD bufLen);
-
- BOOL SetSeriesTimeouts(COMMTIMEOUTS CommTimeOuts);
-
- BOOL GetComOpened();
- private:
-
- static DWORD WINAPI ReadThreadFunc(LPVOID lparam);
-
- private:
-
- void CloseReadThread();
- private:
-
-
- HANDLE m_hReadThread;
-
- DWORD m_dwReadThreadID;
-
- HANDLE m_hReadCloseEvent;
- bool m_bOpened;
- void * m_pOwner;
- public:
- MY_ONSERIESREAD m_OnSeriesRead;
- HANDLE m_hComm;
- OVERLAPPED m_olWrite;
- };
|