使用C#做通过串口对MODEM编程实现数据传输,急,请高手赐教,就这些分了。跪谢!!!
小弟要做一个上位机和下位机通过MODEM,联入公用电话网,使下位机的数据传输到上位机的项目。以前没有做过底层的东西,对这些东西都不熟,并且使用C#开发。想找一套做好的类或模块。具体的需求附在后面了,请会的大哥们帮帮忙。
在网上查了一下,可以用VB6下的MSCOMM做串口,但在.NET下具体的使用用一些变化。请会的朋友给讲一讲,最好是有现成的东西用,或者是相关的程序或文章也行。我的邮箱是:wanjingping@126.com , 非常感谢!!!
通信模块的要求说明: 自己写的,可能有些不对
1、 初始化MODEN函数(参数空)
对MODEN设定其初始化命令字,若正常返回int型“1”,否则为“0”;
2、 拨号函数(参数为下位机的电话号码,类型为字符型数组)
通过MODEN拨打下位机的电话号码,下位机MODEN监测到上位机的呼叫后,摘机应答;之后双方进行差错控制等通信协商,然后函数返回Int型值“1”,表示成功。此时MODEN进入自动在线状态,双发可开始通信。若拨号出现超时或未能建立连接则返回“0”。
3、 发送命令函数(参数为读取数据的命令字,类型为字符型数组)
建立连接后,上位机程序发送给下位机读取数据的命令。
4、 接受命令函数(参数为空)—————下位机运行
在连接建立后,下位机将调用此函数,以等待上位机的命令。当接收到了上位机送来的命令就将此命令作为返回值(类型为字符数组),以交给外面的程序分析命令内容准备数据。
5、 发送数据函数(参数为要传送的数据,类型为Byte字节数组和数据长度,类型为Int型)————下位机运行
外面的下位机主程序在判断了上位机发送过来的命令后,将要发送的数据放入一个字节数组以及其长度做为参数传给本函数,本函数负责发送给上位机。
6、 接收数据函数(参数为空)
下位机上传的数据——>MODEN——>串口接受缓冲区——>动态数组——>数据库
本函数将接受来的数据存入到一个字节数组中作为返回值交给上位机处理。或者存入到一个文本文件皆可。
7、 挂机子程序
通信结束后,停止链接,关闭MODEN。