什么是AT指令?请用百度搜索^_^
打开串口工具,windows下面著名一点的有超级终端,不过实在不好用,推荐大家用比较方便的串口调试助手。
这里有下载
用串口工具连接上Modem所在的那个端口。
比如你是外置Modem,连接在了COM1口上,就用串口工具打开COM1口。
如果是内置的话,多数在COM3口上,如果你不知道,可以打开设备管理器在Modem属性页里看看。
OK,下面介绍AT指令。
常用AT指令有:
ATZ 软复位modem。
AT&K0 关闭流控制。
AT&K3 使用RTS/CTS流控制。
AT&W0 把当前设置保存到写到modem的永久存储器中的出厂设置配置文件0中。
AT&Y0 当MODEM在上电时自动调用出厂设置0,这样就能保证每次上电恢复我们预先设置的参数。
ATDn 拨号,其中n为电话号码。它必须是命令行中的最后一条指令,ATD命令使调制解调器摘机后,根据输入的参数拨号,以建立连接。
+++ 退出字符。切换调制解调器从在线状态到命令状态,而不会中断数据连接。
ATA 应答。它必须是命令行中的最后一条指令。调制解调器在应答方式下继续执行连接程序。在与远端调制解调器交换载波后进入连接状态,如果没有检测到载波, 调制解调器将挂机。在连接过程中,通过DTE输入的任何一个字母都将中断这一命令。
ATH0 使调制解调器挂机
ATE0 关闭命令字符回显
ATE1 打开命令字符回显
AT&F 调MODEM的出厂设置
ATS0=n 将MODEM设置成自动应答,当MODEM检测到线路上的振铃音时开始计数,当有连续n声振铃音,则MODEM自动摘机,响应呼叫。
注:每次输入AT指令后(除+++以外),输入+ Chr(13)即“Enter”键,即完成指令发送。如果用HEX格式发送,在命令头、尾都要加回车、换行代码。例如:
ATE0————0D 0A 41 45 30 0D 0A
常见的响应有:
OK 响应正确。
ERROR 错误码。
RING 响铃。
BUSY 占线。
NO ANSWER 无应答。
CONNECT 9600 拨号成功。
NO CARRIER 对方挂机。
NO DIALTONE 拨号无响应。
拨通电话:
当发送“ATD”+ 电话号码 + Chr(13)时,MODEM就开始拨号,拨号需要一定的时间,在拨号的过程中可以不断读取MODEM的CD指示灯的状态,当电话拨通后CD指示灯会点亮。并返回“CONNECT + 波特率”的信息。
若对方MODEM不能摘机,则返回 “NO DIALTONE”,CD指示灯灭。
若对方电话正忙,则返回 “BUSY”。CD指示灯灭。
通过MODEM发送数据
当电话拨通后,MODEM能自动将串口发送缓冲区中数据信息通过电话线路传递给对方MODEM,对方MODEM在将信息传递个设备,而MODEM也会将设备返回的信息回送个计算机的缓冲区中,整个过程自动完成,所以你不必担心您的信息是否能发送出去。
挂电话
当电话拨通后,MODEM不再接收AT指令,要使其回到命令状态,则必须发送“+++”信息,使MODEM回到命令状态,然后发送“ATH”+ Chr(13)则可以挂断电话。
举例:(以串口调试助手为例)
我有个内置Modem在串口COM3,用串口工具打开此串口
输入atd87650467↓
注:↓代表按一下回车,不要按多了。
然后点击“手动发送”
你就会听见Modem噼里啪啦的响起来了(当然前提你要接上电话线啦)
这样你就控制Modem向87650467这个号码拨号了。
比如你在87650454这端也接上了一个Modem,以同样的方式打开串口,输入ATA点击“手动发送”。嘿嘿,这样大家就连上了。然后你输入任何字符,点击“手动发送”发送按钮大家就可以聊天了。有意思吧。看看大家能用这个做出什么新的玩意出来娱乐一下。比如网络游戏,来个网络五子棋也不错啊。
用AT命令调试调制解调器
--------------------------------------------------------------------------------
最早生产调制解调器的公司是贺氏,后来组建的厂家制造的调制解调器都与HAYS兼容,大部分的通信软件使用菜单来对调制解调器进行配置、检测。但是有些通信软件要求用户直接发命令给调制解调器,在这种情况下必须使用AT命令。
AT命令集是调制解调器通信接口的工业标准,AT命令是调制解调器可以识别并执行的命令。AT命令简单容易掌握,使用它可以配置调制解调器,配合通信软件工作与远端系统通信发起或应答一个呼叫。
使用AT命令设置调制解调器时,用户使用的通信软件必须提供一个到调制解调器的直接连接状态,使你能够从命令行输入所需的AT命令。如在WINDOWS95下的“超级终端”中建立一个直接到串口的连接便可使用AT命令,也可使用ONLAN/PC软件的终端方式。但是不能在操作系统下(如:DOS下)直接使用AT命令。
AT命令的基本格式为:AT+命令字符及相关设置参数,例如:ATDT0,2043506 这
个命令表示使用音频拨号方式拨外线电话2043506。AT是前导符,D是命令字符表示拨号,T这个参数表示用音频拨号。先拨“0”,紧随其后的逗号表示延迟处理下一个字符称为拨号修正符。(可以通过设置S8寄存器的值定义延迟的时间,默认为2秒。范围为0~65秒)
应用一:在将调制解调器与电话连在一起时,当有电话拨入时,在振铃之后对方会听到调制解调器的应答风暴声,这的确很讨厌,当与调制解调器相连的计算机充做终端时,我们只是用它来向服务器拨号,请求建立通信连接,这时候自动应答功能并不需要,当与调制解调器相连的计算机充当主机时,当有连接请求时,调制解调器的自动应答功能可以响应请求。这时候的自动应答功能是需要的。普通调制解调器用户都可以将自动应答功能去掉。通过下面的AT命令可以去掉调制解调器的自动应答功能。 ATS0=0(进行设置)
AT&W(保存设置)这个命令用来设置寄存器S0的值,调制解调器的出厂值为1允许自动应答;值为0则禁止自动应答。
应用二:测试调制解调器。当我们拿到一个调制解调器,在安装它之前,总想测试一下它的好坏,目前我们没有好的办法,一般是安装它的驱动程序,然后按照下列顺序单击开始“设置”控制面板,双击调制解调器,单击诊断详细信息,计算机开始测试调制解调器,最后给出调制解调器的状况报告。这与正式安装一个调制解调器没有什么区别,其实通过使用AT命令就可以对调制解调器进行测试。使用超级终端输入ATDT电话号码,即可听到调制解调器的拨号声,如果能够拨通,那么调制解调器就没问题,否则可能有问题,或者阅读调制解调器自带的说明手册,一般可以找到一个包含自检测命令的命令表,通常自测命令标识为&Tn(n表示数字)。关于它们工作的详细解释会包含在手册中。第一个命令为&T1,从超级终端的命令行键入 at&f2 at&t1
我们应该能够看到类似下面的信息:CONNECT 33600/ARQ/V34/LAPM/V42BIS,接着我们可以键入一连串字符,在键入它们时,终端屏幕上应该同时出现。如果我们键入的字符和屏幕显示的字符是一致的,那么通过测试调制解调器没有问题,然后键入“+++”,按下回车键断开连接。如果测试失败,那么调制解调器的硬件确实有问题。所有这?amp;Tn命令是AT命令集的标准部分,我们可以敲入它并执行。
下面列举一下一般的测试命令及其功能:
&t0结束测试 &t1初始化模拟回环测试 &t2备用;
&t3初始化本地数字回环测试;
&t4启动远程数字回环测试 &t5禁止远程数字回环测试;
&t6初始化远程数字回环测试 &t7初始化带自测试的远程数字回环测试;
&t8初始化带自测试的远程模拟回环测试;
应用之三:设置自动拨号。在使用远程终端与UNIX服务器连接时,每次都需要拨相同的电话号码,建立通信链路与服务器连通,那么能不能把调制解调器设成一加电或一进入远程终端应用程序即开始拨号呢,答案是肯定的。使用如下命令即可实现此功能。 AT&F2(恢复出厂设置)
ATS13=24(当S13=8时,一有DTR信号,即开始拨存放在Z0中的电话号码;
当S13=16时,当一加电或复位时,即开始自动拨存放在Z0中的电话号码,如S13的
值为24,则两个功能都有)。
AT&Z0=P3506(设置要自动拨的电话号码,将其存放在Z0中)
AT&W(保存设置)
以上列举了AT命令的三个小应用,其实只要你仔细的研究它,你会发现许多有趣的知识,它能够帮你从硬件的低层了解调制解调器,使你运用调制解调器更得心应手。
下面简单的学习一下猫的AT指令集:
一 基础篇
这里讲述的是最基本的AT指令。
猫的第一句:AT,这是所有猫语的基础,就是说,其他的猫(AT指令)
都必须要它作为开头。
第二句包括:i0,i1,i2,i3,i4,i5,i6,i7
I0是让小猫告诉你她的产品代码;I1是让她告诉你预测的检查和;I2是报告一个“OK”;I3是告诉你她的版本、型号和界面类型;I4是告诉你OEM的编程回应;I5是告诉你她的数据泵类型以及代码版;I6是报告国家代码参数;I7是报告DAA代码和世界级型号,有些小猫会报告芯片的生产厂商。一般说来,I0~I3,小猫都会给你一个明确的回答,而I4~I7则要看猫的具体品种,有的也会详细回答,有的只会简单的表示一下——OK。
第三句是关于小猫汇报速度的,包括:w0、w1、w2、w0、w1是在EC模式下报告DTE(主机到COM口)速度;w2是报告DCE速度(MODEM的实际连线速度),这就是为何有的小猫说连线速度是115200,有的说33600,因为前者是在小猫初始化时用了w0、w1参数,其实是COM口的速度,而后者用了w2参数,是实际连线的速度。
第四句是有:X0、X1、X2、X3、X4,这是让小猫报告连接过程的结果代码。X0是报告最基本的代码,如OK、CONNECT、NOANSWER等。X1、X2基本相同比X0多报告一个连接速度。X3又比X2多报告Busy(忙线),X4则报告所有连接过程中的结果代码,包括NO DIAL TONE(无拨号音)等。
类似的基本又比较有用的AT指令还有:V0,报告简短(数字)结果代码;V1报告冗长(文字)结果代码(结果代码记录在.log文件里,下文有详述);%E0,关闭线路的品质监视器和自动连接;%E1,开启线路的品质监视器和自动连接;%Q,报告线路的品质;%L,返回接收线路的讯号电平;&F0,恢复工厂预设组0;&F1,恢复工厂预设组1。
二 进阶篇
让我们更深入的去了解小猫,猫般都会写着Date + Fax + Voice,这表示我们的猫是数据传真语音三合一的,那么,首先让我们看看传真、语音方面的AT指令。
第四句是语音指令,#cls=n,这是选择数据、语音或者传真服务。n=0时,选择数据,n=1时是语音,n=2是传真。没有这个语音功能的猫它是不认识的。还有#MDL?是识别语音,数据的型号和支持的数据协议,#MRF?是识别芯片制造商,#REV?是报告芯片版本号,#vci?是识别压缩方式,#vbq?是查询缓冲器的大小。
第五句是传真指令,如果你想知道猫支持那类传真指令,就可以跟它说:+fclass=?如果它回答是0,1,2,就表示它支持Class1,Class2指令;而+fclass=1,就是叫小猫用传真的class1指令。还有+fae=n,当n=1时,是让猫对
数据传真自动应答;n=0时则相反;然后,我们再学一下比较有用的猫跨平台通讯指令。
第六句包括ATA,ATZ。有时候,我们想把刚下载的软件与别人共享,用这个方法就很方便了,当然,前提是两台机子都要有猫。在两台机子上都运行At指令解析器,在win98下就是超级终端了,如果在Linux下,则要有相应的软件。在询问是否新建连接时,选取消。然后在其中一台键入ATA,在另一台键入ATZ,不久就会听到熟悉的猫叫声,两台机子就可以互传软件了。
因篇幅问题不能全部显示,请点此查看更多更全内容