PPP_DEVICE|为GSM模块提供新的连网方式
来自:
RTThread物联网操作系统 发表于:2019-10-15 18:17:04 浏览:360次
PPP (Piont to Piont Protocl) 是一种点对点传输协议,PPP 协议为传输多协议数据包提供了一个标准方法,为两个对等节点之间提供 IP 流量传输的功能,广泛使用于接入Internet 网络的场景下,例如 GSM 模块拨号上网。目前,市场上的 GSM 模块基本都是支持 AT 命令方式和 PPP 方式实现网络连接;相比于 AT 命令联网方式, PPP 协议连接方式使用更加简单,并且数据传输更加稳定,因此 RT-Thead 推出 PPP_DEVICE 软件包用于 PPP 协议拨号上网。
2. 为什么选用 PPP 方式
PPP 与 AT 都使用通用串口传输数据,下面是 AT 模式与 PPP 模式的比较:
| AT 命令方式 | PPP 方式 |
---|
差错检测 | 不支持 | 支持 |
链路检测 | 不支持 | 支持 |
流量控制 | 不支持 | 支持 |
数据压缩 | 不支持 | 支持 |
网络模式支持 | 客户端 | 客户端 / 服务器 |
BSD Socket 支持 | 支持 | 支持 |
AT 命令解析 | 较复杂 | 简单 / 较少 |
模块移植性 | 较复杂 | 简单 |
模块类型支持 | GSM / WIFI 模块 | GSM 模块 |
资源占用 | 正常 | 较大 |
3. PPP_DEVICE 软件包介绍
PPP_DEVICE 是一款为 GSM 模块实现联网功能而制作的软件包,它使 GSM 模块不再需要解析 AT 命令实现网络通讯,也可以使用 PPP 方式实现网络数据传输。
3.1 框架图
- 软件包对上依赖 lwIP 协议栈,并且已经对接 netdev 和 SAL 等网络框架,该软件包是 lwIP PPP 协议针对不同设备的移植实现;
- 软件包对下直接对接 GSM 模块,现已支持 Air720、M6312、SIM800 ;
3.2 功能特点
- PPP 协议拥有差错检测机制,可以检测数据帧的完整性并丢弃差错帧,缓解对网络资源的占用
- PPP 协议拥有链路检测机制,检测链路的正常,实时报告链路异常状态
- PPP 协议可以经过协商压缩 PPP 帧数据,缓解网络压力
- 现已经支持 Luat Air720,China Moblie M6312,SIMCOM SIM800 模块
- 后续还将支持更多 GSM 模块,例如 Quectel EC20,SIMCOM SIM7600 等
- 提供 CHAT 方式拨号入网,移植时只需少量 AT 命令配置即可完成 PPP 拨号上网
- PPP_DEVICE 实现对接了 netdev 框架,支持经常使用的 ifconfig、ping、netstat 调试功能
- 无缝兼容 RT-Thread 大部分网络功能和软件包,例如 Iperf、MQTT,HTTP,ONENET 等
4. 相关资料
- 要使用 PPP_DEVICE 软件包需要在 ENV 工具中配置,具体路径为
RT-Thread online packages
→ IoT - internet of things
→ PPP DEVICE: lwIP PPP porting for GSM modem(like sim800)
- PPP_DEVICE 软件包地址:https://github.com/RT-Thread-packages/ppp_device.git
- PPP_DEVICE 介绍文档地址:https://github.com/RT-Thread-packages/ppp_device/blob/master/README.md
- PPP_DEVICE 发布帖:https://www.rt-thread.org/qa/thread-421996-1-1.html
(以上链接请复制至外部浏览器打开)
- PPP_DEVICE 软件包交流讨论 QQ 群,群号<749347156>,欢迎加群讨论
5.致谢
感谢网友@xfan1024 的贡献及建议,在制作PPP DEVICE 时给与的帮助,提出了很多宝贵的意见,也提供了代码来一同完善PPP DEVICE 软件包。
END
你可以添加微信17775983565为好友,注明:公司+姓名,拉进 RT-Thread 官方微信交流群
RT-Thread
让物联网终端的开发变得简单、快速,芯片的价值得到最大化发挥。Apache2.0协议,可免费在商业产品中使用,不需要公布源码,无潜在商业风险。
版权声明:本文著作权归新newPPP平台所有,NewPPP小编欢迎分享本文,您的收藏是对我们的信任,newppp谢谢大家支持!