CN114398066A - Software upgrading method, system and application of domain controller - Google Patents
Software upgrading method, system and application of domain controller Download PDFInfo
- Publication number
- CN114398066A CN114398066A CN202210016971.XA CN202210016971A CN114398066A CN 114398066 A CN114398066 A CN 114398066A CN 202210016971 A CN202210016971 A CN 202210016971A CN 114398066 A CN114398066 A CN 114398066A
- Authority
- CN
- China
- Prior art keywords
- program
- flash
- domain controller
- upgrading
- memory
- 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 52
- 230000008569 process Effects 0.000 claims description 22
- 238000005192 partition Methods 0.000 claims description 10
- 238000012795 verification Methods 0.000 claims description 8
- 238000004891 communication Methods 0.000 claims description 7
- 238000003745 diagnosis Methods 0.000 claims description 6
- 238000011010 flushing procedure Methods 0.000 claims description 3
- 238000012546 transfer Methods 0.000 claims description 3
- 238000004590 computer program Methods 0.000 description 13
- 238000010586 diagram Methods 0.000 description 13
- 230000006870 function Effects 0.000 description 6
- 238000012545 processing Methods 0.000 description 4
- 230000005540 biological transmission Effects 0.000 description 3
- 230000001680 brushing effect Effects 0.000 description 3
- 238000012360 testing method Methods 0.000 description 3
- 238000013524 data verification Methods 0.000 description 2
- 238000004519 manufacturing process Methods 0.000 description 2
- 102000016916 Complement C8 Human genes 0.000 description 1
- 108010028777 Complement C8 Proteins 0.000 description 1
- 230000009471 action Effects 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 210000004556 brain Anatomy 0.000 description 1
- 238000004364 calculation method Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 238000012827 research and development Methods 0.000 description 1
Images
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/654—Updates using techniques specially adapted for alterable solid state memories, e.g. for EEPROM or flash memories
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/10—Network architectures or network communication protocols for network security for controlling access to devices or network resources
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/12—Applying verification of the received information
- H04L63/123—Applying verification of the received information received data contents, e.g. message integrity
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L69/00—Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
- H04L69/26—Special purpose or proprietary protocols or architectures
Landscapes
- Engineering & Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- General Engineering & Computer Science (AREA)
- Computing Systems (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Computer Hardware Design (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Stored Programmes (AREA)
Abstract
The invention provides a software upgrading method, a system and an application of a domain controller, wherein a boot flash program is flushed into the domain controller; and after the domain controller is electrified, triggering the guide flash program, judging whether a flag bit for identifying program upgrading is set, if so, continuing to execute the guide flash program, entering a program flash stage, otherwise, exiting the guide flash program, and transferring to execute an application program. The invention determines to enter the program flashing flow or the application program flow according to whether the program upgrading mark exists, supports two modes of off-line flashing and on-line flashing, is convenient and flexible, can save the cost of software updating and improves the efficiency.
Description
Technical Field
The invention belongs to the technical field of software upgrading, and particularly relates to a domain controller software upgrading method, a domain controller software upgrading system and domain controller software upgrading application.
Background
The statements in this section merely provide background information related to the present disclosure and may not necessarily constitute prior art.
The domain controller is a core control component of the new energy automobile and is equivalent to the brain of the automobile. The domain controller comprises two programs, namely a boot flash program (Bootloader) which is responsible for the flash of the boot application program; the application program, namely the program for normal running of the vehicle, is responsible for collecting an accelerator pedal signal, a brake pedal signal and other input signals, and controlling the action of each component on the lower layer to drive the vehicle to run normally after making corresponding judgment. Under the conditions of research and development of new vehicle types, manufacturing of sample vehicles, personalized customization of customers and the like, the domain controller application program is frequently required to be modified for many times, and the downloading and upgrading efficiency of the program has very important influence on vehicle debugging and rapid delivery.
For vehicles delivered to a customer and entering a market, sometimes the problem that a test stage is not exposed due to the fact that a test environment is different from an actual application environment in road conditions and climate is caused, in addition, a more personalized operation mode can be provided for the customer in a later period according to own driving habits, the domain controller program needs to be changed in the later period under the conditions, the traditional mode is that after-sales service personnel carry out program flashing on the spot, and the mode is high in cost and low in efficiency.
Disclosure of Invention
The invention provides a domain controller software upgrading method, a domain controller software upgrading system and a domain controller software upgrading application, and the domain controller software upgrading method, the domain controller software upgrading system and the domain controller software upgrading application are used for determining whether a program upgrading mark exists or not to enter a program flashing process or an application program process, supporting two modes of off-line flashing and on-line flashing, being convenient and flexible, saving software updating cost and improving efficiency.
According to some embodiments, the invention adopts the following technical scheme:
a domain controller software upgrading method comprises the following steps:
the boot flash program is flushed into the domain controller;
and after the domain controller is electrified, triggering the guide flash program, judging whether a flag bit for identifying program upgrading is set, if so, continuing to execute the guide flash program, entering a program flash stage, otherwise, exiting the guide flash program, and transferring to execute an application program.
As an alternative embodiment, the specific process of flushing the boot flash program into the domain controller includes: the boot flash program is first flushed into the random access memory, where the boot flash program is flushed into the flash memory.
As a further limitation, when the boot flash program is flushed to the flash memory, a memory segment memory address is set in a link command file of the boot flash program to set a memory location of the boot flash program.
As a further limitation, the boot flush procedure is performed before or after the domain controller enclosure, and the domain controller is re-flushed using the serial device.
In an alternative embodiment, the flag bit is stored in a flash partition with a relatively backward address, separate from the partition in which the boot flash and application are stored.
As an alternative embodiment, the program flashing stage specifically includes:
reading a flag bit to indicate that a program upgrading request exists, quickly copying an application program stored in a flash memory to another flash memory partition by using an assembly instruction to store backup, and setting an identification bit indicating entering a flash process;
judging whether an upgrading request is a remote request or not, and entering a remote upgrading process if the upgrading request is the remote request; otherwise, entering an off-line flash process;
and after all the flash is finished, the flash program is guided to reset and clear the flag bit and the identification bit, if the flash program fails in midway, the identification bit cannot be cleared, and the backup program is automatically recovered after the bit is detected by electrifying next time.
By way of further limitation, the remote upgrade process includes: configuring a CAN channel, a baud rate, a received message ID and a mask, then communicating with a TBox, and sequentially carrying out the following stages: a pre-programming stage, which is used for completing the tasks of diagnosis session control, DTC control and communication control; in the programming stage, completing security access, program version information writing, application program subsection downloading, integrity verification and programming dependency check tasks; and in the post-programming stage, the tasks of ECU restart, diagnosis session control, communication control, DTC control and zone bit resetting are completed.
By way of further limitation, the offline flashing process includes: waiting for an instruction sent by an upper computer, selecting a serial port or CAN equipment to be used for flashing in the upper computer by a user, initializing corresponding equipment and setting functional parameters after a guide flashing program receives an equipment option instruction, receiving a program file and a check code transmitted by the upper computer, calculating the check code of the time, feeding back the check code for upper level comparison, if the check code is consistent with the check code, completing data, continuously sending a next frame, otherwise, retransmitting the frame and sending a corresponding signal to the guide flashing program, abandoning the previous frame and re-receiving the frame, and executing in a circulating way until all data are sent completely.
As an alternative embodiment, before judging whether the flag bit for identifying program upgrading is set, firstly judging whether the identification bit for indicating that the flashing process has been entered is set, if so, executing the backup operation of restoring the application program, copying the application program from the backup area to the application program storage area by using an assembly instruction, and then restarting the domain controller by using the identification bit; if not, skipping.
A software upgrade system for a domain controller, comprising:
a program flush module configured to flush a boot flush program into the domain controller;
and the program upgrading module is configured to trigger the guiding flash program after the domain controller is powered on, judge whether a flag bit for identifying program upgrading is set, if so, continue to execute the guiding flash program and enter a program flash stage, otherwise, quit the guiding flash program and transfer to execute the application program.
An electronic device comprising a memory and a processor and computer instructions stored on the memory and executed on the processor, the computer instructions, when executed by the processor, performing the steps of the above method.
A computer readable storage medium storing computer instructions which, when executed by a processor, perform the steps of the above method.
The new energy automobile carries out software upgrading by using the method, or comprises the system, the electronic equipment or the computer readable storage medium.
Compared with the prior art, the invention has the beneficial effects that:
the invention can select the corresponding software upgrading mode according to the equipment type owned by the user, the scene requirement of the user on the scene, and the like, so that personnel are not limited by a single upgrading way any more, and the fault tolerance is improved.
The invention adopts the CAN flash mode and the optimized serial port upgrading mode, improves the efficiency, has the upgrading time of about two minutes each time, and has simple operation and easy operation.
The OTA remote flashing mode based on the UDS protocol can avoid the limitation of personnel to the site, and enhances the reliability and the integrity of data through multiple key authentication and data verification. The backup flash partition ensures that the original program can be recovered even if the downloading fails, and the condition that the vehicle cannot be used is avoided.
In order to make the aforementioned and other objects, features and advantages of the present invention comprehensible, preferred embodiments accompanied with figures are described in detail below.
Drawings
The accompanying drawings, which are incorporated in and constitute a part of this specification, are included to provide a further understanding of the invention, and are incorporated in and constitute a part of this specification, illustrate exemplary embodiments of the invention and together with the description serve to explain the invention and not to limit the invention.
FIG. 1 is a schematic diagram of a flash address space of a single chip microcomputer;
FIG. 2 is a general flow diagram of a program upgrade;
FIG. 3 is a schematic diagram of a UDS protocol-based OTA remote online write flow;
fig. 4 is an example of an application program flash file mot file;
FIG. 5 is a schematic diagram of a host computer program product main interface;
fig. 6 is a schematic diagram of an application program sub-interface sent by a serial port of an upper computer.
Detailed Description
The invention is further described with reference to the following figures and examples.
It is to be understood that the following detailed description is exemplary and is intended to provide further explanation of the invention as claimed. Unless defined otherwise, all technical and scientific terms used herein have the same meaning as commonly understood by one of ordinary skill in the art to which this invention belongs.
It is noted that the terminology used herein is for the purpose of describing particular embodiments only and is not intended to be limiting of exemplary embodiments according to the invention. As used herein, the singular forms "a", "an" and "the" are intended to include the plural forms as well, and it should be understood that when the terms "comprises" and/or "comprising" are used in this specification, they specify the presence of stated features, steps, operations, devices, components, and/or combinations thereof, unless the context clearly indicates otherwise.
The invention provides a software upgrading method of a domain controller, which utilizes a Bootloader bootstrap program, stores the Bootloader bootstrap program in a header Sector partition of a domain controller singlechip flash, operates in the initial stage after the controller is electrified, and determines to enter a program flashing flow or an application program flow according to whether a program upgrading mark exists or not. The off-line flash and the on-line flash are supported, the off-line flash comprises a serial port flash and a CAN flash, which mode depends on the equipment owned by the personnel, the off-line flash downloading speed is high, the convenience and the flexibility are realized, and the off-line flash downloading device is suitable for scenes such as vehicle field debugging and controller rack testing.
The online writing mode adopts an OTA remote writing mode based on the UDS protocol, data are transmitted according to the UDS protocol through the CAN message, and the reliability and the integrity of the data are ensured through multiple times of safety certification and data verification in the process.
In the off-line brushing stage, through the cooperation of an upper computer program and a Bootloader bootstrap program, brushing equipment CAN be selected through a UI interface, and the device has the functions of receiving and sending data, configuring parameters such as a CAN channel and a baud rate, displaying CAN messages in real time, displaying brushing progress and the like.
Specifically, taking an exemplary embodiment as an example for description, a software upgrading method for a domain controller includes the following steps:
firstly, because reading and writing operations cannot be simultaneously performed in the same area in Flash, the Bootloader cannot be directly flushed into the Flash, and a Bootloader program needs to be flushed into an RAM first, and the Bootloader is flushed into the Flash by running the program in the RAM. Setting Memory segment Memory addresses in a link command file of a Bootloader program can complete setting of program storage positions.
As shown in fig. 1, a Bootloader program is stored in a 16KB address range of Boot Sector 0, and since the Bootloader program is located at the forefront end of the flash memory, the Bootloader program can be operated first after being powered on. An application program is stored in Boot Sector 1, and a backup of the application program is stored in Boot Sector 4 (in the embodiment, the address of the single chip microcomputer of enginephe MPC 5639 5634M is taken as an example for explanation, and the specific range may be different according to different models of single chip microcomputers of different manufacturers, but the method is general).
And secondly, using a JTag debugger or other simulator equipment to flush the Bootloader program into the domain controller according to the first step before the domain controller enclosure.
And step three, after the enclosure of the domain controller, if the Bootloader program has errors due to other reasons, the Bootloader program can be refreshed into the domain controller by using the serial device.
Step four, as shown in fig. 2, after the domain controller is powered on to work, firstly, operating a Bootloader program, judging whether the flag bit indicating that the refresh flow has entered is 1, if so, executing the backup operation of restoring the application program, copying the application program from the backup area to the application program storage area by using an assembly instruction, then clearing the flag bit indicating that the refresh flow has entered, and restarting the domain controller; if 0, skip. Then, the Bootloader program detects whether the data of the first 4 byte addresses of the application program storage area is 0x015a015A (here, an MPC5634M single chip microcomputer is taken as an example, the 4 byte fixed data is specified by a single chip microcomputer manufacturer, and may be distinguished according to different models of different manufacturers, and a single chip microcomputer data manual is taken as a standard), if the 4 byte data is detected, the application program is determined to be valid, and the next step of judgment is performed in step five. If the 4 bytes of data cannot be detected, the application program is judged to be invalid, and the seven-step program flashing stage is directly entered.
Step five, judging whether a flag bit of a program upgrading request exists or not by the Bootloader program, and entering step six to judge the next step if the flag bit is 1; if the flag bit is 0, no program upgrading request is indicated, and the program is directly transferred to an application program entrance to be executed.
Step six, judging whether a flag bit of a remote upgrading request exists or not by the Bootloader program, and entering an online flashing process in step seven if the flag bit is 1; and if the flag bit is 0, entering an offline flashing process of the step eight.
Step seven, entering a remote upgrading process, firstly configuring a CAN channel, a baud rate, a received message, a mask code and the like, then communicating with the TBox according to a UDS diagnostic protocol, and sequentially carrying out the following stages: a pre-programming stage, which is used for completing the tasks of diagnosis session control, DTC control and communication control; in the programming stage, completing security access, program version information writing, application program subsection downloading, integrity verification and programming dependency check tasks; and in the post-programming stage, the tasks of resetting the flag bit of ECU restart, diagnosis session control, communication control, DTC control and program upgrading are completed.
As shown in fig. 3, the following steps are specifically performed in sequence: pre-program phase-main-post-program phase.
A pre-programming stage:
using 10 services, an extended session mode is entered.
Using 85 and 28 services, DTC and non-diagnostic messages are turned off, muting other CAN devices on the network.
A main programming stage:
using the 10 service, switch to the programming session mode.
And (3) carrying out safety access verification by using 27 services, wherein a Mask and a key calculation method are formulated by the whole automobile factory, and the following operations are carried out after the verification is passed.
Writing related information such as the version number, the date and the like of the program by using the 2E service, comparing the information with the current program version, and if the information is the same as the current program version, exiting the program upgrading; if the current flash is different from the Sector partition backup, if the current flash is internally provided with the application program, the current application program is copied to other Sector partition backups by using the assembly instruction, and if no application program exists, the step of backing up is skipped.
And erasing the flash memory by using the 31 service.
And circularly using 34-36-36- … -36-37 service segment transmission program data and writing the data into a corresponding flash memory address, carrying out verification once every transmission line of S3 recorded data, continuously transmitting the next frame if the verification is passed, and retransmitting the data of the frame if the verification is not passed.
After all the transmission is finished, the CRC32 integrity check is carried out on the transmitted program data by using the 31 service, and the information such as a polynomial and an initial value of the check is formulated by the whole automobile factory.
And (3) post-programming stage:
the use of 10 services switches to an extended session mode.
DTC and non-diagnostic communication control is resumed using 85 and 28 services.
And restarting the controller.
Step eight, entering an offline flashing flow, enabling a Bootloader program to wait for an instruction sent by an upper computer, enabling a user to select a serial port or a CAN device to flash in the upper computer, enabling the Bootloader to initialize corresponding devices after receiving device options and setting function parameters such as baud rate and the like, then reading a specified mot program file by the upper computer, carrying out corresponding operation according to different data types marked by the beginning of the S used by each line as shown in FIG. 4, wherein S0 shows that the line is not sent at the beginning of the line, sending out data of the S3 type according to 8 bytes each time, judging whether the addresses of the line data and the next line data are continuous if the remaining bytes of the line are less than 8, and taking the next line data to complement 8 bytes and sending the data if the remaining bytes are continuous; if the address is not continuous, the discontinuous segment is set to 0 xFF.
Calculating the check code of the data sent this time according to the following method: adding all bytes sent this time, taking lower 8 bits, subtracting the lower 8 bits of data by 0xFF to obtain a result which is a check code, after the Bootloader program receives the data of this time, calculating the check code according to the method and replying the check code to the upper computer program, calculating the check code according to the method by the upper computer program and comparing the check code with the data replied by the Bootloader, if the result is consistent, the data sent this time is complete and has not been lost, continuously sending the next frame, otherwise, retransmitting the frame and sending a corresponding signal to the Bootloader program, and discarding the previous frame by the Bootloader and receiving again; circularly executing, namely entering the ninth step after all data are sent;
and step nine, after all the flash is finished, resetting and clearing the 'program upgrading' zone bit and the 'flash process entering' zone bit by the Bootloader program, and restarting the ECU.
Step ten, the main interface of the upper computer program product is as shown in fig. 5, and the type of the program to be written and the tool to be used can be selected in the main menu of "flash". Taking a serial port flashing application program as an example, after clicking the serial port flashing application program, popping up a sub interface shown in fig. 6, automatically selecting a COM port where a serial port is located by a pull-down option box, and manually selecting by a user, after clicking the serial port to open, clicking the application program, namely entering a sending process, reading and analyzing mot program files by an upper computer, wherein as shown in fig. 4, the first byte of each line is a data type, S0 is a start line, S3 is a data line, S7 is an end line, and S0 and S7 are not sent, and only the S3 data line is sent. The second byte of each row is the data length of the row except the first two bytes and the last byte, and the upper computer judges that the row needs to be sent for several times and whether the sent length is correct or not according to the bytes. The last byte is the check code.
The sub-interface displays the current sent data frame number, the number of data frames replied by the Bootloader, the address of the current sent data line and other information in real time, and the text box below displays the data received and sent by the serial port. The upper computer program product can be matched with a domain controller Bootloader program to perform offline program flash.
The invention also provides the following product examples:
a software upgrade system for a domain controller, comprising:
a program flush module configured to flush a boot flush program into the domain controller;
and the program upgrading module is configured to trigger the guiding flash program after the domain controller is powered on, judge whether a flag bit for identifying program upgrading is set, if so, continue to execute the guiding flash program and enter a program flash stage, otherwise, quit the guiding flash program and transfer to execute the application program.
An electronic device comprising a memory and a processor and computer instructions stored on the memory and executed on the processor, the computer instructions, when executed by the processor, performing the steps of the above method.
A computer readable storage medium storing computer instructions which, when executed by a processor, perform the steps of the above method.
The new energy automobile carries out software upgrading by using the method, or comprises the system, the electronic equipment or the computer readable storage medium.
As will be appreciated by one skilled in the art, embodiments of the present invention may be provided as a method, system, or computer program product. Accordingly, the present invention may take the form of an entirely hardware embodiment, an entirely software embodiment or an embodiment combining software and hardware aspects. Furthermore, the present invention may take the form of a computer program product embodied on one or more computer-usable storage media (including, but not limited to, disk storage, CD-ROM, optical storage, and the like) having computer-usable program code embodied therein.
The present invention is described with reference to flowchart illustrations and/or block diagrams of methods, apparatus (systems), and computer program products according to embodiments of the invention. It will be understood that each flow and/or block of the flow diagrams and/or block diagrams, and combinations of flows and/or blocks in the flow diagrams and/or block diagrams, can be implemented by computer program instructions. These computer program instructions may be provided to a processor of a general purpose computer, special purpose computer, embedded processor, or other programmable data processing apparatus to produce a machine, such that the instructions, which execute via the processor of the computer or other programmable data processing apparatus, create means for implementing the functions specified in the flowchart flow or flows and/or block diagram block or blocks.
These computer program instructions may also be stored in a computer-readable memory that can direct a computer or other programmable data processing apparatus to function in a particular manner, such that the instructions stored in the computer-readable memory produce an article of manufacture including instruction means which implement the function specified in the flowchart flow or flows and/or block diagram block or blocks.
These computer program instructions may also be loaded onto a computer or other programmable data processing apparatus to cause a series of operational steps to be performed on the computer or other programmable apparatus to produce a computer implemented process such that the instructions which execute on the computer or other programmable apparatus provide steps for implementing the functions specified in the flowchart flow or flows and/or block diagram block or blocks.
Although the embodiments of the present invention have been described with reference to the accompanying drawings, it is not intended to limit the scope of the present invention, and it should be understood by those skilled in the art that various modifications and variations can be made without inventive efforts by those skilled in the art based on the technical solution of the present invention.
Claims (10)
1. A domain controller software upgrading method is characterized by comprising the following steps:
the boot flash program is flushed into the domain controller;
and after the domain controller is electrified, triggering the guide flash program, judging whether a flag bit for identifying program upgrading is set, if so, continuing to execute the guide flash program, entering a program flash stage, otherwise, exiting the guide flash program, and transferring to execute an application program.
2. The software upgrading method of a domain controller as claimed in claim 1, wherein the specific process of flushing the boot flush program into the domain controller comprises: firstly, a boot flash program is flushed into a random access memory, and the boot flash program is flushed into a flash memory in the random access memory;
or further, when the guiding flash program is flushed into the flash memory, setting a memory segment memory address in a link command file of the guiding flash program so as to set a memory position of the guiding flash program;
or, the booting of the flash program into the domain controller is carried out before the domain controller is encapsulated or is carried out after the domain controller is encapsulated, and the domain controller is re-flashed by using the serial device.
3. The method for upgrading software of a domain controller as claimed in claim 1, wherein said flag bit is stored in a flash memory partition with a relatively backward address, separately from a partition storing the boot flash program and the application program.
4. The software upgrading method for domain controller according to claim 1, wherein said program flashing stage specifically includes:
reading a flag bit to indicate that a program upgrading request exists, quickly copying an application program stored in a flash memory to another flash memory partition by using an assembly instruction to store backup, and setting an identification bit indicating entering a flash process;
judging whether an upgrading request is a remote request or not, and entering a remote upgrading process if the upgrading request is the remote request; otherwise, entering an off-line flash process;
and after all the flash is finished, the flash program is guided to reset and clear the flag bit and the identification bit, if the flash program fails in midway, the identification bit cannot be cleared, and the backup program is automatically recovered after the bit is detected by electrifying next time.
5. The software upgrading method of a domain controller as claimed in claim 4, wherein said remote upgrading process comprises: configuring a CAN channel, a baud rate, a received message ID and a mask, then communicating with a TBox, and sequentially carrying out the following stages: a pre-programming stage, which is used for completing the tasks of diagnosis session control, DTC control and communication control; in the programming stage, completing security access, program version information writing, application program subsection downloading, integrity verification and programming dependency check tasks; in the post-programming stage, the tasks of ECU restart, diagnosis session control, communication control, DTC control and zone bit resetting are completed;
or, the offline flashing process includes: waiting for an instruction sent by an upper computer, selecting a serial port or CAN equipment to be used for flashing in the upper computer by a user, initializing corresponding equipment and setting functional parameters after a guide flashing program receives an equipment option instruction, receiving a program file and a check code transmitted by the upper computer, calculating the check code of the time, feeding back the check code for upper level comparison, if the check code is consistent with the check code, completing data, continuously sending a next frame, otherwise, retransmitting the frame and sending a corresponding signal to the guide flashing program, abandoning the previous frame and re-receiving the frame, and executing in a circulating way until all data are sent completely.
6. The software upgrading method of a domain controller according to claim 1, wherein before determining whether the flag bit for identifying program upgrading is set, first determining whether an identification bit for indicating that a flash procedure has been entered is set, and if so, performing a restore application backup operation, copying the application from the backup area to the application storage area using an assembly instruction, and then restarting the domain controller by using the identification bit; if not, skipping.
7. A domain controller software upgrade system, comprising:
a program flush module configured to flush a boot flush program into the domain controller;
and the program upgrading module is configured to trigger the guiding flash program after the domain controller is powered on, judge whether a flag bit for identifying program upgrading is set, if so, continue to execute the guiding flash program and enter a program flash stage, otherwise, quit the guiding flash program and transfer to execute the application program.
8. An electronic device comprising a memory and a processor and computer instructions stored on the memory and executable on the processor, the computer instructions when executed by the processor performing the steps of the method of any of claims 1-6.
9. A computer-readable storage medium storing computer instructions which, when executed by a processor, perform the steps of the method of any one of claims 1 to 6.
10. A new energy vehicle characterised by a software upgrade using the steps in the method of any one of claims 1 to 6 or comprising the system of claim 7, the electronic device of claim 8 or the computer readable storage medium of claim 9.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210016971.XA CN114398066A (en) | 2022-01-07 | 2022-01-07 | Software upgrading method, system and application of domain controller |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210016971.XA CN114398066A (en) | 2022-01-07 | 2022-01-07 | Software upgrading method, system and application of domain controller |
Publications (1)
Publication Number | Publication Date |
---|---|
CN114398066A true CN114398066A (en) | 2022-04-26 |
Family
ID=81229025
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202210016971.XA Pending CN114398066A (en) | 2022-01-07 | 2022-01-07 | Software upgrading method, system and application of domain controller |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN114398066A (en) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115437670A (en) * | 2022-09-06 | 2022-12-06 | 北京斯年智驾科技有限公司 | TFTP-based automobile controller program upgrading system |
CN116302019A (en) * | 2023-05-11 | 2023-06-23 | 江苏大秦新能源科技有限公司 | BootLoader program self-updating method, system and storage medium |
CN116560688A (en) * | 2023-05-05 | 2023-08-08 | 上汽通用汽车有限公司 | Software updating method for domain controller |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107391143A (en) * | 2017-07-27 | 2017-11-24 | 中通客车控股股份有限公司 | A kind of T Box remote upgrade methods |
CN108282389A (en) * | 2017-01-05 | 2018-07-13 | 厦门雅迅网络股份有限公司 | A method of the vehicle-mounted OTA upgradings based on CAN bus load monitoring |
CN111327689A (en) * | 2020-01-22 | 2020-06-23 | 大运汽车股份有限公司 | Method for realizing remote upgrading of vehicle ECU (electronic control Unit) based on UDS (Universal data System) communication protocol |
-
2022
- 2022-01-07 CN CN202210016971.XA patent/CN114398066A/en active Pending
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108282389A (en) * | 2017-01-05 | 2018-07-13 | 厦门雅迅网络股份有限公司 | A method of the vehicle-mounted OTA upgradings based on CAN bus load monitoring |
CN107391143A (en) * | 2017-07-27 | 2017-11-24 | 中通客车控股股份有限公司 | A kind of T Box remote upgrade methods |
CN111327689A (en) * | 2020-01-22 | 2020-06-23 | 大运汽车股份有限公司 | Method for realizing remote upgrading of vehicle ECU (electronic control Unit) based on UDS (Universal data System) communication protocol |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115437670A (en) * | 2022-09-06 | 2022-12-06 | 北京斯年智驾科技有限公司 | TFTP-based automobile controller program upgrading system |
CN115437670B (en) * | 2022-09-06 | 2023-11-21 | 北京斯年智驾科技有限公司 | Automobile controller program upgrading system based on TFTP |
CN116560688A (en) * | 2023-05-05 | 2023-08-08 | 上汽通用汽车有限公司 | Software updating method for domain controller |
CN116302019A (en) * | 2023-05-11 | 2023-06-23 | 江苏大秦新能源科技有限公司 | BootLoader program self-updating method, system and storage medium |
CN116302019B (en) * | 2023-05-11 | 2023-08-04 | 江苏大秦新能源科技有限公司 | BootLoader program self-updating method, system and storage medium |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN114398066A (en) | Software upgrading method, system and application of domain controller | |
CN110474961B (en) | Method for realizing multi-path remote OTA (over the air) upgrading of pure passenger vehicle based on CAN (controller area network) bus | |
CN102495744B (en) | Control software upgrading method of electronic control devices of electric automobile based on controller area network (CAN) bus | |
CN111679836B (en) | Automobile ECU flashing system and method | |
CN111381844A (en) | Method and device for updating vehicle ECU firmware | |
CN104636172B (en) | A kind of application upgrade method and apparatus | |
CN111769962A (en) | MCU firmware OTA upgrading method | |
CN108108193A (en) | A kind of easy-to-use firmware upgrade method of safety and system | |
CN110930131A (en) | Vehicle maintenance method, device, equipment and medium | |
CN113031974A (en) | Software flashing method for transmission control unit | |
CN109992515B (en) | Test method and device and electronic equipment | |
CN105677398A (en) | Universal embedded computer software on-line upgrading method | |
CN109885337A (en) | A kind of system version upgrade method, device, equipment and readable storage medium storing program for executing | |
CN111722864A (en) | ECU data flashing method and related device | |
WO2022160816A1 (en) | Data processing method and related device | |
CN116775079A (en) | Vehicle part refreshing method and device, electronic equipment and storage medium | |
CN116400943A (en) | Upgrading method, system, equipment, medium and vehicle of vehicle controller | |
CN107590064A (en) | A kind of application upgrade method of testing, device and system | |
CN112181444A (en) | DSP multi-core data programming method based on 1553B bus | |
CN116560688A (en) | Software updating method for domain controller | |
CN115904411A (en) | Software error-proofing method and system applied to after-sale market | |
CN114443097A (en) | Single-chip microcomputer firmware upgrading method used in conference unit | |
CN114546455A (en) | MCU software upgrading method and device for double partitions | |
Du et al. | UDS in CAN flash programming | |
JP3489302B2 (en) | Chromatographic analysis system |
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 | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20220426 |
|
RJ01 | Rejection of invention patent application after publication |