CN116931975A - 智能安全帽的升级方法、装置和智能安全帽 - Google Patents
智能安全帽的升级方法、装置和智能安全帽 Download PDFInfo
- Publication number
- CN116931975A CN116931975A CN202210324205.XA CN202210324205A CN116931975A CN 116931975 A CN116931975 A CN 116931975A CN 202210324205 A CN202210324205 A CN 202210324205A CN 116931975 A CN116931975 A CN 116931975A
- Authority
- CN
- China
- Prior art keywords
- firmware
- upgrading
- upgrade
- safety helmet
- storage device
- 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.)
- Pending
Links
- 238000000034 method Methods 0.000 title claims abstract description 61
- 230000015654 memory Effects 0.000 claims abstract description 21
- 238000005192 partition Methods 0.000 claims description 36
- 238000012795 verification Methods 0.000 claims description 21
- 238000004891 communication Methods 0.000 claims description 19
- 238000004590 computer program Methods 0.000 claims description 11
- 238000001514 detection method Methods 0.000 claims description 7
- 238000010586 diagram Methods 0.000 description 10
- 230000006870 function Effects 0.000 description 7
- 230000001960 triggered effect Effects 0.000 description 6
- 230000005540 biological transmission Effects 0.000 description 3
- 238000010276 construction Methods 0.000 description 3
- 230000002159 abnormal effect Effects 0.000 description 1
- 230000006399 behavior Effects 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 230000001680 brushing effect Effects 0.000 description 1
- 230000001413 cellular effect Effects 0.000 description 1
- 238000013500 data storage Methods 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 238000009434 installation Methods 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 238000012545 processing Methods 0.000 description 1
- 238000011084 recovery Methods 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
- 239000002699 waste material Substances 0.000 description 1
Classifications
-
- 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/66—Updates of program code stored in read-only memory [ROM]
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F13/00—Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F13/38—Information transfer, e.g. on bus
- G06F13/382—Information transfer, e.g. on bus using universal interface adapter
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/70—Software maintenance or management
- G06F8/71—Version control; Configuration management
Abstract
本申请实施例提供一种智能安全帽的升级方法、装置和智能安全帽,所述智能安全帽包括主控芯片和外置存储装置,所述升级方法应用于主控芯片,包括:触发升级操作后,通过当前连接的升级通道获取升级固件并存储于所述外置存储装置中;在满足固件升级条件时,将所述升级固件烧录至主控芯片中;在烧录操作完成后,检测本次固件升级是否成功;在升级失败时,根据所述外置存储装置中的固件备份将主控芯片中的运行程序恢复至升级前的固件版本。该方法实现了升级方式的多样化及提升了升级的稳定性,尤其可适用于采用一些内存较小的低端主控芯片的安全帽。
Description
技术领域
本申请涉及安全帽技术领域,尤其涉及一种智能安全帽的升级方法、装置和智能安全帽。
背景技术
为了减少工程施工过程中因为施工位置、工种专业度、是否触发安规等问题造成的施工事故,市面上出现了大量的智能安全帽。由于智能安全帽的使用环境往往较为恶劣,且使用环境也不尽相同。虽然大多数智能安全帽都具备升级功能,但在实际使用过程中,此功能较为脆弱。例如,大多数设备在出厂后只支持单一的升级方式,导致在很多实际运用场景中无法正常实现升级;不仅如此,特别是使用蓝牙芯片、MCU等低成本芯片作为智能安全帽的主控芯片时,若固件大小超过芯片ROM的存储容量的一半之后,同样会出现无法升级的问题,导致用户视设备升级为一种比较危险的行为,若操作不当容易造成整台设备的损坏等。
发明内容
有鉴于此,为解决上述问题中的至少一种,本申请实施例提供一种智能安全帽的升级方法、装置和智能安全帽。
第一方面,本申请实施例提供一种智能安全帽的升级方法,所述智能安全帽包括主控芯片和外置存储装置,所述升级方法应用于主控芯片,包括:
触发升级操作后,通过当前连接的升级通道获取升级固件并存储于所述外置存储装置中;
在满足固件升级条件时,将所述升级固件烧录至所述主控芯片中;
在烧录操作完成后,检测本次固件升级是否成功;
在升级失败时,根据所述外置存储装置中的固件备份将所述主控芯片中的运行程序恢复至升级前的固件版本。
在一些实施例中,所述升级通道包括本地升级通道和空中升级通道,所述本地升级包括通过上位机和升级工具升级;所述通过当前连接的升级通道获取升级固件并存储于所述外置存储装置中,包括:
若检测到连接所述升级工具时,通过所述升级工具扫描上位机中是否存在与所述智能安全帽连接成功的接口设备;
在存在的情况下,通过成功连接的接口设备从所述上位机中读取所述升级固件数据包并缓存于所述外置存储装置中。
在一些实施例中,所述接口设备包括ADB设备、USB设备或串口设备,所述ADB设备、所述USB设备和所述串口设备的优先级依次降低;在扫描过程中,所述方法还包括:
按照优先级由高到低的顺序依次扫描空间的设备并尝试握手连接;
若成功连接到一个ADB设备,则停止扫描,否则继续对所述USB设备进行扫描;
在未连接到一个USB设备时,继续对所有的串口设备依次进行扫描;
若轮询完所有接口设备仍未成功连接,则再次循环扫描,直至成功连接到一个接口设备时停止。
在一些实施例中,所述智能安全帽还包括与所述主控芯片连接的外部通讯接口,所述方法还包括:
若检测到所述外部通讯接口连接直插式存储设备,则在确定所述直插式存储设备中存储有所述升级固件的数据包文件后,直接执行对所述固件升级条件的检测。
在一些实施例中,所述升级通道包括本地升级通道和空中升级通道,所述空中升级通道包括通过云端下载升级和/或通过近距离无线通信下载升级,所述通过当前连接的升级通道获取升级固件并存储于所述外置存储装置中,包括:
若通过网络连接到云端服务器,则从所述云端服务器中下载所述升级固件数据包并缓存于所述外置存储装置中;
若通过近距离无线通信连接到指定应用终端,则通过通用属性协议接收所述指定应用终端发送的所述升级固件数据包并缓存于所述外置存储装置中。
在一些实施例中,所述外置存储装置预先划分有多个存储分区,其中包括用于备份所述主控芯片当前运行固件的第一分区和用于缓存待升级固件的第二分区;所述触发升级操作后,还包括:
若检测到连接的设备不为含存储有所述升级固件的直插式存储设备,则确认所述外置存储装置中的所述第一分区的地址,并根据所述第一分区的地址获得所述第二分区的地址以及本次固件升级数据包的最大体积限制;
在确定待获取的所述升级固件的大小满足所述最大体积限制时,允许数据包下载操作以获取所述升级固件。
在一些实施例中,所述将所述升级固件烧录至所述主控芯片中,包括:
将所述升级固件转移至所述主控芯片中存储运行程序的内置存储中;
所述检测本次固件升级是否成功,包括:
对所述内置存储中的固件进行数据包完整性验证;
在完整性验证通过后,启动运行固件;
若运行正常时,则设置升级标志位为升级验证成功,若运行失败,则重启所述智能安全帽,以执行所述恢复至升级前的固件版本的操作。
第二方面,本申请实施例还提供一种智能安全帽的升级装置,所述智能安全帽包括主控芯片和外置存储装置,所述升级装置包括:
固件获取模块,用于触发升级操作后,通过当前连接的升级通道获取升级固件并存储于所述外置存储装置中;
固件升级模块,用于在满足固件升级条件时,将所述升级固件烧录至所述主控芯片中;
升级检测模块,用于在烧录操作完成后,检测本次固件升级是否成功;
固件回退模块,用于在升级失败时,根据所述外置存储装置中的固件备份将所述主控芯片中的运行程序恢复至升级前的固件版本。
第三方面,本申请实施例还提供一种智能安全帽,所述智能安全帽包括控制器和存储器,所述存储器存储有计算机程序,所述控制器用于执行所述计算机程序以实施上述的智能安全帽的升级方法。
第四方面,本申请实施例还提供一种可读存储介质,其存储有计算机程序,所述计算机程序在控制器上执行时,实施上述的智能安全帽的升级方法。
本申请的实施例具有如下有益效果:
本申请实施例的智能安全帽的升级方法应用于智能安全帽,该智能安全帽包括主控芯片和外置存储装置,所述升级方法包括:触发升级操作后,通过当前连接的升级通道获取升级固件并存储于所述外置存储装置中;在满足固件升级条件时,将所述升级固件烧录至主控芯片中;在烧录操作完成后,检测本次固件升级是否成功;在升级失败时,根据所述外置存储装置中的固件备份将主控芯片中的运行程序恢复至升级前的固件版本。该方法通过将设备主控芯片与低成本的外置存储芯片配合,并利用出厂时配置的硬件来实现多升级通道设计,实现了升级方式的多样化及提升了升级的稳定性,尤其可适用于采用一些内存较小的低端主控芯片的安全帽。
附图说明
为了更清楚地说明本申请实施例的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,应当理解,以下附图仅示出了本申请的某些实施例,因此不应被看作是对范围的限定,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他相关的附图。
图1示出了本申请实施例的智能安全帽的结构示意图;
图2示出了本申请实施例的智能安全帽的升级方法的第一流程图;
图3示出了本申请实施例的智能安全帽的升级方法的应用架构图;
图4示出了本申请实施例的智能安全帽的升级方法的扫描上位机设备的流程图;
图5示出了本申请实施例的智能安全帽的升级方法的第二流程图;
图6示出了本申请实施例的外置存储装置的一种分区示意图;
图7示出了本申请实施例的智能安全帽的升级方法的固件升级检测的流程图;
图8示出了本申请实施例的智能安全帽的升级装置的结构示意图。
具体实施方式
下面将结合本申请实施例中附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。
通常在此处附图中描述和示出的本申请实施例的组件可以以各种不同的配置来布置和设计。因此,以下对在附图中提供的本申请的实施例的详细描述并非旨在限制要求保护的本申请的范围,而是仅仅表示本申请的选定实施例。基于本申请的实施例,本领域技术人员在没有做出创造性劳动的前提下所获得的所有其他实施例,都属于本申请保护的范围。
在下文中,可在本申请的各种实施例中使用的术语“包括”、“具有”及其同源词仅意在表示特定特征、数字、步骤、操作、元件、组件或前述项的组合,并且不应被理解为首先排除一个或更多个其它特征、数字、步骤、操作、元件、组件或前述项的组合的存在或增加一个或更多个特征、数字、步骤、操作、元件、组件或前述项的组合的可能性。
此外,术语“第一”、“第二”、“第三”等仅用于区分描述,而不能理解为指示或暗示相对重要性。
除非另有限定,否则在这里使用的所有术语(包括技术术语和科学术语)具有与本申请的各种实施例所属领域普通技术人员通常理解的含义相同的含义。所述术语(诸如在一般使用的词典中限定的术语)将被解释为具有与在相关技术领域中的语境含义相同的含义并且将不被解释为具有理想化的含义或过于正式的含义,除非在本申请的各种实施例中被清楚地限定。
请参照图1,为本申请实施例的智能安全帽的一种结构示意图。示范性地,智能安全帽包括处理器11、存储器12和通讯接口13等,其中,通讯接口13主要用于实现智能安全帽与外界设备的通讯,存储器12存储有相应的计算机程序,处理器11用于执行该计算机程序以实施本申请实施例中的智能安全帽的升级方法,以实现安全可靠的固件升级操作。
其中,处理器11作为智能安全帽的主控芯片,可以是一种具有信号处理能力和数据存储能力(有时也称内存或内置Flash)的集成电路芯片,例如,可以是内存较小的普通MCU,也可以是蓝牙MCU或低端的片上系统(SoC)芯片等,当然也可以是内存更大的MCU等,这里不作限定。可以理解,对于包含采用较为低端芯片作为主控的智能安全帽,同样可以适用本申请实施例的升级方法。
存储器12可包括上述的内置存储和外置存储装置(也称外置Flash),其中,该外置存储装置主要用于存储升级固件数据包以及运行固件备份等。例如,该外置存储装置可包括但不限于是,随机存取存储器(Random Access Memory,RAM),只读存储器(Read OnlyMemory,ROM),可编程只读存储器(Programmable Read-Only Memory,PROM),可擦除只读存储器(Erasable Programmable Read-Only Memory,EPROM),电可擦除只读存储器(Electric Erasable Programmable Read-Only Memory,EEPROM)等。
值得注意的是,本申请实施例的外置存储装置在该智能安全帽的设置方式可以是固定设置,尤其还可以通过数据通讯接口进行可插拔设置,如可插拔的SD卡或TF卡等。
通讯接口13可包括但不限于包括,USB接口、UART接口、串口等,通过这些硬件接口可以实现与如计算机等上位机或如U盘等直插式存储设备等的连接,进而实现两者之间的数据传输。
基于上述结构的智能安全帽,本申请实施例提出一种智能安全帽的升级方法,用于在不同的场景下实现智能安全帽的安全可靠地升级。
如图2所示,示范性地,智能安全帽的升级方法包括步骤S110~S140:
S110,触发升级操作后,通过当前连接的升级通道获取升级固件并存储于外置存储装置中。
示范性地,当安全帽设备重启或重新上电过程中,可触发强制升级检测。若检测到满足强制升级条件,则将启动升级相关操作。反之,若不满足,则正常启动系统。在系统启动后,安全帽设备处于工作状态中,可通过状态机检测是否有接收到升级任务,若有则触发升级程序。例如,当安全帽设备检测到有连接到相应升级工具时,会被触发升级操作。
其中,升级通道是指智能安全帽获取升级固件时的数据传输通道,不同的升级通道对应于不同的升级方式。在一种实施方式中,上述的升级通道可划分为两大类,分别是本地升级通道和空中升级通道,其中,空中升级主要指通过无线方式进行数据包传输,而本地升级通道主要采用有线方式进行数据包读取。例如,本地升级通道方式可包括通过上位机(又称PC)和对应的升级工具进行直连式升级,具体地,如图3所示,可通过安全帽自带的USB或UART等硬件接口与上位机进行直连,并从上位机中的本地存储中获取到待升级固件的数据包,然后将其缓存到外置存储装置中。
进一步可选地,本地升级通道还可以包括,通过直接连接存储有升级固件的直插式存储设备,如U盘等进行直连式升级。值得注意的是,若连接的是U盘等直插式存储设备,则在确定该直插式存储设备中存储有升级固件的数据包文件(即update.fw)后,可直接执行对后续的固件升级条件的检测等操作,而无须再将升级数据包再缓存到外置存储装置中,这样可以提高升级效率。
以上述的PC端直连式升级方式为例,若智能安全帽的主控芯片检测到连接有PC端升级工具时,将通过该升级工具扫描上位机中是否存在与智能安全帽连接成功的接口设备。然后在存在的情况下,通过成功连接的接口设备从上位机中读取升级固件数据包,并将其缓存到外置存储装置中。
其中,上述的接口设备可包括但不限于包括,ADB(Android Debug Bridge,调试桥)设备、USB(Universal Serial Bus,通用串行总线)设备和串口设备等中的一种或多种。
作为一种可选方案,如图4所示,在上述扫描过程中,该方法还包括:
S210,按照优先级由高到低的顺序依次扫描空间的设备并尝试握手连接。其中,ADB设备、USB设备和串口设备的优先级依次降低。例如,在扫描到可用的设备时,可尝试请求握手,若握手成功,则表示成功连接到该设备,并停止扫描操作;否则扫描下一设备,直至成功连接为止。在检测到完成连接后,进行后续的固件升级数据包的读取及缓存操作。
S220,若成功连接到一个ADB设备,则停止扫描,否则继续对USB设备进行扫描。可选地,在检测ADB设备时,将只检测第一个被连接的ADB,并尝试握手。若连接成功,则继续操作,否则直接检测USB设备。
S230,在未连接到一个USB设备时,继续对所有的串口设备依次进行扫描。
S240,若轮询完所有接口设备仍未成功连接,则再次循环扫描,直至成功连接到一个接口设备时停止。于是,在成功连接到上位机中的设备后,则可从中读取到升级数据包以进行固件升级。
在一种实施方式中,上述的空中升级通道可包括通过云端下载升级和/或通过近距离无线通信下载升级。例如,该近距离无线通信可包括但不限于为蓝牙、近场通信(NFC)、射频(RFID)等无线方式。如图3所示,若智能安全帽通过蜂窝网络(如3G、4G等)或其他网络(如Wifi等)连接到云端服务器,则可从云端服务器中下载所需的升级固件数据包并缓存到外置存储装置中。又例如,若通过近距离无线通信连接到指定的应用终端,如安装有升级应用APP的手机等,则可通过通用属性协议(即GATT协议)接收该应用终端发送的升级固件数据包并将其缓存于外置存储装置中。
值得注意的是,外置存储装置主要用于存放两组固件包,在下载与缓存该升级固件时,还可以先计算待获取的升级固件的数据包是否满足其分配的缓存分区的容量限制,以防止出现分配的缓存分区不够而导致下载数据包失败或数据包缺失等。
例如,在一种实施方式中,上述的外置存储装置可预先划分有多个存储分区,其中包括用于备份该主控芯片当前运行固件的第一分区和用于缓存待升级固件的第二分区,当然还可以包括用于存储其他数据的缓存分区,这里不作限定。于是,如图5所示,若检测到连接的设备不为直插式存储设备,则触发升级操作后,该方法还包括步骤S150~S160:
S150,确认该外置存储装置中的第一分区的地址,并根据该第一分区的地址获得第二分区的地址以及本次固件升级数据包的最大体积限制。
S160,在确定待获取的升级固件的大小满足该最大体积限制时,允许数据包下载操作以获取所需的升级固件。
例如,如图6所示,以一个4M的FLash为例,其中,当前运行的固件的第一分区用于存储OTA包A(包括信息和数据),在得到该第一分区的分区地址0x37FFF后,则可以得到本次升级数据包OTA包B(包括信息和数据)的分区的最大体积限制为4K,最大体积显示为220K。于是,根据由上位机等终端报告的升级数据包的体积等信息,则可以确定是否满足最大体积限制,并在满足时,进行下一步下载与缓存操作,否则升级失败。
此外,作为一种优选的方案,可将智能安全帽在升级过程中的各种状态进行可视化显示及操作,以降低使用难度。具体地,可对上述的PC端升级工具或应用终端中的升级软件应用进行升级状态的可视化设计及操作等。
可以理解,本实施例基于该智能安全帽原来的硬件接口和网络通讯模块配置,通过设置多种不同的升级通道以实现多种升级方式的兼容,相比现有的智能安全帽只能采用单一的升级方式而言,可以大大提高升级的可靠性等。
S120,在满足固件升级条件时,将升级固件烧录至主控芯片中。
其中,上述的固件升级条件主要用于确定获取到的升级固件是否满足数据包完整性要求,以防止将数据缺失的升级包进行烧录而浪费时间。
在一种实施方式中,可将主控芯片的内置Flash可预先划分为多个分区,比如包括应用分区(即APP分区)和引导分区(即BOOT分区)等,其中,BOOT用于分析和刷写内置Flash,以实现设备升级;而APP用于刷写外部Flash用以固件下载与准确性校验等。示范性地,在触发APP分区升级时,安全帽设备将启动BOOT,由BOOT将缓存在外置存储装置中的该升级固件转移至设备主控芯片中用于存储运行程序的内置Flash中以及进行烧录验证。
S130,在烧录操作完成后,检测本次固件升级是否成功。
例如,在一种实施方式中,如图7所示,在检测本次固件升级是否成功时,可包括以下子步骤S131~S134:
S131,对上述内置存储中的固件进行数据包完整性验证。
在烧录结束后,还需要对程序运行分区的固件数据进行完整性验证,其验证过程与上述的对下载后的固件验证的过程相同,这里不作重复描述。若验证通过,则执行子步骤S132。反之,若验证不通过,可重新进行一次或预设次数的烧录操作,以提高升级过程的容错能力,避免因一些偶然的原因导致烧录失败而直接提前恢复至原来的固件版本。进一步可选地,为了防止一直停留在烧录过程,在尝试一次或若干次后仍出现错误,则系统将直接执行步骤S140。
其中,系统中将预先设置一个全局的且掉电不失的升级标志位,该升级标志位用于通过不同的取值设置来代表不同的升级状态。例如,在完整性验证操作后,将该升级标志位设置为“程序运行状态验证”,以用于启动“运行固件”。进而,在新的固件运行正常时,则可将该升级标志位设置为“升级验证成功”,代表当前固件升级完成且可运行;反之,设置为“升级验证失败”,用于提示升级失败等。
S132,在完整性验证通过后,启动运行固件。
若该固件能够运行正常,则执行子步骤S133,否则执行子步骤S134。
S133,若运行正常时,则设置升级标志位为升级验证成功。
S134,若运行失败,则重启智能安全帽,以便执行恢复至升级前的固件版本的操作,即执行步骤S140。
S140,在升级失败时,根据外置存储装置中的固件备份将主控芯片中的运行程序恢复至升级前的固件版本。
其中,主控芯片中正在运行的固件通常在触发升级操作前会备份到外置存储装置中,以便在升级过程中出现烧录失败或新固件运行失败等情况下,进行设备重启并由BOOT将APP分区恢复成升级前的状态。可以理解,通过外置Flash备份并进行固件回退操作,尤其是对于一些低成本的可编程控制器作为主控的安全帽,可以使得在升级失败后仍能够正常运行之前的固件,从而避免出现在升级失败后设备运行异常,无法自恢复而导致整台设备的故障等问题。
本申请实施例的智能安全帽的升级方法通过从对应的升级通道中获取升级固件,在得到升级固件后先将其暂存在外置的低成本存储器中,然后进行固件验证、固件烧录及再升级是否成功等一系列升级过程,即通过设备主控芯片与低成本的外置存储芯片配合实现系统升级逻辑,使得该方法同样可以适用于一些低端的主控芯片的安全帽设备;而且,其利用设备在出厂时配备的通讯模组或总线接口可以从连接的网页前端、PC端、应用终端或U盘等读取到升级数据包,可以在不增加额外的硬件成本的情况下,实现多升级通道兼容,增加了升级方式的多样化等;此外,若是在本次升级不成功时,自动将固件倒退到原始版本,以保证设备的正常使用等。
基于上述实施例的方法,本实施例提出一种智能安全帽的升级装置,其中,该智能安全帽包括主控芯片和外置存储装置,如图8所示,示范性地,该智能安全帽的升级装置100包括:
固件获取模块110,用于触发升级操作后,通过当前连接的升级通道获取升级固件并存储于所述外置存储装置中。
固件升级模块120,用于在满足固件升级条件时,将所述升级固件烧录至所述主控芯片中。
升级检测模块130,用于在烧录操作完成后,检测本次固件升级是否成功。
固件回退模块140,用于在升级失败时,根据所述外置存储装置中的固件备份将所述主控芯片中的运行程序恢复至升级前的固件版本。
可以理解,本实施例中的升级装置对应于上述实施例的升级方法,上述实施例中的方法可选项同样适用于本实施例,故在此不再重复描述。
本申请还提出一种智能安全帽的升级系统,示范性地,该智能安全帽的升级系统包括智能安全帽和相应的升级工具,其中,智能安全帽用于通过该升级工具来从对应的终端中获取升级固件。例如,该升级工具可以是与上位机端连接的串口/USB等相应接口的升级工具,还可以是具有升级应用的应用终端,如手机、平板等,通过该应用终端可以获得升级固件等。
本申请还提供了一种可读存储介质,用于储存上述智能安全帽中使用的所述计算机程序。
在本申请所提供的几个实施例中,应该理解到,所揭露的装置和方法,也可以通过其它的方式实现。以上所描述的装置实施例仅仅是示意性的,例如,附图中的流程图和结构图显示了根据本申请的多个实施例的装置、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段或代码的一部分,所述模块、程序段或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在作为替换的实现方式中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个连续的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,结构图和/或流程图中的每个方框、以及结构图和/或流程图中的方框的组合,可以用执行规定的功能或动作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。
另外,在本申请各个实施例中的各功能模块或单元可以集成在一起形成一个独立的部分,也可以是各个模块单独存在,也可以两个或更多个模块集成形成一个独立的部分。
所述功能如果以软件功能模块的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是智能手机、个人计算机、服务器、或者网络设备等)执行本申请各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。
以上所述,仅为本申请的具体实施方式,但本申请的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本申请揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本申请的保护范围之内。
Claims (10)
1.一种智能安全帽的升级方法,其特征在于,所述智能安全帽包括主控芯片和外置存储装置,所述升级方法应用于主控芯片,包括:
触发升级操作后,通过当前连接的升级通道获取升级固件并存储于所述外置存储装置中;
在满足固件升级条件时,将所述升级固件烧录至所述主控芯片中;
在烧录操作完成后,检测本次固件升级是否成功;
在升级失败时,根据所述外置存储装置中的固件备份将所述主控芯片中的运行程序恢复至升级前的固件版本。
2.根据权利要求1所述的智能安全帽的升级方法,其特征在于,所述升级通道包括本地升级通道和空中升级通道,所述本地升级包括通过上位机和升级工具升级;所述通过当前连接的升级通道获取升级固件并存储于所述外置存储装置中,包括:
若检测到连接所述升级工具时,通过所述升级工具扫描上位机中是否存在与所述智能安全帽连接成功的接口设备;
在存在的情况下,通过成功连接的接口设备从所述上位机中读取所述升级固件数据包并缓存于所述外置存储装置中。
3.根据权利要求2所述的智能安全帽的升级方法,其特征在于,所述接口设备包括ADB设备、USB设备或串口设备,所述ADB设备、所述USB设备和所述串口设备的优先级依次降低;在扫描过程中,所述方法还包括:
按照优先级由高到低的顺序依次扫描空间的设备并尝试握手连接;
若成功连接到一个ADB设备,则停止扫描,否则继续对所述USB设备进行扫描;
在未连接到一个USB设备时,继续对所有的串口设备依次进行扫描;
若轮询完所有接口设备仍未成功连接,则再次循环扫描,直至成功连接到一个接口设备时停止。
4.根据权利要求2所述的智能安全帽的升级方法,其特征在于,所述智能安全帽还包括与所述主控芯片连接的外部通讯接口,所述方法还包括:
若检测到所述外部通讯接口连接直插式存储设备,则在确定所述直插式存储设备中存储有所述升级固件的数据包文件后,直接执行对所述固件升级条件的检测。
5.根据权利要求1所述的智能安全帽的升级方法,其特征在于,所述升级通道包括本地升级通道和空中升级通道,所述空中升级通道包括通过云端下载升级和/或通过近距离无线通信下载升级,所述通过当前连接的升级通道获取升级固件并存储于所述外置存储装置中,包括:
若通过网络连接到云端服务器,则从所述云端服务器中下载所述升级固件数据包并缓存于所述外置存储装置中;
若通过近距离无线通信连接到指定应用终端,则通过通用属性协议接收所述指定应用终端发送的所述升级固件数据包并缓存于所述外置存储装置中。
6.根据权利要求1所述的智能安全帽的升级方法,其特征在于,所述外置存储装置预先划分有多个存储分区,其中包括用于备份所述主控芯片当前运行固件的第一分区和用于缓存待升级固件的第二分区;所述触发升级操作后,还包括:
若检测到连接的设备不为含存储有所述升级固件的直插式存储设备,则确认所述外置存储装置中的所述第一分区的地址,并根据所述第一分区的地址获得所述第二分区的地址以及本次固件升级数据包的最大体积限制;
在确定待获取的所述升级固件的大小满足所述最大体积限制时,允许数据包下载操作以获取所述升级固件。
7.根据权利要求1所述的智能安全帽的升级方法,其特征在于,所述将所述升级固件烧录至所述主控芯片中,包括:
将所述升级固件转移至所述主控芯片中存储运行程序的内置存储中;
所述检测本次固件升级是否成功,包括:
对所述内置存储中的固件进行数据包完整性验证;
在完整性验证通过后,启动运行固件;
若运行正常时,则设置升级标志位为升级验证成功,若运行失败,则重启所述智能安全帽,以执行所述恢复至升级前的固件版本的操作。
8.一种智能安全帽的升级装置,其特征在于,所述智能安全帽包括主控芯片和外置存储装置,所述升级装置包括:
固件获取模块,用于触发升级操作后,通过当前连接的升级通道获取升级固件并存储于所述外置存储装置中;
固件升级模块,用于在满足固件升级条件时,将所述升级固件烧录至所述主控芯片中;
升级检测模块,用于在烧录操作完成后,检测本次固件升级是否成功;
固件回退模块,用于在升级失败时,根据所述外置存储装置中的固件备份将所述主控芯片中的运行程序恢复至升级前的固件版本。
9.一种智能安全帽,其特征在于,所述智能安全帽包括控制器和存储器,所述存储器存储有计算机程序,所述控制器用于执行所述计算机程序以实施权利要求1-7中任一项所述的智能安全帽的升级方法。
10.一种可读存储介质,其特征在于,其存储有计算机程序,所述计算机程序在控制器上执行时,实施根据权利要求1-7中任一项所述的智能安全帽的升级方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210324205.XA CN116931975A (zh) | 2022-03-29 | 2022-03-29 | 智能安全帽的升级方法、装置和智能安全帽 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210324205.XA CN116931975A (zh) | 2022-03-29 | 2022-03-29 | 智能安全帽的升级方法、装置和智能安全帽 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN116931975A true CN116931975A (zh) | 2023-10-24 |
Family
ID=88377631
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202210324205.XA Pending CN116931975A (zh) | 2022-03-29 | 2022-03-29 | 智能安全帽的升级方法、装置和智能安全帽 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN116931975A (zh) |
-
2022
- 2022-03-29 CN CN202210324205.XA patent/CN116931975A/zh active Pending
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN107809324B (zh) | 一种车载自动诊断系统设备及其升级方法 | |
CN106020875B (zh) | 嵌入式终端的固件更新管理方法和装置 | |
CN109032632B (zh) | 一种fota升级方法、无线通信终端及存储介质 | |
US8255621B2 (en) | Multiprocessor system and portable terminal using the same | |
CN110083374B (zh) | 一种升级回滚方法、系统及终端设备 | |
CN102646043B (zh) | 移动终端软件升级方法、升级装置及移动终端 | |
CN107908417B (zh) | 固件升级方法及电子设备 | |
CN111078471B (zh) | 显示设备的系统故障恢复方法、设备及计算机存储介质 | |
CN114911500A (zh) | 终端升级方法、终端及系统 | |
CN103092720A (zh) | 用于车载终端的核心处理装置以及恢复方法 | |
CN108345464A (zh) | 一种安卓系统的启动方法及安卓车机 | |
EP2685374B1 (en) | Wireless network access terminal and running method thereof | |
CN110716735A (zh) | 系统升级方法及装置、智能终端、计算机可读存储介质 | |
CN109002305B (zh) | 一种设备程序的更新方法及其系统 | |
CN104809013A (zh) | 一种嵌入式系统启动方法和装置 | |
EP2664988A1 (en) | Method, device and system for installing terminal software | |
CN112416411A (zh) | 升级方法及装置、设备端、服务器、计算机可读介质 | |
CN111538515A (zh) | 一种电能表程序的升级方法、装置和设备 | |
CN103235703B (zh) | 预置资源存储方法和装置 | |
CN112181455B (zh) | 微控制器的在线升级方法、微控制器及存储介质 | |
CN106095474A (zh) | 用于更新运输工具中的软件的方法和装置 | |
CN116931975A (zh) | 智能安全帽的升级方法、装置和智能安全帽 | |
CN111522571A (zh) | 设备升级方法、装置、终端设备及存储介质 | |
CN104699514A (zh) | 遥控器端系统的更新方法和装置 | |
CN111176693B (zh) | 一种数字电视系统的升级方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication |