[发明专利]一种基于嵌入式Web的控制器固件升级方法有效
申请号: | 201910222022.5 | 申请日: | 2019-03-22 |
公开(公告)号: | CN109933353B | 公开(公告)日: | 2022-04-12 |
发明(设计)人: | 马锦宝;李志刚;孙志珑 | 申请(专利权)人: | 陕西建工安装集团(河南)有限公司 |
主分类号: | G06F8/65 | 分类号: | G06F8/65;H04L67/02 |
代理公司: | 成都弘毅天承知识产权代理有限公司 51230 | 代理人: | 李春芳 |
地址: | 450000 河南省郑州市自*** | 国省代码: | 河南;41 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 基于 嵌入式 web 控制器 升级 方法 | ||
本发明公开了一种基于嵌入式Web的控制器固件升级方法,涉及计算机技术领域,本发明包括如下步骤:S1:在控制器端编写html文件,实现Web升级界面的制定;S2:控制器在BootLoader模式下创建TCP/IP服务端A,若规定时间内接收到电脑端请求,则在BootLoader模式下通过Web方式对控制器进行固件升级,否则执行S3;S3:由BootLoader模式切换到用户程序运行模式,在用户程序运行模式下创建TCP/IP服务端B,若接收到电脑端请求,则在用户程序运行模式下通过Web方式对控制器进行固件升级,否则保持监听;S4:控制器固件升级完成后,向电脑端发送升级成功标识,否则发送升级失败标识,本发明的方法具有占用空间少,操作灵活,可靠性高的优点。
技术领域
本发明涉及计算机技术领域,更具体的是涉及一种基于嵌入式Web的控制器固件升级方法。
背景技术
现有的嵌入式产品实现Web功能,大多是通过嵌套Web服务器的方式来实现的,比如Boa、GoAhead等,然后再通过CGI规范实现固件升级功能;另一种常见的在线升级方式是在电脑端安装特定的升级工具,再通过网络协议把固件发送给嵌入式设备进行升级。
上述两种常见的固件升级方案,第一种需要在嵌入式设备移植Web服务器,其占用的空间至少需要30KB,对于低端的嵌入式产品而言,显然消耗了太多的资源;第二种虽然不需要在嵌入式设备中嵌入Web服务器,但是却需要在每一台需要升级固件的电脑上安装运行升级工具,较为繁琐。
发明内容
本发明的目的在于:为了解决现有的固件升级方法消耗过多资源、操作较为繁琐的问题,本发明提供一种基于嵌入式Web的控制器固件升级方法。
本发明为了实现上述目的具体采用以下技术方案:
一种基于嵌入式Web的控制器固件升级方法,包括如下步骤:
S1:在控制器端编写html文件,实现Web升级界面的制定;
S2:控制器在BootLoader模式下创建TCP/IP服务端A,若规定时间内接收到电脑端请求,则在BootLoader模式下通过Web方式对控制器进行固件升级,否则执行S3;
S3:由BootLoader模式切换到用户程序运行模式,在用户程序运行模式下创建TCP/IP服务端B,若接收到电脑端请求,则在用户程序运行模式下通过Web方式对控制器进行固件升级,否则保持监听;
S4:控制器固件升级完成后,向电脑端发送升级成功标识,否则发送升级失败标识。
进一步的,所述S2和S3中通过Web方式对控制器进行固件升级,包括如下步骤:
步骤一:在电脑端浏览器地址栏输入控制器IP地址和端口号,向控制器发起连接请求;
步骤二:控制器接收到电脑端连接请求后,将S1中编写好的html文件转换为一维数组发送到电脑端;
步骤三:电脑端接收到一维数组后将其还原为html格式,在浏览器还原出Web升级界面;
步骤四:通过浏览器Web升级界面对预先写入电脑端的固件升级包进行选择,加载固件升级包,发送给控制器;
步骤五:控制器接收固件升级包,根据固件升级包的数据长度,在堆栈中申请用于接收固件升级包数据的空间,并将固件升级包数据写入预先设定的应用程序地址空间中。
进一步的,所述控制器在BootLoader模式下创建TCP/IP服务端A和在用户程序运行模式下创建TCP/IP服务端B的过程是相同的,即:通过socket创建服务端通信,监听客户端(电脑端)的连接请求。
进一步的,所述步骤一中,在BootLoader模式下输入的控制器IP地址为控制器出厂默认IP地址。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于陕西建工安装集团(河南)有限公司,未经陕西建工安装集团(河南)有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201910222022.5/2.html,转载请声明来源钻瓜专利网。