0

I need to create a PPP connection over a serial port between an embedded device running Windows CE 6 and a PC running Windows 7.

I've configured a dial-up modem on Windows 7 according to this: https://stackoverflow.com/a/7085259/512910

I used a terminal app on the CE device to confirm that attempting a connection sends the string "CLIENT".

I've also created a direct connection interface on the CE device, and used a terminal app to confirm that attempting a connection also sends the string "CLIENT" to the Windows 7 machine.

Unfortunately, neither side actually responds, and I'm not sure what the problem is.

What am I missing here? Is there a way to make either side listen for an incoming connection?

-------------------------------- Edit 1/12/12 ----------------------------------

I needed to add an incoming connection on the Windows 7 side. However, the connection doesn't appear to work, and times out after 90 seconds.

Here is my modem log.

01-09-2012 19:06:29.542 - Recv: CLIENT
01-09-2012 19:06:29.542 - Interpreted response: Ring
01-09-2012 19:06:29.542 - TSP Completing Async Operation(0x00010227) Status 0x00000000
01-09-2012 19:06:29.542 - TSP(0000): LINEEVENT: LINEDEVSTATE_RINGING(0x1)
01-09-2012 19:06:29.542 - TSP(0000): Answering Call
01-09-2012 19:06:29.542 - Answering the call.
01-09-2012 19:06:29.557 - Send: CLIENTSERVER
01-09-2012 19:06:29.557 - Connection established at 115200bps.
01-09-2012 19:06:29.557 - Error-control off or unknown.
01-09-2012 19:06:29.557 - Data compression off or unknown.
01-09-2012 19:06:29.557 - TSP Completing Async Operation(0x0001029e) Status 0x00000000
01-09-2012 19:06:29.557 - TSP(0000): LINEEVENT: LINECALLSTATE_CONNECTED
01-09-2012 19:06:59.572 - Read: Total: 388, Per/Sec: 12, Written: Total: 12, Per/Sec: 0
01-09-2012 19:08:30.208 - TSP(0000): Dropping Call
01-09-2012 19:08:30.208 - Hanging up the modem.
01-09-2012 19:08:30.208 - Hardware hangup by lowering DTR.
01-09-2012 19:08:30.208 - 115200,8,N,1, ctsfl=1, rtsctl=2
01-09-2012 19:08:30.208 - Initializing modem.
01-09-2012 19:08:30.208 - Waiting for a call.
01-09-2012 19:08:30.208 - TSP(0000): LINEEVENT: LINECALLSTATE_DISCONNECTED(0x1)
01-09-2012 19:08:30.208 - TSP(0000): LINEEVENT: LINECALLSTATE_IDLE
01-09-2012 19:08:30.208 - TSP Completing Async Operation(0x0001027c) Status 0x00000000
01-09-2012 19:08:30.208 - TSP(0000): Dropping Call
01-09-2012 19:08:30.208 - TSP Completing Async Operation(0x000101e3) Status 0x00000000
01-09-2012 19:08:30.208 - TSP(0000): Closing Call
4

1 回答 1

1

这是我在 2002 年创建的故障排除列表,但它应该仍然有效(#8 可能不适用,并且某些菜单可能已更改):

  1. 确保您的电缆是真正的零调制解调器。您的零调制解调器电缆也必须完全连接(CTS、RTS、DTR、DSR)。

  2. 单击 PC 上的 ActiveSync 图标,然后从文件菜单中选择连接。当您运行 REPLLOG 时,它应该主动扫描您的设备(让两个系统相互搜索的时间有时很重要)。

  3. 重置 CE 设备并从头开始按照说明进行操作。

  4. 如果 REPLLOG 在运行后几秒钟内没有连接,请点击 CANCEL 按钮并重试。

  5. 如果在告诉 ActiveSync 连接后不久出现“验证 COM 端口可用性”对话框,您可能没有连接到 CE 设备的正确端口,或者您的电缆可能有问题。

  6. 您可以通过关闭 ActiveSync 并在 19200,8N1 上运行 Hyperterminal 来测试与台式 PC 的串行连接。当您运行 REPLLOG 时,您应该看到“CLIENT”出现在 Hypter 终端窗口中,每次 CE 设备尝试连接四次。

  7. 验证您的设备是否支持 DTR,或者您已将其分流到电缆中。PC ActiveSync 应用程序查看 DTR 以确定设备是否已连接。

  8. 某些 CE 版本中的错误会减少您必须连接的机会。考虑加载在 2001 年 6 月或之后创建的、添加了 Microsoft 的 DataSync 组件的构建。

  9. 确保 ActiveSync 已启用您尝试的通信协议。例如,如果您使用零调制解调器串行电缆进行连接,请确保 ActiveSync 已启用串行通信。这些设置可通过文件 | 下的 ActiveSync 界面获得。连接设置...

于 2012-01-05T00:19:05.967 回答