本来程序里面是有很详细注释得,但是不知道何故,粘贴过来之后中文全部是乱码,没的办法,只好将注释全部去掉了.
【程序编程相关:主机不能上网的检查三步曲】 【推荐阅读:Windows 控件限制用户输入的基本法】这个异步类只实现了一些简单功能.在使用时候需要注意下面几点: 【扩展信息:[初学VB.NET]如何防止重复打开MD】 1.串口得相关参数需要在open之前设置好,打开之后,就不能设置了 2.读取串口数据采取查询方式 3.向串口发送数据函数得执行需要一定得时间,知道成功它才返回. 4.默认是没有硬件握手得,如果要握手,需要调用函数setflowctrl 5.串口波特率直接传递数值就可以,比如9600. 头文件如下: //asyncomm.h //moonight //2004-10-31 #include <windows.h>/* modem control setting */
#define c_dtr 0x01 #define c_rts 0x02/* modem line status */
#define s_cts 0x01 #define s_dsr 0x02 #define s_ri 0x04 #define s_cd 0x08#define sio_ok 0
#define sio_error -1class casyncomm
{ public: casyncomm(); virtual ~casyncomm(); protected: volatile int nport; volatile handle comhandle; dcb mydcb; int inbufsize, outbufsize; commtimeouts cotimeout; overlapped ro,wo; void init(); bool isopen(); public: int getch(); int putch(char ch); int read(char *buf, int len); int write(char *buf, int len); int close(); virtual int open(int port); ... 下一页