2009-11-06 | #1 (permalink) |
高级会员
注册日期: 2009-07-09
住址: 亦庄经济开发区2号院大族广场1502
帖子: 531
|
AT COMMAND简介
AT命令是计算机发送给猫的命令。计算机给猫发出一个命令,猫返回一个字符串,表示命令执行的结果。如果猫能够接受,就给一个回应信息,通常都是ASCII字符OK,有时也会是其他的,比如给猫发送"ATD电话号码\r"之后,等到拨号完毕,猫会返回CONNECT.如果猫不能够接受就给一个错误信息,一般都是ERROR。计算机和猫之间的对话都是靠着原始的字符串来完成的。计算机发给猫的都是命令。而猫发给计算机的字符串有三类,其一:对于命令的回应,一般在命令接收到后马上就回应了。其二:消息字符。猫不但听话,而且很爱打报告,一般风吹草动,就要给电脑通风报信。比如每次有震铃时,就先一个字符DLE(DLE不是三个字符,而是一个字符的代号,这个字符的16进制表示为0x10),后面跟一个'R'.有来电显示的时候发一个字符0x0d,紧跟着是0x0a,接着就是来电显示日期和号码。监测到话机按键的时候,发一个DLE,后面跟着'/',按键,'~'.其三:录音的时候把录制的数据发送给电脑。发送数据的时候,如果遇到某一个字节的数据刚好是DLE,就在它的后面补一个DLE,电脑在接收的时候,如果发现两个连续的DLE就去掉一个,留下一个,如果发现单独的DLE可能就是消息字符。 猫可以工作在数据模式、语音模式或传真模式下,相应的AT命令分为常规命令,语音命令,传真命令。常规命令就是一些各种模式下通用的命令,比如拨号(atd电话号码\r)应答(ata\r),还有初始化命令等等。相应的at命令请参考http://www.gkong.com/MODEM/index_mod...时间翻译 voicecommandguide ,里面介绍都挺详细的,不过你的猫的AT命令可能会略有不同。
不同的猫可能会有不同的at命令。在windows系统中,每个猫的驱动程序的inf文件里都可以找到一些at命令,比如,下面是从金网霸fm3711猫的xp下的驱动程序中摘录的一段。可以看出,这是在告诉windows执行各种操作时对应的at命令。比如初始化猫的时候就要执行"AT&FE0V1S0=0&C1&D2+MR=2;+DR=1;+ER=1;W2" 驱动程序和AT COMMAND 不同的猫可能会有不同的at命令。在windows系统中,每个猫的驱动程序的inf文件里都可以找到一些at命令,比如,下面是从金网霸fm3711猫的xp下的驱动程序中摘录的一段。可以看出,这是在告诉windows执行各种操作时对应的at命令。比如初始化猫的时候就要执行"AT&FE0V1S0=0&C1&D2+MR=2;+DR=1;+ER=1;W2"下面是金网霸语音猫的驱动程序文件(.inf)的一部分,在安装驱动之后,这些信息就被写到注册表里面了.HKR, Init, 1,, "AT" HKR, Init, 2,, "AT&FE0V1S0=0&C1&D2+MR=2;+DR=1;+ER=1;W2" HKR, Monitor, 1,, "ATS0=0" HKR, Monitor, 2,, "None" HKR, Hangup, 1,, "ATH" HKR, Answer, 1,, "ATA" HKR, , Reset,, "ATZ" 。。。。。HKR, StartPlay, 1,, "at+vtx" HKR, StopPlay, 1,, "None" HKR, StopPlay, 2,, "NoResponse" HKR, StartRecord, 1,, "at+vrx" HKR, StopRecord, 1,, "None" HKR, StopRecord, 2,, "NoResponse" HKR,, TerminateRecord,, "" HKR,, TerminatePlay,, "" HKR,, AbortPlay,, "" HKR, LineSetPlayFormat, 1,, "at+vsm=130,8000,0,0" HKR, LineSetRecordFormat, 1,, "at+vsm=130,8000,0,0" HKR, VoiceToDataAnswer, 1,, "at+fclass=0" HKR, VoiceToDataAnswer, 2,, "ata" 下面是应答的时候要执行的命令。注意,在语音模式下,at+vls=1"就可以应答了,不需要ata HKR, VoiceAnswer, 1,, "at+fclass=8" HKR, VoiceAnswer, 2,, "at+vtd=10" HKR, VoiceAnswer, 3,, "at+vsm=130,8000,0,0" 设置语音数据压缩格式。 HKR, VoiceAnswer, 4,, "at+vit=6" HKR, VoiceAnswer, 5,, "at+vls=1" HKR, VoiceDialNumberSetup, 1,, "at+fclass=8" HKR, VoiceDialNumberSetup, 2,, "at+vls=0" HKR, VoiceDialNumberSetup, 3,, "at+vrn=0" HKR, VoiceDialNumberSetup, 4,, "at+vtd=10" HKR, VoiceDialNumberSetup, 5,, "at+vsm=130,8000,0,0" HKR, VoiceDialNumberSetup, 6,, "at+vit=6" 下面是猫发送给电脑的响应字符串。 HKR, Responses, "0", 1, 00, 00, 00,00,00,00, 00,00,00,00 ; OK HKR, Responses, "1", 1, 02, 00, 00,00,00,00, 00,00,00,00 ; CONNECT HKR, Responses, "2", 1, 08, 00, 00,00,00,00, 00,00,00,00 ; RING HKR, Responses, "3", 1, 04, 00, 00,00,00,00, 00,00,00,00 ; NO CARRIER HKR, Responses, "4", 1, 03, 00, 00,00,00,00, 00,00,00,00 ; ERROR HKR, Responses, "5", 1, 02, 00, B0,04,00,00, 00,00,00,00 ; CONNECT 1200 HKR, Responses, "6", 1, 05, 00, 00,00,00,00, 00,00,00,00 ; NO DIALTONE HKR, Responses, "7", 1, 06, 00, 00,00,00,00, 00,00,00,00 ; BUSY HKR, Responses, "8", 1, 07, 00, 00,00,00,00, 00,00,00,00 ; NO ANSWER关于详细的驱动信息,请看完整的inf文件 在驱动程序安装以后,这些信息就被装到注册表里去了。不同的操作系统,注册表的结构也有所不同。在win9x中,在LOCAL_MACHINE\system\CurrentControlSet\services\class\modem下,每一个猫对应一个子目录,比如第一个猫是0000目录,第二个是0001.打开目录,可以看到许多子目录和数据项,每个子目录对应着一个动作,比如拨号,应答等,目录里面则是具体的AT命令。数据项中描述了猫的一些属性,比如Model项就是猫的驱动描述,matchingDeviceID对应的是PCI\xxxx,在LOCAL_MACHINE\system\CurrentControlSet\services\enum下可以找到这个项,在里面可以找到和串口有关的信息,比如猫对应的串口号等。 在xp中,LOCAL_MACHINE\system\CurrentControlSet\services\modem下可以找到0,1...项代表各路猫。打开其中的一项,其值是PCI\XXXX的格式。在LOCAL_MACHINE\system\ControlSet001\enum\中可以找到与该值相应的项。打开它的子项,其中有一项是Driver,在LOCAL_MACHINE\system\ControlSet001\control\class中可以找到项名为Deriver的值的项,该项下面有许多项,比如Answer,VoiceAnswer,StartPlay,StartRecord,EnableCallerID,Hangup等等,打开其中的一项,可以发现里面的内容是猫执行某项操作的时候需要用到的AT命令。比如Rockwell芯片的猫的EnableCallerID里面的内容通常是 Name Type Data (Default) REG_SZ (value not set) 1 REG_SZ at+vcid=1有时候猫的驱动程序安装不正确,里面就有可能缺少某些项,比如金网霸PF-X01(芯片Conexant 11242)在98下安装后就没有 EnableCallerID 项,这样在TAPI模式下,猫就没有来电显示功能了。要想解决这个问题,可以手工把这一项添加到注册表里面。 在winxp下,系统会自动给猫安装驱动程序,删除了系统自动安装的驱动程序之后,扫描硬件改动,系统仍然会自动安装系统自带的驱动程序。要想使用厂家提供的驱动程序,在设备管理里面找到猫,然后双击,找到驱动程序页面,点更新驱动程序,出现更新驱动向导,有两个选项,第一个是自动安装,第二个是从列表或特定的位置安装,选择第二个,点下一步,又出现两个选项,第一个是从下列位置中选择搜索驱动程序,第二个是不搜索,直接选择驱动程序。选择第二个,点下一步,再点从磁盘安装,找到驱动程序存放的位置,就可以了。 注册表中的AT COMMAND 在驱动程序安装以后,AT命令就被写到注册表里去了。不同的操作系统,注册表的结构也有所不同。在win9x中,在LOCAL_MACHINE\system\CurrentControlSet\services\class\modem下,每一个猫对应一个子目录,比如第一个猫是0000目录,第二个是0001.打开目录,可以看到许多子目录和数据项,每个子目录对应着一个动作,比如拨号,应答等,目录里面则是具体的AT命令。数据项中描述了猫的一些属性,比如Model项就是猫的驱动描述,matchingDeviceID对应的是PCI\xxxx,在LOCAL_MACHINE\system\CurrentControlSet\services\enum下可以找到这个项,在里面可以找到和串口有关的信息,比如猫对应的串口号等。 在xp中,LOCAL_MACHINE\system\CurrentControlSet\services\modem下可以找到0,1...项代表各路猫。打开其中的一项,其值是PCI\XXXX的格式。在LOCAL_MACHINE\system\ControlSet001\enum\中可以找到与该值相应的项。打开它的子项,其中有一项是Driver,在LOCAL_MACHINE\system\ControlSet001\control\class中可以找到项名为Deriver的值的项,该项下面有许多项,比如Answer,VoiceAnswer,StartPlay,StartRecord,EnableCallerID,Hangup等等,打开其中的一项,可以发现里面的内容是猫执行某项操作的时候需要用到的AT命令。比如Rockwell芯片的猫的EnableCallerID里面的内容通常是 Name Type Data (Default) REG_SZ (value not set) 1 REG_SZ at+vcid=1 有时候猫的驱动程序安装不正确,里面就有可能缺少某些项,比如金网霸PF-X01(芯片Conexant 11242)在98下安装后就没有 EnableCallerID 项,这样在TAPI模式下,猫就没有来电显示功能了。要想解决这个问题,可以手工把这一项添加到注册表里面。 以下是金网霸PF-X01安装后注册表中的信息. 项目 说明 内容(以金网霸pf-x01中为例) Answer 以传真模式应答对方呼叫 ATA EnableCallerID 开启来电显示功能,一般在打开线路时使用. at+vcid=1 GenerateDigit 在电话线路中模拟按按键. at+vts= HangUp 挂断电话 ATH Init 初始化线路 AT&FE0V1S0=0&C1&D2+MR=2;+DR=1;+ER=1;W2 LineSetPlayFormat 用来设置播放语音格式 at+vsm=130,8000,0,0 LineSetRecordFormat 用来设置录音语音格式 at+vsm=130,8000,0,0 Setting 基本的参数设置 SpeakerPhoneDisable 关闭耳麦 at+vsp=0 SpeakerPhoneEnable 开启耳麦 at+a8e=6,5,21,0;+vsp=1 at+vgs=130;+vgm=120 SpeakerPhoneMute 耳麦静音 at+vsp=1 at+vls=16 SpeakerPhoneUnmute 关闭耳麦静音 at+vsp=1 at+vls=17 StartPlay 开始播放语音 at+vtx StartRecord 开始录音 at+vrx VoiceAnswer 语音模式应答 at+fclass=8 at+vtd=10 at+vsm=130,8000,0,0 at+vit=6 at+vls=1 VoiceDialNumberSetup 语音模式拨号设置 at at+fclass=8 at+vls=0 at+vrn=0 at+vtd=10 at+vsm=130,8000,0,0 at+vit=6 WaveDriver 语音驱动信息
__________________
地址:北京亦庄经济技术开发区荣华南路10号院5号楼705 电话:010-82356575/76/77转6070 联系人:苏秋英 手机微信同号:13811870548 QQ: 1170923055 |