CN111881063B - 基于Flash切割多平台适配物联网模块及其控制方法 - Google Patents
基于Flash切割多平台适配物联网模块及其控制方法 Download PDFInfo
- Publication number
- CN111881063B CN111881063B CN202010740157.3A CN202010740157A CN111881063B CN 111881063 B CN111881063 B CN 111881063B CN 202010740157 A CN202010740157 A CN 202010740157A CN 111881063 B CN111881063 B CN 111881063B
- Authority
- CN
- China
- Prior art keywords
- internet
- things
- platform
- independent
- flash
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F12/00—Accessing, addressing or allocating within memory systems or architectures
- G06F12/02—Addressing or allocation; Relocation
- G06F12/0223—User address space allocation, e.g. contiguous or non contiguous base addressing
- G06F12/023—Free address space management
- G06F12/0238—Memory management in non-volatile memory, e.g. resistive RAM or ferroelectric memory
- G06F12/0246—Memory management in non-volatile memory, e.g. resistive RAM or ferroelectric memory in block erasable memory, e.g. flash memory
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/60—Software deployment
- G06F8/65—Updates
- G06F8/654—Updates using techniques specially adapted for alterable solid state memories, e.g. for EEPROM or flash memories
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/44—Arrangements for executing specific programs
- G06F9/4401—Bootstrapping
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/44—Arrangements for executing specific programs
- G06F9/445—Program loading or initiating
- G06F9/44536—Selecting among different versions
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/12—Protocols specially adapted for proprietary or special-purpose networking environments, e.g. medical networks, sensor networks, networks in vehicles or remote metering networks
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2212/00—Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
- G06F2212/10—Providing a specific technical effect
- G06F2212/1041—Resource optimization
- G06F2212/1044—Space efficiency improvement
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2212/00—Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
- G06F2212/15—Use in a specific computing environment
- G06F2212/152—Virtualized environment, e.g. logically partitioned system
Abstract
本发明公开了基于Flash切割多平台适配物联网模块及其控制方法。现有物联网模块仅能够单一物联网平台或协议方式接入的少数个物联网平台。本发明一种基于Flash切割多平台适配物联网模块,内部的flash芯片空间中且分出n个独立分区,n≥2。全部或两个以上的部分独立分区中安装有不同物联网平台的嵌入式执行文件。该物联网模块使用不同的嵌入式执行文件在相应的各个物联网平台之间进行连接和切换。本发明通过切割flash空间的方式,将多个无法提供云平台开放协议物联网平台的bin文件分别存放到多个独立分区中,从而使得物联网模块实现了不受接入方式限制的多平台连接和切换。
Description
技术领域
本发明属于物联网IOT技术领域,具体涉及一种基于Flash切割的适配物联网多平台方案处理方法。
背景技术
现有技术中,一个模组嵌入式bin仅能够适配一个物联网平台的某个型号的业务功能,针对不同的物联网平台不同的设备型号使用不同嵌入式bin。如:A空调客户有1款型号设备要上阿里物联网云,苏宁物联网云,京东云物联网平台,自有渠道云物联网平台,按照这个情况需要开发V1,V2,V3,V4的这个4个物联网平台固件,然后每个型号配套不同的模组,用于适配不同的渠道。此方案的很大弊端是多个型号要上多个物联网平台就会有很多个嵌入式固件,不同渠道的销售情况不一样,无法做好统一管理,会导致模组售卖型号多的机器货源不足,销售少的机器的模组无法补到销售多的机器型号上。导致厂家的备货压力加大,不能灵活的适配互联网销售情况,增加了企业的成本,会多出积压库存,影响物联网IOT在各个行业的推广。此外,仅能够适配单一物联网平台的物联网模块不具备通用性,用户在后续使用中无法切换到其他物联网平台,大大降低了用户体验感。目前最多能实现的是2-3加物联网平台合道一起,如苏宁云、京东云、自有渠道云合一,但是无法实现系统级别的接入,如阿里飞燕,华为等,存在缺陷和不足。
申请号为“2019113408736”的专利中记载了一种通过编写多个云协议的方式来实现多个云平台的适配。但是,编写多个云协议的方式仅在应用层进行适配,而未伸入到硬件底层,仅在被适配的物联网平台以协议方式接入时(需要平台方提供云平台开放协议)才能够实现;而市面上应用较广泛的接入方式为SDK(软件开发工具包)方式接入和物联网系统方式接入。使用SDK方式接入的物联网凭条包括华为物联网云、京东和苏宁云。使用物联网系统方式接入的物联网凭条包括华为云和阿里飞燕云。SDK方式接入和物联网系统方式接入具有不需要向物联网模块生产方提供云平台开放协议的优点。由于申请号为“2019113408736”的专利提供的技术方案必须使用云平台开放协议,故无法适配到SDK方式接入和物联网系统方式接入的物联网平台;这大大限制了其物联网模块的通用性。
因此,急需设计一种对于SDK方式接入、物联网系统方式接入和协议方式接入的物联网平台均能够适配的物联网模块和及其构建方法。
发明内容
本发明的目的在于提供一种基于Flash切割多平台适配物联网模块及其控制方法。
本发明一种基于Flash切割多平台适配物联网模块,内部的flash芯片空间中且分出n个独立分区,n≥2。全部或两个以上的部分独立分区中安装有不同物联网平台的嵌入式执行文件。该物联网模块使用不同的嵌入式执行文件在相应的各个物联网平台之间进行连接和切换。
作为优选,其中一个独立分区预留出来,用于存放和写入其余各个独立分区在升级时使用的嵌入式执行文件。
作为优选,对需要连接和切换的各个物联网平台进行分类;使用软件开发工具包或物联网系统接入的物联网平台作为独立型物联网平台;使用云平台开放协议接入的物联网平台作为兼容型物联网平台。各个独立型物联网平台对应的嵌入式执行文件分别安装在不同的独立分区;一个或多个兼容型物联网平台对应的嵌入式执行文件与任意一个独立型物联网平台对应的嵌入式执行文件共同安装在同一个独立分区中。
作为优选,所述的独立型物联网平台包括苏宁云平台、京东智联云平台、阿里云生活物联网平台和华为云平台。所述的兼容型物联网平台包括物联网设备的自有渠道物联网平台。
作为优选,各个独立分区内的嵌入式执行文件通过预设的AT指令进行切换和启动。
作为优选,所述的flash芯片空间中还切割出Boot bin分区和System Bin分区。boot bin分区用于存放系统启动的引导程序。System Bin分区用于存放指向初始化模组硬件和软件运行的参数信息。
作为优选,单个独立分区的空间大小为400K~1000K。
作为优选,所述flash芯片的规格选用4M flash。
该基于Flash切割多平台适配物联网模块的控制方法具体如下:
设定物联网模块切换到各个物联网平台的AT指令;当用户客户端向物联网模块发送目标物联网平台对应的AT指令时,物联网模块切换、执行该物联网平台对应的独立分区内的嵌入式执行文件,使得物联网模块连接到目标物联网平台。
当一个独立分区的嵌入式执行文件需要升级时,将该物联网平台升级后的嵌入式执行文件写入预留的一个空白独立分区中;之后,用新写入空白独立分区中的嵌入式执行文件替换需要升级的独立分区的嵌入式执行文件,完成升级。最后,将预留的空白独立分区中的嵌入式执行文件删除,等待下一次升级时使用。
作为优选,若被连接的物联网平台使用本地设备一机一秘钥,则先将秘钥导入到物联网平台并开放TCP/HTTPS接口,在物联网模块连接上网络后,WIFI远程请求连接到物联网平台的服务器,获取到物联网设备的秘钥,然后连接到物联网平台。
本发明具有的有益效果是:
1、本发明通过切割flash空间的方式,将多个无法提供云平台开放协议物联网平台的bin文件分别存放到多个独立分区中,从而使得物联网模块实现了不受接入方式限制的多平台连接和切换。
2、本发明将能够存放在同一个独立分区的多个物联网平台的bin文件存放在同一个独立分区中,进一步增大了物联网模块的平台兼容数量,节约了flash空间。
3、本发明通过让物联网模块同时兼容多个物联网平台,避免了厂家为不同物联网平台分别备货的情况出现,让成品设备厂商针对不同的平台有统一的模块,充分应对不同的销售渠道的不同模组需求量,可以进行模组移货,不会出现某款型号多某款型号的模组数量不足,大大降低了厂家的备货成本。
4、物联网模块使用的flash芯片规格一般在2M以上,而单个物联网平台的嵌入式执行文件的大小一般在400K左右,这造成了flash空间的浪费;本发明通过将flash空间分割为多个独立空间进行使用,实现了对flash空间的充分利用,在成本基本保持不变的情况下达到了新的技术效果。
附图说明
图1为本发明实施例1的示意框图。
具体实施方式
以下结合附图对本发明作进一步说明。
实施例1
基于Flash切割多平台适配物联网模块的构建和使用方法,具体过程如下:
步骤一、如图1所示,将物联网模块内的flash芯片的空间切割为Boot bin分区、System Bin分区和四个独立分区。boot bin分区是是格式化后软件专门为系统引导程序所预留的一个分区,用于存放系统启动的引导程序。System Bin分区用于存放指向初始化模组硬件和软件运行的参数信息。四个独立分区安装用于连接到物联网平台的嵌入式执行文件(具体为二进制的bin文件);四个独立分区分别为OTA1 Bin分区、OTA2 Bin分区、OTA3Bin分区、OTA4 Bin分区。分别规定各个独立分区的地址空间(即确定开始地址与结束地址);用引导加载程序(bootloader)切分flash地址并编译出boot bin程序。flash芯片的规格选用4M flash。
作为一种优选的技术方案,flash芯片的规格选用4M flash;
Boot Bin分区的空间大小设置为400K,地址空间为1到409600byte;
System Bin分区的空间大小设置为400K,地址空间为409601到819200;
OTA1 Bin分区的空间大小设置为800K,地址空间为819201到1638600;
OTA2 Bin分区的空间大小设置为800K,地址空间为1638601到2458000;
OTA3 Bin分区的空间大小设置为800K,地址空间为2458001到3277200;
OTA4 Bin分区的空间大小设置为800K,地址空间为3277201到4096600;
步骤二、将OTA1 Bin分区、OTA2 Bin分区、OTA3 Bin分区用于存放的嵌入式执行文件,以便通过嵌入式执行文件连接物联网平台,预留OTA4 Bin分区用于升级其他三个独立分区的嵌入式执行文件。
flash分区后的物联网模块能够连接到四个物联网平台;针对四个物联网平台分别开发嵌入式执行文件;其中三个物联网平台使用软件开发工具包(即SDK)或物联网系统接入,需要各自使用独立分区,对应的两个嵌入式执行文件分别存放到OTA1 Bin分区、OTA2Bin分区和OTA3 Bin分区;最后一个物联网平台通过云平台开放协议接入(一般仅自有渠道物联网平台能够获取云平台开放协议),能够与其他物联网平台的嵌入式执行文件共用同一个独立分区,故与第三个物联网平台的嵌入式执行文件存放到OTA3 Bin分区。
本实施例中,该四个物联网平台分别为三个电商云平台和一个自有渠道物联网平台,具体为阿里云物联网电商平台、京东物联网电商平台、苏宁云物联网电商平台、自有渠道物联网平台。自有渠道物联网平台提供云平台开放协议,与苏宁云物联网电商平台的嵌入式执行文件安装在同一个独立分区中。
步骤三、分别设定物联网模块切换到各个物联网平台的AT指令;当用户客户端通过路由器向物联网模块发送目标物联网平台对应的AT指令时,物联网模块切换、执行该物联网平台对应的独立分区内的嵌入式执行文件,使得物联网模块连接到目标物联网平台。若被连接的物联网平台需要使用本地设备一机一秘钥,则先将秘钥导入到物联网平台的服务器并开放TCP/HTTPS接口,在物联网模块连接到路由器上后,WIFI远程请求连接到物联网平台的服务器,获取到物联网设备的秘钥,然后连接到物联网平台。
由此实现了智能设备在登录不同的电商平台时,可以自动使用AT指令切换到对应的物联网平台,大大提高了物联网模块的适应能力。理论上flash越大可以适配越多的物联网平台,可以使用一个模组型号适配不同物联网平台的不同型号。
当一个独立分区的嵌入式执行文件需要升级时,将该物联网平台升级后的嵌入式执行文件写入预留的一个空白独立分区中;之后,用新写入空白独立分区中的嵌入式执行文件替换需要升级的独立分区的嵌入式执行文件,完成升级。最后,将预留的空白独立分区中的嵌入式执行文件删除,等待下一次升级时使用。
作为一种优选的技术方案,四个物联网平台的各自对应的AT指令如下:
切换到阿里物联网平台的AT指令为+++ATCMD\r\nAT+Bootloader=Alithings\r\n;
切换到京东物联网平台的AT指令为+++ATCMD\r\nAT+Bootloader=JDIoT\r\n;
切换到苏宁物联网平台的AT指令为+++ATCMD\r\nAT+Bootloader=SuningIoT\r\n;
切换到物联网模块自有渠道物联网平台的AT指令为+++ATCMD\r\nAT+Bootloader=FactoryIoT\r\n。
实施例2
本实施例与实施例1的区别在于:
步骤一中创建OTA1 Bin分区~OTA5 Bin分区。
步骤二中,构建阿里飞燕、华为、京东云、自有渠道物联网平台的bin文件,并分别存取OTA1 Bin分区~OTA4 Bin分区;OTA5 Bin分区预留,用作升级业务bin。
实施例3
本实施例与实施例1的区别在于:
步骤一中创建OTA1 Bin分区和OTA2 Bin分区。flash芯片的规格选用2M flash。OTA1Bin分区、OTA2 Bin分区的空间大小均设置为600K,各自安装一个或多个物联网平台的bin文件。
Claims (8)
1.基于Flash切割多平台适配物联网模块,其特征在于:内部的flash芯片空间中且分出n个独立分区,n≥2;全部或两个以上的部分独立分区中安装有不同物联网平台的嵌入式执行文件;该物联网模块使用不同的嵌入式执行文件在相应的各个物联网平台之间进行连接和切换;
其中一个独立分区预留出来,用于存放和写入其余各个独立分区在升级时使用的嵌入式执行文件;
对需要连接和切换的各个物联网平台进行分类;使用软件开发工具包或物联网系统接入的物联网平台作为独立型物联网平台;使用云平台开放协议接入的物联网平台作为兼容型物联网平台;各个独立型物联网平台对应的嵌入式执行文件分别安装在不同的独立分区;一个或多个兼容型物联网平台对应的嵌入式执行文件与任意一个独立型物联网平台对应的嵌入式执行文件共同安装在同一个独立分区中。
2.根据权利要求1所述的基于Flash切割多平台适配物联网模块,其特征在于:所述的独立型物联网平台包括苏宁云平台、京东智联云平台、阿里云生活物联网平台和华为云平台;所述的兼容型物联网平台包括物联网设备的自有渠道物联网平台。
3.根据权利要求1所述的基于Flash切割多平台适配物联网模块,其特征在于:各个独立分区内的嵌入式执行文件通过预设的AT指令进行切换和启动。
4.根据权利要求1所述的基于Flash切割多平台适配物联网模块,其特征在于:所述的flash芯片空间中还切割出Boot bin分区和System Bin分区;boot bin分区用于存放系统启动的引导程序;System Bin分区用于存放指向初始化模组硬件和软件运行的参数信息。
5.根据权利要求1所述的基于Flash切割多平台适配物联网模块,其特征在于:单个独立分区的空间大小为400K~1000K。
6.根据权利要求1所述的基于Flash切割多平台适配物联网模块,其特征在于:所述flash芯片的规格选用4M flash。
7.如权利要求1所述的基于Flash切割多平台适配物联网模块的控制方法,其特征在于:设定物联网模块切换到各个物联网平台的AT指令;当用户客户端向物联网模块发送目标物联网平台对应的AT指令时,物联网模块切换、执行该物联网平台对应的独立分区内的嵌入式执行文件,使得物联网模块连接到目标物联网平台;
当一个独立分区的嵌入式执行文件需要升级时,将该物联网平台升级后的嵌入式执行文件写入预留的一个空白独立分区中;之后,用新写入空白独立分区中的嵌入式执行文件替换需要升级的独立分区的嵌入式执行文件,完成升级;最后,将预留的空白独立分区中的嵌入式执行文件删除,等待下一次升级时使用。
8.根据权利要求7所述的基于Flash切割多平台适配物联网模块的控制方法,其特征在于:若被连接的物联网平台使用本地设备一机一秘钥,则先将秘钥导入到物联网平台并开放TCP/HTTPS接口,在物联网模块连接上网络后,WIFI远程请求连接到物联网平台的服务器,获取到物联网设备的秘钥,然后连接到物联网平台。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010740157.3A CN111881063B (zh) | 2020-07-28 | 2020-07-28 | 基于Flash切割多平台适配物联网模块及其控制方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010740157.3A CN111881063B (zh) | 2020-07-28 | 2020-07-28 | 基于Flash切割多平台适配物联网模块及其控制方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN111881063A CN111881063A (zh) | 2020-11-03 |
CN111881063B true CN111881063B (zh) | 2023-04-07 |
Family
ID=73201504
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010740157.3A Active CN111881063B (zh) | 2020-07-28 | 2020-07-28 | 基于Flash切割多平台适配物联网模块及其控制方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111881063B (zh) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113810486B (zh) * | 2021-09-13 | 2022-12-20 | 珠海格力电器股份有限公司 | 物联网平台对接方法、装置、电子设备及存储介质 |
Family Cites Families (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106411667B (zh) * | 2016-09-26 | 2020-05-29 | 珠海格力电器股份有限公司 | 一种基于网络芯片的智能家居多云端控制方法和系统 |
US10433129B2 (en) * | 2016-11-01 | 2019-10-01 | At&T Intellectual Property I, L.P. | Enhanced data download mechanism for power constrained internet of things devices |
CN108023952B (zh) * | 2017-12-04 | 2020-08-18 | 西安电子科技大学 | 一种基于云雾结合的模块化物联网应用快速构建平台 |
US10728340B2 (en) * | 2018-03-29 | 2020-07-28 | Servicenow, Inc. | Internet of things (IOT) platform for device configuration management and support |
CN109462844A (zh) * | 2018-10-23 | 2019-03-12 | 四川长虹电器股份有限公司 | 一种单WiFi芯片运行多平台SDK的系统和方法 |
CN109889551B (zh) * | 2019-04-16 | 2021-08-27 | 陆伟 | 一种智能硬件接入的物联网云平台的方法 |
CN110493059A (zh) * | 2019-08-28 | 2019-11-22 | 四川长虹电器股份有限公司 | 基于云端固件的多物联网平台自动加载的系统及其方法 |
CN111294241B (zh) * | 2020-02-14 | 2022-08-30 | 西安奥卡云数据科技有限公司 | 一种可配置物联网设备接入方法 |
-
2020
- 2020-07-28 CN CN202010740157.3A patent/CN111881063B/zh active Active
Also Published As
Publication number | Publication date |
---|---|
CN111881063A (zh) | 2020-11-03 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10552144B2 (en) | Method for updating firmware of devices | |
CN102081537B (zh) | 一种软件升级方法 | |
US6725288B2 (en) | System for transmitting data between a device data area and a variable data area of a memory according to a memory map based on an identifying data of a device detected | |
CN111881063B (zh) | 基于Flash切割多平台适配物联网模块及其控制方法 | |
CN111488165B (zh) | 车辆ecu通过脚本升级的方法及其系统 | |
CN101465758A (zh) | 设备管理的方法、系统及网管服务器 | |
CN106708573B (zh) | 一种用于Hadoop集群自动安装的系统及方法 | |
CN111600972A (zh) | 双栈地址的配置方法、服务器和可读存储介质 | |
CN112068896A (zh) | Dts修改的方法、装置及计算机可读存储介质 | |
CN115242752B (zh) | 电池管理系统的地址分配方法、装置、设备及介质 | |
CN103516735A (zh) | 一种网络节点升级的方法及装置 | |
CN112783646A (zh) | 有状态应用容器化部署方法及装置 | |
EP2294514A1 (en) | Methods and systems for transmitting disk images | |
CN112214413B (zh) | 一种应用程序的测试方法、装置、设备及存储介质 | |
US7284120B2 (en) | Method and system for allowing a system under test (SUT) to boot a plurality of operating systems without a need for local media | |
CN1798057A (zh) | 软件加载方法 | |
US11563598B2 (en) | Method for operating an etherCAT fieldbus system, and etherCAT fieldbus system | |
CN102780703A (zh) | 一种机顶盒信息写入系统和方法 | |
CN114740809A (zh) | 通信方法、装置、中继设备、存储介质及程序产品 | |
CN102063083B (zh) | 一种多ecu分时下载方法 | |
CN111880819B (zh) | 一种存储设备固件升级方法、系统、设备及计算机介质 | |
CN111669423B (zh) | 基于用户态协议栈的网络隔离空间的批量处理方法及系统 | |
CN103914339A (zh) | 服务器管理系统及服务器管理方法 | |
CN111459519A (zh) | 一种mcu升级方法及装置 | |
CN114675893B (zh) | 一种驱动的管理方法、装置及计算机设备 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |