【问题标题】:Sending and receiving data from a server using gsm modem using gprs使用 gprs 使用 gsm 调制解调器从服务器发送和接收数据
【发布时间】:2016-02-15 12:37:29
【问题描述】:
我正在尝试使用 gprs 进行远程监控,使用 quectel m95 和 pic 控制器。
我知道一些用于此目的的 http 命令,我们可以使用 http POST 和 GET 命令从服务器发送数据和接收数据。
现在我的应用程序是这样的,我的应用程序从服务器请求一些数据。
服务器必须使用 gprs 从 pic 控制器获取此数据。
如何从服务器向使用移远通信调制解调器接口的 pic 控制器发送请求。
我还知道,在初始化 gprs 上下文时,服务器必须跟踪分配给调制解调器的 IP 地址。
然后只有它可以向调制解调器发送请求。
我想知道这是否可行,如果可以,如何实现。
请对此有所了解。
问候
卫生巾
【问题讨论】:
标签:
http
microcontroller
gsm
pic
gprs
【解决方案1】:
移远通信 GPRS 模块(调制解调器)具有 TCP/IP 堆栈,您将其视为服务器-客户端模型中的客户端。完成某项任务所需的具体 AT 命令请参考移远参考资料,但大致流程如下:
- PIC 在调制解调器中启动 GPRS 上下文(PIC 和调制解调器之间的通信是通过 UART)。
- PIC 启动在 GPRS 上下文中打开与您的服务器的 TCP/IP 连接。 PIC 必须知道服务器的公共 IP 地址,因此请保持静态。
- 服务器接受客户端连接请求并分配一个套接字用于数据传输。
- 数据通过开放的 TCP/IP 连接从任一端发送。如果源自 PIC,则数据必须首先通过 UART 发送到调制解调器以转发到服务器。如果源自服务器上的应用程序,则数据必须放在 TCP/IP 数据包中并通过套接字定向到客户端。请注意,一旦连接打开,套接字就会绑定到客户端 - 这是您需要跟踪的内容(如果您有多个客户端)。