TTYDoc.h
上传用户:seaboy_04
上传日期:2013-02-24
资源大小:284k
文件大小:2k
源码类别:

其他行业

开发平台:

Visual C++

  1. // TTYDoc.h : interface of the CTTYDoc class
  2. //
  3. /////////////////////////////////////////////////////////////////////////////
  4. #if !defined(AFX_TTYDOC_H__E5640313_0AED_4111_A859_25905A489350__INCLUDED_)
  5. #define AFX_TTYDOC_H__E5640313_0AED_4111_A859_25905A489350__INCLUDED_
  6. #if _MSC_VER > 1000
  7. #pragma once
  8. #endif // _MSC_VER > 1000
  9. //定义最大数据块、XON和XOFF
  10. #define MAXBLOCK 1024
  11. #define XON 0x11
  12. #define XOFF 0x13
  13. UINT ComProc(LPVOID pParam); //
  14. class CTTYDoc : public CDocument
  15. {
  16. protected: // create from serialization only
  17. CTTYDoc();
  18. DECLARE_DYNCREATE(CTTYDoc)
  19. // Attributes
  20. public:
  21. CWinThread* m_pThread; // 代表辅助线程
  22. volatile BOOL m_bConnected;//表示连接否,用来标识菜单串口连接和断开连接是否可用
  23. volatile HWND m_hTermWnd;//辅助窗口
  24. volatile HANDLE m_hPostMsgEvent; // 用于WM_COMMNOTIFY消息的事件对象
  25. OVERLAPPED m_osRead, m_osWrite; // 用于重叠读/写
  26. volatile HANDLE m_hCom; // 串行口句柄
  27. int m_nBaud;//数据传输速率
  28. int m_nDataBits;//数据位
  29. BOOL m_bEcho;//表明本地回显
  30. BOOL m_bNewLine;//表明自动换行
  31. int m_nParity;//校验位
  32. CString m_sPort;//串行端口
  33. int m_nStopBits;//停止位
  34. // Operations
  35. public:
  36. // Overrides
  37. // ClassWizard generated virtual function overrides
  38. //{{AFX_VIRTUAL(CTTYDoc)
  39. public:
  40. virtual BOOL OnNewDocument();
  41. virtual void Serialize(CArchive& ar);
  42. virtual BOOL CanCloseFrame(CFrameWnd* pFrame);
  43. //}}AFX_VIRTUAL
  44. // Implementation
  45. public:
  46. void CloseConnection();//关闭连接
  47. BOOL OpenConnection();//打开串口
  48. BOOL ConfigConnection();//配置连接
  49. DWORD ReadComm(unsigned char *buf,DWORD dwLength);//读串口
  50. DWORD WriteComm(unsigned char *buf,DWORD dwLength);//写串口
  51. virtual ~CTTYDoc();
  52. #ifdef _DEBUG
  53. virtual void AssertValid() const;
  54. virtual void Dump(CDumpContext& dc) const;
  55. #endif
  56. protected:
  57. // Generated message map functions
  58. protected:
  59. //{{AFX_MSG(CTTYDoc)
  60. afx_msg void OnApiConnect();
  61. afx_msg void OnUpdateApiConnect(CCmdUI* pCmdUI);
  62. afx_msg void OnApiDisconnect();
  63. afx_msg void OnUpdateApiDisconnect(CCmdUI* pCmdUI);
  64. afx_msg void OnApiSettings();
  65. afx_msg void OnUpdateApiSettings(CCmdUI* pCmdUI);
  66. //}}AFX_MSG
  67. DECLARE_MESSAGE_MAP()
  68. };
  69. /////////////////////////////////////////////////////////////////////////////
  70. //{{AFX_INSERT_LOCATION}}
  71. // Microsoft Visual C++ will insert additional declarations immediately before the previous line.
  72. #endif // !defined(AFX_TTYDOC_H__E5640313_0AED_4111_A859_25905A489350__INCLUDED_)