我是靠谱客的博主 贤惠服饰,最近开发中收集的这篇文章主要介绍一个嵌入式平台的无线通信模块管理框架RIL(Radio Interface Layer),觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

    关注、星标公众号,直达精彩内容

cf511286e6e52432de5ecca39eb9c587.png

来源:魔罗

RIL(Radio Interface Layer)

简介

RIL是一款专门为嵌入式平台开发的无线通信模组(GSM/GPRS/CatM1/NB-Iot)管理软件。

它与其它大型框架(例如Android RIL、Wince RIL)不同的是,它被设计成应用于资源受限物联网终端设备(单片机+无线模组的方案),并提供物联网通信所需的基本功能,包含网络注册、连接管理、短信收发及Socket通信。

目前已支持EC21、BG96、 HL8518等模组,相关的应用也在持续更新中。

基本特性

  • 包含网络注册、连接、短信收发及Socket通信管理等基本功能。

  • 模组驱动使用插件化方式管理,同一个系统中能够挂载适配多个模组,并能够动态选择模组驱动程序。

  • 通过简单的修改就能够适用于不同的RTOS平台。

  • 内置多种情况下的异常处理机制,保证模组稳定运行。

  • 内置常用组件,如带断点续传功能的HTTP文件下载、TFTP传输、MQTT等。

系统要求

为了使RIL能够正常运行,目标系统必须满足以下要求:

  • ROM 资源:至少 13.5K Bytes(取决于挂载的模组个数及使用的组件)

  • RAM 资源:至少 1.2K Bytes(取决于socket创建数量)

  • RTOS及堆栈: RIL需要运行在两个任务中,每个任务的堆栈至少 256 Bytes

  • 编译器:由于RIL使用了一些C99的特性(柔性数组、内联),所以编译器需要开启对C99的支持。对于IAR,它默认是打开的,而Keil MDK需要手动增加编译选项(--c99 --gnu) 。

软件架构

871bcc9349132cc7dc69b2937a04d53e.png
软件架构图

开发指南

#include "ril.h"
//....
//创建RIL任务

ril_init(&adt, &cfg);     //初始化RIL

ril_use_device("EC21");   //选择模组型号

ril_open();               //打开设备

ril_netconn(true);        //启动网络连接
//...

更多详细的使用说明,请参考:

http://moluo-tech.gitee.io/ril/#/

来源:https://gitee.com/moluo-tech/ril

版权声明:本文来源网络,免费传达知识,版权归原作者所有。如涉及作品版权问题,请联系我进行删除。

‧‧‧‧‧‧‧‧‧‧‧‧‧‧‧‧  END  ‧‧‧‧‧‧‧‧‧‧‧‧‧‧‧

关注我的微信公众号,回复“加群”按规则加入技术交流群。
点击“阅读原文”查看更多分享,欢迎点分享、收藏、点赞、在看。

最后

以上就是贤惠服饰为你收集整理的一个嵌入式平台的无线通信模块管理框架RIL(Radio Interface Layer)的全部内容,希望文章能够帮你解决一个嵌入式平台的无线通信模块管理框架RIL(Radio Interface Layer)所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(33)

评论列表共有 0 条评论

立即
投稿
返回
顶部