用at指令拨号(50分)

  • 主题发起人 主题发起人 liqiang_zhou
  • 开始时间 开始时间
L

liqiang_zhou

Unregistered / Unconfirmed
GUEST, unregistred user!
各位同仁,我现在通过内猫用at指令拨号,与对方连接.在进行createfile时,不成功!!内猫的
默认端口号是com3!但是com1和com2都可以成功,请赐教!
还有进行串口初始化时,是否先拨号!!
 
请帮忙,先谢过!!在线.
 
var
F: TextFile;
begin
AssignFile(F, 'COM1:');
Rewrite(F);
Writeln(F, 'AT');
Writeln(F, 'ATD119');
CloseFile(F);
end;
 
to jackin:
谢谢你,内猫进行at拨号,应该是什么步骤!
1.串口初始化(我进行该操作不成功)

源码如下:(内猫默认端口号是com3)
H:= createfile('com3',generic_read or generic_write,0,
nil,open_existing,FILE_ATTRIBUTE_NORMAL,0);
getcommstate(H,myDCB);
my.BaudRate:=CBR_115200;
myDCB.DCBlength:=SizeOf(Tdcb);
myDCB.Flags:=12305;
myDCB.wReserved:=0;
myDCB.XonLim:=65535;
myDCB.XoffLim:=65535;
myDCB.ByteSize:=8;
myDCB.parity:=0;
myDCB.StopBits:=0;
myDCB.XonChar:=#17;
myDCB.XoffChar:=#19;
myDCB.ErrorChar:=#0;
myDCB.EofChar:=#0;
myDCB.EvtChar:=#0;
myDCB.wReserved1:=65;
setcommstate(h,myDCB);

2.拨号
.......
 
帮帮忙,我搜过以前的帖子,没有解释的,关于内猫拨号(at指令)
 
高手都到哪儿去了!!
 
这个不要 myDCB.DCBlength:=SizeOf(Tdcb);
setcommstate 其实可以不要, 用默认的值就可以, 跟AT指令没有关系
setcommstate 只是初始COM口的参数, 并没有初始猫
 
to jachin
H:= createfile('com3',generic_read or generic_write,0,
nil,open_existing,FILE_ATTRIBUTE_NORMAL,0);
getcommstate(H,myDCB);(这句都不能通过)
谢谢大幅,劳驾
 
AT指令集及S寄存器
指令 描述
AT 指令前缀-在指令的开头
<CR> 回车符号-命令行的结尾
A 进入应答方式;转入联机状态
A/ 重复执行上一条指令,既不加AT后面也不跟回车<CR> *B0
B0 以1200BPS,选择CCITT V.22标准通信
B1 以1200BPS ,选择BELL212A 标准通信
D 进入呼叫状态,拨后面的电话号码,进入联机状态。
0-9 音频/脉冲拨号之数据号码
#,* 仅供音频拨号用
P 脉冲拨号
R 使调制解调器在拨号后进入接收模式
S=n 拨四组记忆在E2 PROM中的电话号码(N=0~3)
T 音频拨号
W 等待数秒的拨号音后再拨号(ATDW=N)

, 暂停(S8寄存器定义暂停的秒数)
@ 等五秒钟静音
! 内切
; 在拨号完后回到命令模式
E0 关闭指令态字符回显
E1 打开指令态字符回显
+++ 脱离字元,当您连线状态下,想转换为命令模式,只需键入”+++’,MODEM回应”OK’,您就可以对本地MODEM下命令了.
H0 使MODEM 切断电话
H1 使用MODEM连机
I0 请求产品标识代码
I1 执行固件ROM中的校验和,返回校验和
I2 执行固件ROM中的校验和,返回“OK”或“ERROR”结果码
I3 显示 调制解调器的软件版本
I4 读出国家码
L0 扬声器不响
L1 扬声器低音量
L2 扬声器中音量
L3 扬声器高音量
M0 关闭扬声器
M1 打开扬声器至检测到载波,连线后关掉
M2 扬声器持续开
M3 MODEM在拨号时,关掉扬声器; 连线后,打开
N0 要求MODEM用S37规定的速率进行握手
N1,N2 在呼叫方时 ,允许在双方MODEM所支持最高线路速率上协商通信标准。 从S37指定的DCE 线路速率开始协商,必要时降低速率。当应答时,尽量协商最高速率,从S37指定开始,必要时降速
N3,N4 在呼叫方时,仅在S37指定的速率握手。当应答时,从S37允许的最高速率握手,必要时降速
N5 在呼叫方时 ,允许在双方MODEM所支持最高线路速率上协商通信标准。在英大使,以S37指定速率进行握手
O0 恢复数据传输模式
O1 回到数据传输模式且产生一个试传信号作握手
P 将拨号方式设置为脉冲方式
*Q0 MODEM返回结果码,并在屏显示
Q1 MODEM不返回结果码
Q2 MODEM在呼叫方式下返回结果码,在应答方式下不返回结果码
SR=N 将N值写入S寄存器R.. (N为0~255,R为0~99)
Sr? 读取S寄存器R中的值.
T 将拨号设置为音频方式
V0 以数字形式返回结果码
*V1 以字符形式返回结果码
W0 不返回协商进程结果码
W1 返回协商进程结果码
W2 不返回协商进程结果码;返回的CONNECT信息使用DCE速率而不是DTE速率
X0 MODEM在拨号不辨别拨号音和忙音,结果只显示CONNECT,不显示MODEM的速度.
X1 MODEM在拨号不辨别拨号音和忙音,结果显示CONNECT连接速度.
X2 MODEM拨号时辨别拨号音,但不辨别忙音,结果显示速度.
X3 MODEM不辨别拨号音,但辨别忙音及显示速度.
X4 MODEM辨别拨号音,忙音及结果显示速度.
Y0 在收到LONG SPACE BREAK信号时,不终止MODEMD的连线.
Y1 在断线前,MODEM送四分钟的”断”信号.
Z0 MODEM复位,并且重新调整用户方案0
Z1 MODEM复位,并且重新调整用户方案1
&amp;C0 假定数据载波一直存在
*&amp;C1 由外来信号决定,当侦测到载波信号时CD为高电平.
&amp;C2 假定数据载波一直存在直到上线,然后追踪数据载波
&amp;D0 忽略DTR信号
&amp;D1 当DTR发生从开到关的转换时,MODEM由连线状态进入命令状态
*&amp;D2 当DTR发生从开到关的转换时MODEM挂机并取消自动应答,进入命令状态
&amp;D3 当DTR发生从开到关的转换时,MODEM挂机并取消自动应答,回到初始状态
&amp;F 重新调出工厂设置作为动态设置
&amp;G0 MODEM不送导音信号
&amp;G1 选择导音为550HE
&amp;G2 选择导音为1800HE
&amp;L0 选择MODEM为拨号式工作模式
&amp;L1 选择MODE为专用线工作模式
&amp;K0 关掉本地流量控制
&amp;K1,&amp;K3 使用RTS/CTS硬件流控
&amp;K2,&amp;K4 使用XON/XOFF软件流控
&amp;K5 使用透明XON/XOFF本地流控
&amp;Q0 异步方式
&amp;Q1 同步方式1,在下此命令时,MODEM在非同步转化为同步,但当DTR由关到开,则取消同步.
&amp;Q2 同步方式2,下此命令时,DTR由OFF转为ON,MODEM拨存储在EEPROM位置0的号码
&amp;Q3 在手动拨号时,DTR为OFF,当拨完,有终端机将DTR转化为ON,同时将电话机挂上。
&amp;Q4 同步方式 4
&amp;Q5 差错控制方式
&amp;Q6 异步通信方式,具有自动速率缓冲(ASB)
&amp;P0 选择脉冲拨号的断续比值M/B为40/60
&amp;P1 选择M/B的值为33/67
&amp;R0 CTS追踪RTS
&amp;R1 忽略RTS,假定RTS一直存在
&amp;S0 假定DSR一直存在
&amp;S1 跟踪DSR信号存在(2400,V2400,V9600)不允许在插板式MODEM显示“ERROR”结果码(2400B,V2400B)
&amp;S2 握手协商之后假定DSR存在,一直到CONNECT XXXX结果码送到DTE
&amp;T0 终止诊断测试
&amp;T1 本地模拟回路诊断测试
&amp;T2 &amp;T3 本地数字回路诊断测试
&amp;T4 本地MODEM可识别远端MODEM之数字回路诊断测试
&amp;T5 MODEM不理会远端MODEM之数据回路诊断测试之请求
&amp;T6 远端数据回路诊断测试
&amp;T7 远端数据回诊断测试及自我诊测试
&amp;T8 本地模拟回路的诊断测试及自我诊断测试
&amp;U0 打开格珊编码(只在CCITT V.32 9600BPS)
&amp;U1 关闭格珊编码
&amp;V0 查询动态设置,用户方案及所存电话号码
&amp;V1 返回当前连接统计
&amp;W0 保存动态设置为用户方案组态表0
&amp;W1 保存动态设置为用户方案组态表1
&amp;X0 同步传送时,传送时钟由MODEM内部产生
&amp;X1 同步传送时钟由资料终端设备DTE产生
&amp;X2 同步传送时钟跟随接收到的时钟动作
&amp;Y0 打开时重新调用用户方案0
&amp;Y1 打开时重新调用用户方案1
&amp;Zn=X 将电话号“X”存入“Zn”寄存器
%Bn 设定MODEM的连接速度,实际连接速度N命令和DTE速率(N=300,2400,4800,9600,14400等) %E0 不检测线路质量,不自动降速
%E1 检测线路质量并自动降速
%E2 检测线路质量
%L 返回线路接收信号电平
/N0 选择标准速率缓冲模式
/N1 选择直接模式
/N2 选择可靠连接模式
/N3 选择自动可靠模式
/N4 强制LAPM模式
/N5 强制MNP模式
小记:
对于少数MODEM可能存在不支持的情况。因而,在编程使用时,最好能用相关超级终端将所用的指令验证一下。如回应OK,表明该指令可用。




名称 出厂值 单位 功能
S0 0 RINGS 设定振铃次以回应电话
S1 0 RINGS 计算铃响次数
S2 43 ASCLL ESC脱离码元
S3 13 ASCLL 输入回车码元
S4 10 ASCLL 换行码元
S5 8 ASCLL 退回字码元
S6 2 秒 等候拨号时间
S7 30 秒 拨号完后等待远端信号时间
S8 2 秒 逗号暂停时间
S9 6 0.1秒 信号侦测反映时间
S10 14 0.1秒 信号消失至挂断电话反映时间
S11 95 毫秒 控制DTMT拨号速度
S12 50 0.02秒 ESC码元前后间隔时间
S13
 
多人接受答案了。
 
后退
顶部