【发布时间】:2014-04-01 06:00:22
【问题描述】:
我在 Windows 机器上编写了一个 D-Link GSM 调制解调器来发送和接收 SMS,我使用 Hyperterminal 进行测试。
在 Windows 中,连接管理器启动 COMx 端口,调制解调器使用一个未列出的 COMx 端口,我可以通过该端口发送 SMS,并通过列出的 NMEA 端口接收传入的 SMS,如 +CMTI:“ME”、11 或 RING 之类的呼叫+剪辑:XXXXXXXXXXXX
我成功地解释了该消息并根据我在 Windows 中的要求对其进行了编程。在 linux(Fedora) 中尝试相同的操作时,我看到调制解调器将 /dev/ttyUSB0 和 /dev/ttyUSB1 初始化为两个新识别的设备。我使用 minicom 来设置设备端口并将 AT 命令传送到相同的端口。
在这两个设备(/dev/ttyUSB0 和 /dev/ttyUSB1)中,每当我期待新的 SMS 时,我都没有收到像 +CMTI 指示这样的未经请求的 AT 结果代码。仅供参考,我已经根据手册和其他几种组合设置了 CNMI 设置。
奇怪的是,当我打电话时我能看到 RING 而不是 +CLIP:callerinfo>。同样,我没有得到 ++PSBEARER: XX, Y 或 +CMTI: "ME", XX
唯一的替代解决方案是定期轮询 UNREAD 消息,这通常是一个糟糕的设计。请告诉我,如果我在配置方面做错了什么,除了这些,我是否应该更改其他一些东西?
【问题讨论】:
标签: linux serial-port 3g modem at-command