WO2017186089A1 - Procédé de mise à niveau de fichiers par un logiciel de décodeur monté dans un véhicule - Google Patents

Procédé de mise à niveau de fichiers par un logiciel de décodeur monté dans un véhicule Download PDF

Info

Publication number
WO2017186089A1
WO2017186089A1 PCT/CN2017/081799 CN2017081799W WO2017186089A1 WO 2017186089 A1 WO2017186089 A1 WO 2017186089A1 CN 2017081799 W CN2017081799 W CN 2017081799W WO 2017186089 A1 WO2017186089 A1 WO 2017186089A1
Authority
WO
WIPO (PCT)
Prior art keywords
file
upgrade
card
application
files
Prior art date
Application number
PCT/CN2017/081799
Other languages
English (en)
Chinese (zh)
Inventor
曾宪玮
Original Assignee
广州路派电子科技有限公司
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by 广州路派电子科技有限公司 filed Critical 广州路派电子科技有限公司
Publication of WO2017186089A1 publication Critical patent/WO2017186089A1/fr

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements 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/44Arrangements for executing specific programs
    • G06F9/445Program loading or initiating
    • G06F9/44505Configuring for program initiating, e.g. using registry, configuration files
    • G06F9/4451User profiles; Roaming
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements 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/44Arrangements for executing specific programs
    • G06F9/445Program loading or initiating

Definitions

  • the invention belongs to the technical field, and in particular relates to a method for upgrading a file by a vehicle decoder software.
  • the manufacturer generally uses the Bootloader to guide the application structure of the embedded software.
  • the Bootloader program is a small piece of code that is executed first in the Flash after the system power-on reset.
  • the Bootloader part Relatively independent of the application.
  • users can get the product and upgrade package.
  • the Bootloader code leaks, the illegal user updates the application part through the upgrade mode, and the entire software code of the product can be copied, which increases the potential risk of plagiarism.
  • a method for upgrading a file of a vehicle decoder software includes the following steps:
  • Step 1 Check whether the SD card is inserted; if there is an SD card inserted, update the application and SPI Flash files; if there is no SD card inserted, jump directly to the application to execute;
  • Step 2 After checking that an SD card is inserted, let the LED light be on for a certain period of time;
  • Step 3 Automatically check whether there is a file update in the SD card. If there is a file update, the file update is performed, and the LED light flashes at a rate of twice per second; if there is no file update, jump directly to the application to execute;
  • Step 4 After successfully updating a file, let the LED flash rapidly, the blinking speed is the same as the blinking speed of the LED in step 3. Then, go to step 3 and continue to update the next file until all files are updated.
  • the method further includes the step 5: when the program jumps to the application portal, finds that the application is not found or when the file update fails, the LED light flashes at a speed of two seconds.
  • Step 1 When the program starts execution, first initialize the driver of each module;
  • Step 2 Check whether the SD card is inserted. If there is an SD card inserted, perform step 3; if no SD card is inserted, skip to step 8;
  • Step 3 When the application detects that an SD card is inserted:
  • Step 4 Determine whether to obtain the file description buffer, if the acquisition is successful, then jump to step 5; if the file description buffer is not successfully obtained, jump to step 8;
  • Step 5 Obtain the number of files to be upgraded and determine whether the files to be upgraded are successful. If the files are successfully obtained, perform step 6 and upgrade the upgrade files one by one until all the files are upgraded. The application hangs automatically;
  • Step 6 Determine the upgrade type of the file in the description structure array of the file to be upgraded, according to the text
  • the upgrade type selects the upgrade mode
  • Step 7 Determine whether all upgrade files are upgraded. Step 8 is performed after the upgrade is completed. Otherwise, go back to step 5.
  • Step 8 Turn off the timer and the LED light stops flashing
  • Step 9 After the IAP is completed, release the SPI related pins before jumping to the application to prevent pin multiplexing;
  • Step 10 Determine whether the APP of the upper APP program exists. If it exists, run the upper APP; if it does not exist, the application hangs.
  • step 6 is specifically: determining an upgrade type of the file in the description structure array of the file to be upgraded, and selecting an upgrade mode according to the file upgrade type:
  • the method for upgrading the file of the vehicle decoder software provided by the invention combines the characteristics of the software structure and the protection features provided by the hardware, and uses the bvloader software to upgrade the file, which can not only load the stm32f10x boot loader, but also use the SD card (SPI interface). Update and run the application, and you can configure the /bsp/board/ file to implement the migration on different hardware boards, which can quickly upgrade the product and speed up the upgrade. At the same time, it can effectively improve the security of the program. Sexuality overcomes many potential security risks, reduces the potential risk of product plagiarism, and maximizes the protection of vendor code and intellectual property, which can meet the needs of practical applications.
  • Figure 1 is a general flow chart of the present invention
  • FIG. 2 is a flow chart of the SPI Flash update process
  • FIG. 3 is a flow chart of the Internal Flash update process
  • FIG. 4 is a flow chart showing the detailed steps of the present invention.
  • a method for upgrading a file by a vehicle decoder software includes the following steps:
  • Step 1 Check whether the SD card is inserted at startup; if there is an SD card inserted, update the application and SPI Flash files; if there is no SD card inserted, jump directly to the application to execute;
  • Step 2 After checking that an SD card is inserted, let the LED light be on for a certain period of time;
  • Step 3 Automatically check whether there is a file update in the SD card. If there is a file update, the file update is performed, and the LED light flashes at a rate of twice per second; if there is no file update, jump directly to the application to execute;
  • Step 4 After successfully updating a file, the LED light flashes rapidly, and the blinking speed is the same as the blinking speed of the LED light in step 3. Then, jump to step 3 to continue updating the next file until all files are updated.
  • Step 5 When the program jumps to the application portal, it finds that the application cannot be found or when the file update fails, the LED flashes at a speed of two seconds.
  • the method for upgrading the file of the vehicle decoder software of the present invention is implemented by a bvloader program, which includes six modules, namely a timer, an SD card control module, an LED light state, a FATFS file system, an Internal Flash update, and an SPI Flash update.
  • a timer namely a timer, an SD card control module, an LED light state, a FATFS file system, an Internal Flash update, and an SPI Flash update.
  • modules the following sections detail the timer, FATFS file system, SPIFlash update, Internal Flash update, and main logic control.
  • the bvloader application When the bvloader application needs to hang, it will first set a 2 second timer overflow time, then turn on the timer, and the LED will flash periodically when an SD card is detected.
  • the use of the FATFS file system in the present invention is one of the key points of the present invention because it is faster to use the FATFS file system to upgrade files when the product is finished. It uses the file system in the main logic control module to detect whether the SD card has an update.cfg file, analyze the update.cfg file, and use the SPIFlash update module and the InternalFlash update module.
  • FATFS is a general-purpose FAT (File Allocation Table) file system module designed for small embedded systems. FatFs is written to follow ANSIC and is completely separate from the disk I/O layer. Therefore, it is independent (not dependent) on the hardware architecture. It can be embedded in low-cost microcontrollers such as 8051, PIC, AVR, SH, Z80, H8, ARM, etc. without any modifications.
  • the FATFS file system features: FAT12, FAT16 and FAT32. Multiple volumes (physical drives with Partition). Two partitioning rules: FDISK and Super-floppy. Multiple configuration options: long filename support. Optional code pages, including DBCS (DBCS or Double Byte Char Systems) multitasking support for read-only, minimal API, buffer configuration, and more.
  • DBCS Double Byte Char Systems
  • serial peripheral interface is a common clock synchronous serial communication interface.
  • SPI Flash reads and writes Flash through the SPI port.
  • the flow of the SPI Flash update process of the present invention is shown in FIG. 2.
  • the SPI Flash upgrade method mainly uses a 32-bit checksum algorithm to determine whether the SPI FLASH read/write checksum is consistent to achieve data transfer to the upgrade file.
  • a checksum is used in the field of data processing and data communication to verify the sum of a set of data items for a destination. It refers to the accumulation of the number of transmission bits. When the transmission ends, the receiver can judge whether all the data is received according to this value. If the values match, then the transfer is complete. It is usually expressed in hexadecimal notation, and the 32-bit checksum is in the form of a 32-digit system.
  • the data to be verified is regarded as a number consisting of 4 bytes or 32 bits, and the binary inverse codes are sequentially summed;
  • the first part is regarded as a number consisting of 4K bits, and the tail is less than 4K, and the data packet is composed of 32 bits, and the binary inverse codes are sequentially summed;
  • the flow of the Internal Flash update process of the present invention is shown in FIG.
  • the Internal Flash file upgrade is mainly based on an upgrade filter function to first determine the upgrade file. It has the following three situations:
  • the size of the file read is larger than the size of the APP application, that is, the file object is too large;
  • the address of a file recorded is smaller than the address where the APP application starts, that is, the address of the object file is too small;
  • the address of the cached data is 0x20000000.
  • the internal Flash When the internal Flash reads the upgrade file data, it reads the data in a FLASH_PAGE_SIZE size. After determining whether the FLASH status is complete, the address of the program is shifted. Until the offset is to the specified position, the data is transferred.
  • Step 1 When the program starts executing, the system first initializes the drivers for each module.
  • Step 2 Check if the SD card is inserted. If there is an SD card inserted, go to step 3. If no SD card is inserted, go to step 8.
  • Step 3 When the application detects that an SD card is inserted:
  • Step 4 Determine whether to obtain the file description buffer. If the acquisition is successful, go to step 5. If the file description buffer is not successfully obtained, go to step 8.
  • Step 5 Obtain the number of files to be upgraded and determine whether the files to be upgraded are successful. If the files are successfully obtained, perform step 6 and upgrade the upgrade files one by one until all files are upgraded. If it does not succeed, the application hangs automatically.
  • Step 6 Determine the upgrade type of the file in the description structure array of the file to be upgraded, and select the upgrade mode according to the file upgrade type.
  • Step 7 Determine whether all upgrade files are upgraded. Step 8 is performed after the upgrade is complete. Otherwise, go back to step 5.
  • Step 8 Turn off the timer and the LED light stops flashing.
  • Step 9 After the IAP (IAP is the abbreviation for In-Application Programming, application programming), release the SPI related pins before jumping to the application to prevent pin multiplexing.
  • IAP is the abbreviation for In-Application Programming, application programming
  • Step 10 Determine whether the APP of the upper APP program exists. If it exists, run the upper APP; if it does not exist, the application hangs.
  • the method for upgrading the file of the vehicle decoder software provided by the invention combines the characteristics of the software structure and the hard
  • the protection features provided by the device, using the bvloader software upgrade file it can be used to boot the stm32f10x boot loader, use the SD card (SPI interface) to update and run the application, and can be implemented by configuring /bsp/board/ files Porting on different hardware boards can quickly upgrade products and speed up the upgrade; at the same time, it can effectively improve the security of the program, overcome many potential security risks, and reduce the potential risk of product plagiarism. To achieve maximum protection of vendor code and intellectual property, it can meet the needs of practical applications.

Abstract

La présente invention concerne un procédé de mise à niveau de fichiers par un logiciel de décodeur monté dans un véhicule. Le procédé comprend les étapes suivantes : étape 1 : détecter si une carte SD est insérée ; étape 2 : allumer une lampe à DEL pendant un certain temps après la détection du fait que la carte SD est insérée ; étape 3 : détecter automatiquement s'il existe un fichier à mettre à jour dans la carte SD, et si tel est le cas, réaliser la mise à jour de fichier et faire clignoter la lampe à DEL ; autrement, passer directement à l'exécution d'une application ; étape 4 : faire clignoter rapidement la lampe à DEL après la mise à jour successive d'un fichier, une vitesse de clignotement étant la même qu'une vitesse de clignotement de la lampe à DEL dans l'étape 3, puis passer à l'étape 3 pour continuer de mettre à jour le fichier suivant jusqu'à ce que tous les fichiers soient mis à jour. L'invention combine des caractéristiques d'une structure logicielle et des caractéristiques de protection de matériel, permettant ainsi de renforcer de manière efficace la sécurité d'un programme, de réduire le risque de copie de produit, d'obtenir une protection de code de vendeur et de propriété intellectuelle dans la plus large mesure, et satisfait les besoins d'application pratique.
PCT/CN2017/081799 2016-04-25 2017-04-25 Procédé de mise à niveau de fichiers par un logiciel de décodeur monté dans un véhicule WO2017186089A1 (fr)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
CN201610264315.6 2016-04-25
CN201610264315.6A CN105867985B (zh) 2016-04-25 2016-04-25 一种车载解码器软件升级文件的方法

Publications (1)

Publication Number Publication Date
WO2017186089A1 true WO2017186089A1 (fr) 2017-11-02

Family

ID=56629071

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/CN2017/081799 WO2017186089A1 (fr) 2016-04-25 2017-04-25 Procédé de mise à niveau de fichiers par un logiciel de décodeur monté dans un véhicule

Country Status (2)

Country Link
CN (1) CN105867985B (fr)
WO (1) WO2017186089A1 (fr)

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110764813A (zh) * 2019-10-31 2020-02-07 京东方科技集团股份有限公司 系统软件的升级方法及其运行方法
CN111580842A (zh) * 2020-04-16 2020-08-25 北京遥感设备研究所 一种车载毫米波雷达应用程序在线升级方法及系统
CN112799698A (zh) * 2021-01-14 2021-05-14 陕西建工安装集团(河南)有限公司 一种U-boot下基于SD卡自动升级方法
CN113127043A (zh) * 2021-03-19 2021-07-16 力高(山东)新能源技术有限公司 一种单片机APP在线升级BootLoader的方法
CN113238790A (zh) * 2021-05-28 2021-08-10 成都新易盛通信技术股份有限公司 基于sd卡和eeprom的固件程序更新方法及系统
CN114968317A (zh) * 2022-04-01 2022-08-30 北京遥测技术研究所 一种基于zynq防呆设计的程序升级方法

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105867985B (zh) * 2016-04-25 2018-12-21 广州路派电子科技有限公司 一种车载解码器软件升级文件的方法
CN112667264A (zh) * 2021-01-15 2021-04-16 广州路派电子科技有限公司 一种脱机下载软件升级的方法及系统

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6874680B1 (en) * 2000-10-17 2005-04-05 Spx Corporation Remote updating method and apparatus
CN102436388A (zh) * 2011-12-22 2012-05-02 华为技术有限公司 嵌入式系统软件升级方法和装置
CN103970480A (zh) * 2013-01-30 2014-08-06 北京金奔腾汽车科技有限公司 汽车电脑诊断仪sd卡flash刷屏
CN105867985A (zh) * 2016-04-25 2016-08-17 广州路派电子科技有限公司 一种车载解码器软件升级文件的方法

Family Cites Families (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101335577B (zh) * 2008-08-05 2010-06-23 东南大学 城市公交系统中车载设备多媒体数据的无线更新方法
CN102681857B (zh) * 2011-03-07 2016-08-31 北京博创理想科技有限公司 一种实现车载软件系统修复或升级的方法、装置
CN103135996A (zh) * 2011-11-23 2013-06-05 上海博泰悦臻网络技术服务有限公司 车载设备及其程序文件更新方法
CN102567049B (zh) * 2011-12-09 2016-06-22 惠州市德赛西威汽车电子股份有限公司 嵌入式操作系统的升级方法
CN103019797A (zh) * 2012-12-29 2013-04-03 福建三元达通讯股份有限公司 一种通过usb接口升级广告机终端固件的方法
CN103870305A (zh) * 2014-02-19 2014-06-18 江苏天宝汽车电子有限公司 一种设有usb/存储卡接口的车载音响的软件升级方法
CN105260215A (zh) * 2015-11-04 2016-01-20 福建星海通信科技有限公司 一种u盘升级车载行车记录仪终端的方法

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6874680B1 (en) * 2000-10-17 2005-04-05 Spx Corporation Remote updating method and apparatus
CN102436388A (zh) * 2011-12-22 2012-05-02 华为技术有限公司 嵌入式系统软件升级方法和装置
CN103970480A (zh) * 2013-01-30 2014-08-06 北京金奔腾汽车科技有限公司 汽车电脑诊断仪sd卡flash刷屏
CN105867985A (zh) * 2016-04-25 2016-08-17 广州路派电子科技有限公司 一种车载解码器软件升级文件的方法

Cited By (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110764813A (zh) * 2019-10-31 2020-02-07 京东方科技集团股份有限公司 系统软件的升级方法及其运行方法
CN111580842A (zh) * 2020-04-16 2020-08-25 北京遥感设备研究所 一种车载毫米波雷达应用程序在线升级方法及系统
CN112799698A (zh) * 2021-01-14 2021-05-14 陕西建工安装集团(河南)有限公司 一种U-boot下基于SD卡自动升级方法
CN113127043A (zh) * 2021-03-19 2021-07-16 力高(山东)新能源技术有限公司 一种单片机APP在线升级BootLoader的方法
CN113238790A (zh) * 2021-05-28 2021-08-10 成都新易盛通信技术股份有限公司 基于sd卡和eeprom的固件程序更新方法及系统
CN113238790B (zh) * 2021-05-28 2023-08-29 成都新易盛通信技术股份有限公司 基于sd卡和eeprom的固件程序更新方法及系统
CN114968317A (zh) * 2022-04-01 2022-08-30 北京遥测技术研究所 一种基于zynq防呆设计的程序升级方法
CN114968317B (zh) * 2022-04-01 2024-04-26 北京遥测技术研究所 一种基于zynq防呆设计的程序升级方法

Also Published As

Publication number Publication date
CN105867985B (zh) 2018-12-21
CN105867985A (zh) 2016-08-17

Similar Documents

Publication Publication Date Title
WO2017186089A1 (fr) Procédé de mise à niveau de fichiers par un logiciel de décodeur monté dans un véhicule
US9858084B2 (en) Copying of power-on reset sequencer descriptor from nonvolatile memory to random access memory
US9430250B2 (en) Bootability with multiple logical unit numbers
EP3080693B1 (fr) Dispositifs, actualisateurs, procédés de commande d'un dispositif et procédés de commande d'un actualisateur
US10042651B2 (en) Techniques to configure multi-mode storage devices in remote provisioning environments
US20090113196A1 (en) Method and systems for advanced reprogrammable boot codes and in-application programming of embedded microprocessor systems
US9052918B2 (en) Management of multiple software images with shared memory blocks
US20150227427A1 (en) Restoring from a legacy os environment to a uefi pre-boot environment
US9411605B2 (en) Device-less and system agnostic unified extensible firmware interface (UEFI) driver
WO2017058577A1 (fr) Démarrage vérifié basé sur nand
US9063816B2 (en) Method and apparatus for updating firmware on a storage device
JP2016507848A (ja) リードオンリメモリのブートコードパッチ
CN107567629B (zh) 在可信执行环境容器中的动态固件模块加载器
WO2016188037A1 (fr) Procédé, système et terminal de fiabilisation par rodage de version, et support de stockage informatique
US9459884B2 (en) Self-healing using an alternate boot partition
US10664598B1 (en) Firmware security patch deployment
US9110678B1 (en) Automated BIOS enhancements and upgrades
US8499142B1 (en) UEFI boot loader for loading non-UEFI compliant operating systems
US11836501B1 (en) System and methods for hardware-based PCIe link up based on post silicon characterization
US11099856B2 (en) Methods for uninstalling SSD (solid-state disk) cards and apparatuses using the same
KR20150072963A (ko) 다중시스템 및 이의 부팅 방법
CN100498710C (zh) 自储存装置上读取选择只读存储器程序代码的方法
US11500995B1 (en) Secure boot runtime universal filesystem
CN102902554B (zh) 一种龙芯平台的linux操作系统安装方法
CN105204896A (zh) 一种数字存储示波器的BootLoader设计方法

Legal Events

Date Code Title Description
NENP Non-entry into the national phase

Ref country code: DE

121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 17788741

Country of ref document: EP

Kind code of ref document: A1

32PN Ep: public notification in the ep bulletin as address of the adressee cannot be established

Free format text: NOTING OF LOSS OF RIGHTS PURSUANT TO RULE 112(1) EPC (EPO FORM 1205A DATED 27.03.2019)

122 Ep: pct application non-entry in european phase

Ref document number: 17788741

Country of ref document: EP

Kind code of ref document: A1