阅读:14595回复:25
有谁知道WINCE下GPRS MODEM拨号设置吗?
我的GPRS MODEM在WINDOWS XP上已经可以用了,但我想把它连到WINCE系统的机器上(好像这个现在很流行),我现在遇到了刚开始在XP机器上遇到的同样的问题,我在超级终端里敲AT命令都是可以的,如:
AT OK AT+CGDCONT=1,\"IP\",\"CMNET\" OK ATD*99***1# CONNECT (我想我的硬件应该是没问题了吧) 接下来就应该发PPP数据包了吧,(如果不发的话,过几分钟就回返回NO CARRIER),我想在超级终端里手动发PPP数据包应该不行吧(如果行,请高手指点),在XP里我是用WINDOWS自带的拨号程序拨号的,用的MODEM也是WINDOWS自带的标准MODEM,我想发AT指令和PPP数据包都应该是这个标准的MODEM发的吧,一开始我用的标准MODEM驱动不行,就换了个驱动就好了!在WINCE下我感觉现在的问题也跟那个HAYES兼容调制解调器有关,我现在能打开COM口,也能“拨号到*99***1#\",然后很快就显示“已连接的设备”,然后就没动静了,但不能上网,大概过了两三分钟就跳出一个对话框说“与远程计算机的连接断开,请重拨”,很郁闷,不知道问题出在哪,WINCE下我也不会重装标准MODEM,那位高手请指点!不甚感谢! |
|
沙发#
发布于:2011-08-07 09:16
RAS拨号没有发出ATD命令??
GPRS模块肯定起来了。直接用串口发送ATD*99***1#可以返回connect,并进入PPP握手流程。 可是用wince6.0自带的ras拨号提示"没有检测到载波信号。请检查电话号码并再试一次" 错误号679 查看串口输出信息如下: ATZ OK AT AT OK ATE0V1&C1&D2 ATE0V1&C1&D2 OK ATS7=120 OK AT+cgdcont=1,"ip","cmnet" OK ATZ OK AT AT OK ATE0V1&C1&D2 ATE0V1&C1&D2 OK ATS7=120 OK AT+cgdcont=1,"ip","cmnet" OK RASCS_Disconnected: Ecode=679 硬件没有接DCD,RI。 TX RX CTS RTS是接通的。 网上找到的GPRS上网的注册表直接添加进系统也是同样错误。 RAS怎么检测载波信号的呢?郁闷一周了。 |
|
板凳#
发布于:2009-07-20 20:34
ainycao 你好,请问你是怎样配置才可以拨号上网的呢?谢谢
|
|
地板#
发布于:2009-04-22 13:53
已经拨号成功了!
不过只能上一会网,之后modem会返回no carrier,就再上不去网了 很奇怪的问题,有达人碰到过没有啊? |
|
地下室#
发布于:2009-03-31 11:44
没有人回答么?
|
|
5楼#
发布于:2009-02-27 15:49
回 19楼(qlb211999) 的帖子
你好,请问你怎么搞定的,我也现在也是这种情况,串口波特率设置的115200,无硬件流控,3根线:TX,RX,地,拨号连接里没有添加任何AT命令,拨号时显示:“this port is not available,another program may be using it”,请各位帮忙解决一下!注册表我是这样设置的: [HKEY_LOCAL_MACHINE\ExtModems\Serial2-Modem] "Port"="COM1:" "DeviceType"=dword:1 "FriendlyName"="unimodem.dll,#9001" [HKEY_LOCAL_MACHINE\ExtModems\Serial2-Modem\Init] [HKEY_LOCAL_MACHINE\ExtModems\Serial2-Modem\Settings] |
|
6楼#
发布于:2008-10-09 06:07
关键是WINCE下不能加AT
就是下面这句:AT+CGDCONT=1,"IP","CMNET" (winxp上) 应该写成这样:+CGDCONT=1,"IP","CMNET" (wince上) |
|
7楼#
发布于:2008-05-16 09:57
搞定了。用三线的接线方式拨号成功了,安全设置里应保留默认选项,否则显示“已连接的设备”,一段时间后会弹出“与远程计算机的连接断开,请重拨”的错误。硬件流控选“无”
加硬件流控的拨号一定要注意接线方式。我最后是修改了驱动的,大家应该不会遇到跟我一样的问题 谢谢大家关注 |
|
8楼#
发布于:2008-05-07 11:12
希望继续关注
|
|
9楼#
发布于:2008-05-07 11:11
显示“device connected”后,串口打印line event 如下:
haha pass WaitForSingleObject Line Event, it:1 Event A7EF0442, 23 haha pass WaitForSingleObject Line Event, it:1 Event A7EF0442, 23 haha pass WaitForSingleObject Line Event, it:1 Event A7EF0442, 23 haha pass WaitForSingleObject Line Event, it:1 Event A7EF0442, 23 haha pass WaitForSingleObject Line Event, it:1 Event A7EF0442, 23 haha pass WaitForSingleObject Line Event, it:1 Event A7EF0442, 23 DoPutBytes wait for CritSec 38f54. DoPutBytes got CritSec 38f54. TxRead = 0, TxLength = 37, TxBytesAvail = 37. About to copy 37 bytes +ReadModemStat 0 bytes actually copied. DoPutBytes released CritSec: 38f54. haha pass WaitForSingleObject Line Event, it:1 Event A7EF0442, 23 haha pass WaitForSingleObject Line Event, it:1 Event A7EF0442, 23 haha pass WaitForSingleObject Line Event, it:1 Event A7EF0442, 23 haha pass WaitForSingleObject Line Event, it:1 Event A7EF0442, 23 haha pass WaitForSingleObject Line Event, it:1 Event A7EF0442, 23 haha pass WaitForSingleObject Line Event, it:1 Event A7EF0442, 23 DoPutBytes wait for CritSec 38f54. DoPutBytes got CritSec 38f54. TxRead = 0, TxLength = 37, TxBytesAvail = 37. About to copy 37 bytes +ReadModemStat 0 bytes actually copied. DoPutBytes released CritSec: 38f54. 这个估计就是版主说的通讯问题吧,microsun这个如何跟踪呢? |
|
10楼#
发布于:2008-05-06 17:37
CE默认的拨号连接记录中串口波特率为19200,相对于17201的数据传输速度来说都慢,更何况是GPRS。要设置串口的波特率为最大值115200,可行的办法有两个,一个是放弃RAS,调用TAPI函数实现拨号上网,TAPI函数中有几个函数例如带界面的lineConfigDialogEdit和无界面的lineDevSpecific 都可以设置波特率;另一个方法要简单的多,在CE下先用CE自带的"拨号连接"程序建立一个拨号记录,在建立过程中可以设置波特率,这个拨号记录的数据被保存到注册表中。如果自己开发拨号程序,那么只要在拨号前到注册表中找到拨号记录就可以了。通过这种方法就可以设置波特率了。
这段话说的就是说拨号连接里设置的是串口的波特率,那么调制解调器的呢?标准的是不是就是19200? |
|
11楼#
发布于:2008-05-06 14:46
还有一个问题请教
pc机下安装调制解调器的时候有选择19200的调制解调器,或115200的调制解调器或是其他的值,但是WinCE自带的标准的调制解调器的波特率是多少呢?是不是就是在建立拨号网络里我们设置的端口波特率 |
|
12楼#
发布于:2008-05-06 09:28
感谢版主回复
“而设备能连接但网络不能连接也大多是驱动不正常. 当做到CONNECT字符以后,就显示设备已经连接了, 之后会有PP的初始化,PPP初始化以后才能显示已经连接. 如果通信不正常,就会断掉,这些都可以通过查驱动中过往的数据去解决.” 这个给我指了个方向。很感激!你说查驱动的过往数据说的是串口的驱动的数据吧,后台是开了些串口的打印信息,显示“Device Connected”后,后台驱动有“line interrupt”的中断,我具体再看下再来请教哈 |
|
13楼#
发布于:2008-05-06 09:07
谢谢cookiy_lei的回复
1.gprs模块是标准的9线,我们只采用了RXD、TXD、GND、RTS、CTS五根线,其余的没接 2.你说的用三线拨号我也在pc机上试过了,是不行的,这个已经注意到了 3.附加命令里确实不能加AT,这个也已经注意到了 再次谢谢 |
|
14楼#
发布于:2008-05-01 17:57
没有载波信号应该是没有注册到网络
|
|
|
15楼#
发布于:2008-05-01 17:18
对不住大家了,最近没来看.
1.我几年前调通过个东西,这么做肯定是可行的. 2.cookiy_lei说的是对的,附加命令不需要AT. 3.不用看RAS的代码,在你串口的驱动中打些信息,这些问题就很好解决了. port不能打开可能的原因有: 1)端口确实已经被占用,得修改注册表,使其不要被别的程序打开. 2)最可能是串口驱动不正常,因为打开端口时做一些初始化, 可以在MDD中打些信息,看一下上层发了什么命令,驱动给了什么返回值,问题就很容易解决了. 而设备能连接但网络不能连接也大多是驱动不正常. 当做到CONNECT字符以后,就显示设备已经连接了, 之后会有PP的初始化,PPP初始化以后才能显示已经连接. 如果通信不正常,就会断掉,这些都可以通过查驱动中过往的数据去解决. |
|
|
16楼#
发布于:2008-04-30 15:42
楼主哪里去了,现在改动了注册表,加大了等待时间,波特率改为9600,现在出现了跟楼主同样
的情况,也是显示拨号到“*99***1#”后很快显示“device connected”,但不能上网,一分多以后,就显示“与远程计算机连接断开,请检查波特率设置并重播” 请做过的指点方向 ![]() |
|
17楼#
发布于:2008-04-30 15:05
几个东西不要混在一起了
1、确定一下你跟gprs 模块间的物理连接,是标准的modem 9针还是标准serial 3线? 2、如果是用的3线通信,我试了一下,在WinXP下也不能正常拨号的,现象为拨号后,过一会儿会提示没有载波信号,然后在PC端把RTS/CTS短路,再试就可以了 3、microsun提供的命令是标准的AT命令,AT命令都是AT开头的,WinCE里面发AT命令可以设置自动加上AT,所以设置参数时不要再加AT了 4、WinCE RAS的代码流程我也在看,一起学习吧 |
|
18楼#
发布于:2008-04-28 15:51
波特率设为9600就不报“this port is not available,another program may be using it
”这个信息了,首先显示拨号“*99***1#”,然后一段时间后弹出“无载波信号” |
|
19楼#
发布于:2008-04-28 10:02
后台打印信息:
AUTORAS:: Dialer notifies: [1] [Dialer Start] RASCS_Disconnected: Ecode=633 Posting WM_NETCONNECT(FALSE) message, ErrorCode = 633(0x279) AUTORAS:: Dialer notifies: [2] [Dialer Terminate] |
|
上一页
下一页