2009-11-06 | #1 (permalink) |
高级会员
注册日期: 2009-07-09
住址: 亦庄经济开发区2号院大族广场1502
帖子: 531
|
用C#调试AT指令
调试AT指令首先要支持串口操作, .net1.x没有支持串口其实就是api调用.
[DllImport("kernel32.dll")] private static extern int CreateFile(); //打开串口 [DllImport("kernel32.dll")] private static extern bool ReadFile(); //读串口 [DllImport("kernel32.dll")] private static extern bool WriteFile(); //写串口 包装包装就成一个.net串口操作类。当然,如果环境假设为.net 2.x以上可以用System.IO.Ports.SerialPort.功能差不多,除了read,就是write. 首先要弄明白的是端口,在设备管理器,打开modem看,里面会告诉你用哪个端口,格式:COMX(X= 1,2,3,4.....)。 接下来就是几个概念了。一个是波特率,也就是最大通信速率,就低不就高。一般modem是56k,所以填57600不错。(这个在设备管理器里也有) 数据位 一般是8 。奇偶校验位 0 停止位 1。当然也有特殊情况,遇到的概率跟中彩票差不多。实在没招,找个串口监视工具,在命令行里输入 "dialer",可以打开window 内置的拨号程序,拨一遍就知道了. 串口搞定,动modem就有戏.先试一下是否连通.(注意这里,at指令是以0d结束,不是字符,是16进制字节,输入时直接敲回车就可以,下同.) 输入: AT 如果连接正确modem会 返回: OK 接下来是拨电话,wirte 一组字符串,加入你要拨的号码,假如是10000号,那就发 输入: ATDT10000 modem会去拨10000,电话就给你接通了.拨不上去,modem会返回 "NO DIALTONE" 或 "BUSY",读取返回值,检测到这两个东东,毙掉它重来. 拿一条分机和它串在一起,等modem接通了,提示我一下,拿起电话机,就可以和对方通话了. 当然,一条电话和一个人没什么竞争力,但多条线就不同了.开几条线程去拨,看谁还能比我快. 好了,现在告诉你这咚咚干什么用了: 1 ,可以用来进非常6加1或者"XX不寂寞",我就不信还有人的手比这个还快还有耐心。逮着机会可以狠狠BT李XX 2 ,年关了,抢条线定火车票.如果你那个地方订票系统比较好,或者票多人傻,可以飘过........
__________________
地址:北京亦庄经济技术开发区荣华南路10号院5号楼705 电话:010-82356575/76/77转6070 联系人:苏秋英 手机微信同号:13811870548 QQ: 1170923055 |