购买
下载掌阅APP,畅读海量书库
立即打开
畅读海量书库
扫码下载掌阅APP

3.3 金葫芦IoT-GEC开发套件基本描述

物联网是软/硬件综合体,没有终端(UE)硬件,物联网的开发一定是纸上谈兵 。为了能够实现“照葫芦画瓢”这个核心理念,首先要设计好“葫芦”,为此设计了金葫芦IoT-GEC开发套件。该套件不同于一般评估系统,它根据软件工程的基本原则设计了各类的标准模板(“葫芦”),为“照葫芦画瓢”打下坚实基础,该套件由文档、硬件、软件三部分组成。

3.3.1 金葫芦IoT-GEC开发套件设计思想

为了完整、清晰地体现应用架构,以及与本书配套,我们基于应用架构的核心思路设计了一个开发套件,其硬件部分包括标准金葫芦IoT-GEC、接口底座、编程器、连接线等,这些内容不是一般厂家的“评估板”“学习板”,我们给它起了个中文名字“金葫芦”,英文名叫“Auhulu”,目的就是可以让读者“照葫芦画瓢”。GEC的英文全称为General Embedded Computer,即 通用嵌入式计算机 ,第11章将详细阐述其基本概念。

金葫芦IoT-GEC开发套件的 关键特点在于完全从实际产品可用的角度设计终端(UE)板 ,一般“评估板”“学习板”仅为学习而用,并不能应用于实际产品。该套件的软件部分给出了各组成要素的较为规范的模板,且注重文档撰写。同时,根据多年我们使用诸多评估板的经验教训,在设计时尽可能地考虑周全,方便开发者。设计思想及基本特点主要有: 立即检验 NB-IoT 的通信状况、透明理解 NB-IoT 的通信流程、实现复杂问题简单化、兼顾物联网应用系统的完整性、考虑组件的可增加性及开发环境的多样性、考虑“照葫芦画瓢”的可操作性

(1) 立即检验NB-IoT的通信状况 。针对一般评估板难以立即检验的缺点,在出厂时,该套件的终端(UE)内部MCU中的Flash驻留了初始模板程序,该程序可立即上电运行,可以完全满足立即检验的需求,可显示基站搜索过程、信号强度、芯片温度、通信过程等信息,由此可确定开发套件硬件的完好性以及检测地的基站状况。

(2) 透明理解NB-IoT的通信流程 。针对一般评估系统只提供NB-IoT通信的AT指令,且不同通信模组 AT 指令不同的状况,该开发套件把硬件、软件及文档作为一个整体来对待。为此,首先打通了 NB-IoT 通信流程。为了使开发者可以不需借助其他工具打通通信流程,设计了云服务器转发软件CSFS,并时刻运行在具有固定IP地址云服务器上,为打通 NB-IoT 通信流程提供数据转发服务。基于此场景,提供了终端(UE)收发功能、用户服务器US侦听功能的初始模板工程源代码及文档,以便读者可以透明理解NB-IoT的通信流程。

(3) 实现复杂问题简单化 。针对在一般评估系统上学习 NB-IoT 应用开发时具有知识颗粒度小及碎片化情况,本开发套件根据嵌入式软件工程的基本原则设计了各种类型的底层驱动构件及高层类,可供开发者调用,实现复杂问题简单化。例如,针对终端(UE)的通信编程,把NB-IoT通信封装成UECom构件,使得应用层设计者可以不必掌握TCP/IP、UDP等网络协议,避开复杂的通信问题,直接调用UECom构件的对外接口函数就可以完整地实现 NB-IoT 通信。与之相对应,针对人机交互系统(HCI)的通信编程,把 NB-IoT通信封装成HCICom类,供开发者直接使用。同时给出了底层及高层软件模板与测试样例。这些工作,把复杂问题封装成构件、类,使得应用开发者可以专注于应用层面的设计开发。屏蔽了MCU的型号与内部细节,其目的是不需要每个项目开发一个“小计算机”,而是已经有一个“小计算机”,应用级设计基于此而展开,可以有效降低技术难度、减少工作量、提高设计效率与稳定性。

(4) 兼顾物联网应用系统的完整性 。针对一般评估系统只注重提供硬件评估板以及极少的底层软件参考,本开发套件注重物联网应用系统的完整性,从完整知识体系角度来进行 NB-IoT 应用开发。物联网的本质是将物体信息接入互联网,移动互联网是互联网的重要表现形式。因此,物联网应用系统包含终端用户程序、云服务器上的数据侦听程序、数据存入数据库的操作、Web网页程序、微信小程序、手机APP软件等,本开发套件提供这些模板,以便基于这些模板进行快速开发。

(5) 考虑组件的可增加性及开发环境的多样性 。针对一般评估系统缺少软件架构,难以提供应用分层与扩展结构的情况,本套件基于分层的NB-IoT应用架构,提供了MCU端应用构件的增加机制与制作原则,为应用扩展提供基础;在 PC 端、手机端也提供了相应的增加机制与制作原则。同时,考虑了开发环境的可移植性,以便适应开发环境的多样性。

(6) 考虑“照葫芦画瓢”的可操作性 。针对一般评估系统缺少用户开发体验性的样例,使得开发者不得不花费大量时间自我琢磨的情况,本套件不仅给出了各种标准模板(“葫芦”),还给出使用这些模板的基本步骤(即给出“照葫芦画瓢”的方法),以便进一步降低物联网开发的技术门槛,使得更多的技术人员可以从事进行物联网应用系统的开发,为实现实时计算、终端智能化、云计算、大数据分析等综合应用提供坚实基础,推动物联网应用的普及化。

3.3.2 金葫芦IoT开发套件硬件组成

金葫芦IoT-GEC开发套件(Auhulu IoT-GEC Development Kit,AIDK)的硬件部分由金葫芦IoT-GEC 、TTL-USB串口线、扩展底板、彩色LCD等部分组成,如图3-5所示。

金葫芦IoT-GEC开发套件的硬件设计目标是将MCU、通信模组、电子卡、MCU硬件最小硬件系统等形成一个整体,集中在一个 SOC 上,能够满足大部分的终端(UE)产品的设计需要。金葫芦IoT-GEC开发套件内含电子卡,在业务方面,包含一定流量费。在出厂时含有硬件检测程序(基本输入/输出系统+基本用户程序),当用户获得该芯片后,直接供电即可运行程序,实现联网通信。金葫芦IoT-GEC开发套件的软件设计目标是把硬件驱动按规范设计好并固化于 BIOS,提供静态链接库及工程模板(“葫芦”),可节省开发人员的大量时间,同时给出与人机交互系统(HCI)的工程模板级实例,为系统整体的连通提供示范。

图3-5 金葫芦IoT-GEC开发套件的硬件组成

3.3.3 金葫芦IoT-GEC开发套件的文档与软件模板

金葫芦IoT-GEC网上光盘中含有6个文件夹:01-Infor、02-Doc、03-Hard、04-Soft、05-Tool、06-Other。表3-1给出了网上光盘AHL-IoT-GEC各文件夹的内容索引。

表3-1 金葫芦IoT-GEC网上光盘主要内容

需要特别说明的是,04-Soft文件夹存放了金葫芦IoT-GEC的主要配套源程序及用户程序更新软件,包含UE和HCI文件夹。UE文件夹内含终端(UE)的参考程序User_GEC_Basic,以及用户程序更新软件AHL-UserPrgUpdate等。HCI文件夹内含HCI的侦听程序、Web网页、微信小程序、手机APP软件框架及相关软件组件。有了这些配套程序、常用软件,再加上金葫芦IoT-GEC快速开发指南,就可以帮助读者迅速了解金葫芦工程框架,增大IoT开发编程颗粒度,降低开发难度。 nNu3ZAsFKEXGKpzCDuZZ72Ggiy7SVwPj6Uev+yztYC82aOa0P7YGaYinkZ5yZzvV

点击中间区域
呼出菜单
上一章
目录
下一章
×