Vehicle-mounted infotainment upgrading method, vehicle-mounted infotainment upgrading system, vehicle-mounted infotainment upgrading equipment and medium

By using dual-port RAM in the vehicle-mounted T-Box system to achieve parallel data interaction between the microprocessor and the microcontroller, with the microprocessor leading local function updates, the problems of limited transmission rate and inconvenient upgrade and maintenance in the existing system are solved, thereby improving the system's flexibility and upgrade efficiency.

CN121807341APending Publication Date: 2026-04-07ROX MOTOR TECH CO LTD
View PDF 0 Cites 0 Cited by

Patent Information

Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2025-12-30
Publication Date
2026-04-07

AI Technical Summary

Technical Problem

The existing vehicle-mounted T-Box system's MPU and MCU architecture, which communicate via the SPI interface, suffers from limited transmission rate, inconvenient upgrades and maintenance, and insufficient system scalability, resulting in insufficient system flexibility.

Method used

Parallel data interaction is achieved between the microprocessor and the microcontroller using dual-port RAM. The microprocessor can lead local function updates without restarting the microcontroller, generating and writing new program fragments to the command setting area of ​​the dual-port RAM, which the microcontroller immediately reads and executes.

Benefits of technology

It improves the maintainability, real-time performance, and upgrade efficiency of the system, avoids the problem of having to upgrade each system independently in traditional architectures, and achieves efficient function expansion and updates.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN121807341A_ABST
    Figure CN121807341A_ABST
Patent Text Reader

Abstract

The invention provides a vehicle-mounted terminal upgrading method, a vehicle-mounted terminal upgrading system, equipment and a medium, a microprocessor is connected with a microcontroller through a dual-port RAM, the microprocessor obtains a first upgrading file, and when the current operation environment of a vehicle meets a preset upgrading condition, the first upgrading file is used for upgrading; after upgrading is completed, a newly-added program fragment for the microcontroller is generated based on the current upgrading condition, and the newly-added program fragment is written into a command setting area in the dual-port RAM, so that the microcontroller directly reads the newly-added program fragment from the command setting area after writing of the newly-added program fragment is completed. And the microcontroller can use the newly-added program fragment to carry out upgrading. According to the method and the system, on the premise that the microcontroller is not restarted, local function updating is completed through leading of the microprocessor, the problem that independent upgrading is needed in a traditional framework is avoided, and maintainability, real-time performance and upgrading efficiency of the system are improved.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This application relates to the field of vehicle upgrade technology, and in particular to a vehicle infotainment system upgrade method, vehicle infotainment system upgrade system, equipment and medium. Background Technology

[0002] With the rapid development of vehicle-to-everything (V2X) technology, the in-vehicle T-Box (Telematics Box) system, as a core component for vehicle-to-external communication, faces increasingly higher requirements in terms of functionality and performance. Existing in-vehicle T-Box systems generally adopt an architecture design that uses a dual-chip approach, with the MPU (Microprocessor Unit) and MCU (Microcontroller Unit) working together. The MPU is responsible for running complex operating systems and application software, while the MCU focuses on low-level control tasks with high real-time requirements.

[0003] In traditional implementations, the MPU and MCU primarily exchange data via serial communication interfaces such as SPI (Serial Peripheral Interface). While this architecture achieves functional division, it has significant limitations in practical applications. SPI interfaces are mostly pseudo-duplex, and their transmission rate is strictly limited by the clock frequency, often failing to meet performance requirements in scenarios demanding high real-time transmission or large data volume interactions. Furthermore, upgrading and maintaining the MCU firmware is inconvenient, typically requiring a separate flashing process, and sometimes even a system reboot. This architecture also limits system scalability, preventing dynamic code injection for new functions and resulting in insufficient system flexibility. Summary of the Invention

[0004] In view of this, the purpose of this application is to provide a vehicle infotainment system upgrade method, system, device and medium that can complete partial function updates by microprocessor-led without restarting the microcontroller, thereby avoiding the problem of separate upgrades required in traditional architectures and improving the maintainability, real-time performance and upgrade efficiency of the system.

[0005] In a first aspect, embodiments of this application provide a vehicle infotainment system upgrade method, wherein the vehicle infotainment system upgrade method is applied to a microprocessor, the microprocessor being connected to a microcontroller via a dual-port RAM, and the vehicle infotainment system upgrade method includes: Obtain the first upgrade file, and when the vehicle's current operating environment meets the preset upgrade conditions, use the first upgrade file to perform the upgrade; After the upgrade is completed, a new program segment for the microcontroller is generated based on the current upgrade status, and the new program segment is written into the command setting area in the dual-port RAM, so that the microcontroller can directly read from the command setting area after the new program segment is written, so that the microcontroller can use the new program segment to upgrade.

[0006] Furthermore, the dual-port RAM also includes a microcontroller read area and a microprocessor read area, and the vehicle system upgrade method further includes: When a fault is detected in the microcontroller, a second upgrade file for the microcontroller is obtained and sent to the command setting area; The microprocessor reads the current operating status fed back by the microcontroller. When the current operating status is detected to meet the preset upgrade status, an upgrade command is sent to the microcontroller reads the microcontroller, so that the microcontroller can obtain the second upgrade file from the command setting area based on the upgrade command in the microcontroller reads the microcontroller.

[0007] Furthermore, the vehicle infotainment system upgrade method also includes: When a vehicle control command is received, a control command corresponding to the vehicle control command is generated, and the control command is uploaded to the microcontroller's reading area, so that the microcontroller can obtain the control command from the microcontroller's reading area and execute it; When the presence of CAN data uploaded by the microcontroller in the microprocessor read area is detected, the CAN data is obtained from the microprocessor read area.

[0008] Secondly, this application also provides a vehicle infotainment system upgrade method, which is applied to a microcontroller. The microcontroller is connected to a microprocessor via a dual-port RAM. The vehicle infotainment system upgrade method includes: The system detects whether a new program segment has started writing within the command setting area of ​​the dual-port RAM; wherein, the new program segment is new function code for the microcontroller generated by the microprocessor after the upgrade is completed; If so, after the newly added program fragment is written, the newly added program fragment is retrieved from the command setting area and run to upgrade using the newly added program fragment.

[0009] Furthermore, the dual-port RAM also includes a microcontroller read area and a microprocessor read area, and the vehicle system upgrade method further includes: When a second upgrade file is detected in the command setting area, the current running status is sent to the microprocessor reading area; wherein, the second upgrade file is a file uploaded by the microprocessor to the command setting area for upgrading the microcontroller; The microcontroller receives the upgrade command sent by the microprocessor through the microcontroller reading area, obtains the second upgrade file from the command setting area, and performs the upgrade using the second upgrade file after the second upgrade file passes data verification.

[0010] Furthermore, the vehicle infotainment system upgrade method also includes: When a control command written by the microprocessor is detected in the microcontroller read area, the control command is retrieved from the microcontroller read area and executed. When the data transmission conditions are met, the vehicle's CAN data is uploaded to the microprocessor's read area, so that the microprocessor can obtain the CAN data from the microprocessor's read area.

[0011] Furthermore, after the microcontroller is powered on or reset, the vehicle infotainment system upgrade method further includes: Real-time monitoring of whether external running code uploaded by the microprocessor exists in the command settings area; If so, the external running code is obtained from the command setting area, loaded into the specific running area, and run.

[0012] Thirdly, this application also provides a vehicle infotainment system upgrade system, which includes a microprocessor and a microcontroller. The microprocessor executes a vehicle infotainment system upgrade method, and the microcontroller executes the vehicle infotainment system upgrade method. The microprocessor and the microcontroller are connected via a dual-port RAM. The microprocessor is used to obtain a first upgrade file and perform an upgrade using the first upgrade file when the current operating environment of the vehicle meets the preset upgrade conditions. After the upgrade is completed, a new program segment for the microcontroller is generated based on the current upgrade status, and the new program segment is written into the command setting area in the dual-port RAM so that the microcontroller can directly read from the command setting area after the new program segment is written, so that the microcontroller can use the new program segment to perform the upgrade. The microcontroller is configured to detect whether a new program segment has begun to be written in the command setting area of ​​the dual-port RAM; wherein the new program segment is new function code for the microcontroller generated by the microprocessor after the upgrade is completed; if so, after the new program segment is written, the new program segment is retrieved from the command setting area and run to upgrade using the new program segment.

[0013] Fourthly, embodiments of this application also provide an electronic device, including: a processor, a memory, and a bus. The memory stores machine-readable instructions executable by the processor. When the electronic device is running, the processor communicates with the memory via the bus. When the machine-readable instructions are executed by the processor, the steps of the vehicle system upgrade method described above are performed.

[0014] Fifthly, embodiments of this application also provide a computer-readable storage medium storing a computer program, which, when executed by a processor, performs the steps of the vehicle system upgrade method described above.

[0015] This application provides a vehicle infotainment system upgrade method, system, device, and medium. A microprocessor is connected to a microcontroller via a dual-port RAM. The microprocessor obtains a first upgrade file. When the vehicle's current operating environment meets preset upgrade conditions, the microprocessor performs an upgrade using the first upgrade file. After the upgrade is completed, a new program segment is generated for the microcontroller based on the current upgrade status. This new program segment is written into the command setting area of ​​the dual-port RAM, allowing the microcontroller to directly read from the command setting area after the new program segment is written, thus enabling the microcontroller to perform the upgrade using the new program segment.

[0016] In this way, after the microprocessor writes the new program fragment, the microcontroller can immediately read and execute it from the command setting area of ​​the dual-port RAM. Without restarting the microcontroller, the microprocessor can take the lead in completing the local function update, avoiding the problem of having to upgrade independently in the traditional architecture, and improving the maintainability, real-time performance and upgrade efficiency of the system.

[0017] To make the above-mentioned objectives, features and advantages of this application more apparent and understandable, preferred embodiments are described below in detail with reference to the accompanying drawings. Attached Figure Description

[0018] To more clearly illustrate the technical solutions of the embodiments of this application, the accompanying drawings used in the embodiments will be briefly introduced below. It should be understood that the following drawings only show some embodiments of this application and should not be regarded as a limitation of the scope. For those skilled in the art, other related drawings can be obtained based on these drawings without creative effort.

[0019] Figure 1 A flowchart illustrating a vehicle infotainment system upgrade method provided in this application embodiment; Figure 2 A flowchart illustrating a vehicle infotainment system upgrade method provided in another embodiment of this application; Figure 3 This is a schematic diagram of the structure of a vehicle infotainment system upgrade system provided in an embodiment of this application; Figure 4 This is a schematic diagram of the structure of an electronic device provided in an embodiment of this application. Detailed Implementation

[0020] To make the objectives, technical solutions, and advantages of the embodiments of this application clearer, the technical solutions of the embodiments of this application will be clearly and completely described below with reference to the accompanying drawings. Obviously, the described embodiments are only some embodiments of this application, and not all embodiments. The components of the embodiments of this application described and shown in the accompanying drawings can generally be arranged and designed in various different configurations. Therefore, the following detailed description of the embodiments of this application provided in the accompanying drawings is not intended to limit the scope of the claimed application, but merely represents selected embodiments of this application. Based on the embodiments of this application, every other embodiment obtained by those skilled in the art without inventive effort falls within the scope of protection of this application.

[0021] First, the applicable scenarios for this application will be introduced. This application can be applied to the field of vehicle upgrade technology.

[0022] With the rapid development of vehicle-to-everything (V2X) technology, the in-vehicle T-Box (Telematics Box) system, as a core component for vehicle-to-external communication, faces increasingly higher requirements in terms of functionality and performance. Existing in-vehicle T-Box systems generally adopt an architecture design that uses a dual-chip approach, with the MPU (Microprocessor Unit) and MCU (Microcontroller Unit) working together. The MPU is responsible for running complex operating systems and application software, while the MCU focuses on low-level control tasks with high real-time requirements.

[0023] Research has revealed that in traditional implementations, the MPU and MCU primarily exchange data via serial communication interfaces such as SPI (Serial Peripheral Interface). While this architecture achieves functional division, it has significant limitations in practical applications. SPI interfaces are mostly pseudo-duplex, and their transmission rate is strictly limited by the clock frequency, often failing to meet performance requirements in scenarios demanding high real-time transmission or large data volume interactions. Furthermore, MCU firmware upgrades and maintenance are inconvenient, typically requiring a separate flashing process, and sometimes even a system reboot. This architecture also limits system scalability, preventing dynamic code injection for new functions and resulting in insufficient system flexibility.

[0024] Based on this, the present application provides a vehicle system upgrade method that, without restarting the microcontroller, completes partial function updates through the microprocessor, avoiding the problem of having to upgrade independently in traditional architectures, and improving the maintainability, real-time performance and upgrade efficiency of the system.

[0025] Please see Figure 1 , Figure 1 This is a flowchart illustrating a vehicle infotainment system upgrade method provided in an embodiment of this application. The vehicle infotainment system upgrade method is applied to a microprocessor, which is connected to a microcontroller via a dual-port RAM. Figure 1 As shown in the figure, the vehicle infotainment system upgrade method provided in this application embodiment includes: S101, Obtain the first upgrade file, and when the current operating environment of the vehicle meets the preset upgrade conditions, perform the upgrade using the first upgrade file.

[0026] Here, the first upgrade file refers to the firmware package used to update the software system on the microcontroller side, which is either downloaded from the cloud or stored locally. The preset upgrade conditions are pre-defined safety environment criteria that trigger the microprocessor upgrade. For example, preset upgrade conditions could include the vehicle being off, the vehicle's battery level being above a threshold, or the absence of ongoing driving operations; this application does not specify any particular limitation in these cases.

[0027] Regarding step S101 above, in specific implementation, the microprocessor obtains the first upgrade file for upgrading from the OTA server or local storage medium. It also checks whether the vehicle's current operating environment meets the preset upgrade conditions. If so, the microprocessor initiates the self-upgrade process and performs the upgrade using the first upgrade file.

[0028] S102, after the upgrade is completed, a new program segment for the microcontroller is generated based on the current upgrade status, and the new program segment is written into the command setting area in the dual-port RAM, so that the microcontroller can directly read from the command setting area after the new program segment is written, so that the microcontroller can use the new program segment to upgrade.

[0029] Here, the newly added program fragment refers to a piece of executable code dynamically generated based on new functional requirements after the microprocessor completes its upgrade. It is specifically used to extend or repair the microprocessor's functional logic, such as adding a new CAN message parsing rule. Dual-port RAM is a high-speed memory that allows two devices to access the same storage area simultaneously, achieving parallel read / write through independent address lines and an arbitration mechanism. A specific address range within the dual-port RAM is designated as a command setting area, specifically used to store the new program code to be loaded from the microprocessor to the microcontroller.

[0030] Regarding step S102 above, in specific implementation, after the microprocessor completes the upgrade, it determines the new functions introduced in this upgrade and judges whether the functions on the microcontroller side need to be adapted or enhanced. If so, it generates a new program segment for the microcontroller based on the current upgrade situation and writes the new program segment into the command setting area in the dual-port RAM. Here, as an example, for instance, the microprocessor adds a new intelligent cruise algorithm, requiring the microcontroller to cooperate in collecting more precise brake pedal signals. In this case, the microprocessor generates a new program segment corresponding to the new function and sends it to the command setting area through the dual-port RAM. In this way, after the new program segment is written, the microcontroller can immediately read and execute it from the command setting area of ​​the dual-port RAM, so that the microcontroller can upgrade using the new program segment. Without restarting the microcontroller, the microprocessor can lead the completion of partial function updates, avoiding the problem of having to upgrade independently in traditional architectures, and improving the maintainability, real-time performance, and upgrade efficiency of the system.

[0031] Furthermore, according to the embodiments provided in this application, the dual-port RAM also includes a microcontroller read area and a microprocessor read area.

[0032] Here, the microcontroller read area is a dedicated memory area in the dual-port RAM for the microcontroller to read data, where the microprocessor writes control commands. Specifically, the internal data of the control command may include information such as length, instruction number, instruction content, and whether the current instruction is a terminal instruction, which is not specifically limited in this application.

[0033] The microprocessor read area is a dedicated memory region in the dual-port RAM for the microprocessor to read data. The microcontroller uploads the collected vehicle CAN data (such as vehicle speed, engine speed, throttle opening, fault codes, etc.) here. Specifically, the internal data structure of the CAN data may include information such as CAN data length, CAN ID, and CAN data content, which are not specifically limited in this application.

[0034] Specifically, the vehicle infotainment system upgrade method provided in this application also includes: A: When the microcontroller is detected to be in a fault state, a second upgrade file for the microcontroller is obtained and the second upgrade file is sent to the command setting area.

[0035] Here, the second upgrade file refers to a firmware package specifically designed for upgrading the microcontroller firmware. Fault states may include abnormal operation of the microcontroller or program errors, which are not specifically limited in this application.

[0036] Regarding step A above, in specific implementation, the microprocessor periodically monitors the operating status of the microcontroller. When the microcontroller is detected to be in a fault state, the microprocessor obtains the second upgrade file required for the microcontroller upgrade and writes it completely into the command setting area of ​​the dual-port RAM.

[0037] B: The microprocessor reads the current running status fed back by the microcontroller. When the current running status is detected to be in line with the preset upgrade status, an upgrade command is sent to the microcontroller reads the microcontroller, so that the microcontroller can obtain the second upgrade file from the command setting area based on the upgrade command in the microcontroller reads the microcontroller.

[0038] Here, the current operating state refers to the key operating information fed back to the microprocessor by the microcontroller. For example, the current operating state can be an idle state, a task being executed, etc. This application does not make specific limitations on this.

[0039] Regarding step B above, in specific implementation, the microprocessor sends a query request to the microcontroller, requesting the microcontroller to return its current operating status. After the microcontroller responds, the microprocessor receives the current operating status feedback from the microcontroller through the microprocessor read area and determines whether the microcontroller is in an upgradeable state. If so, the microprocessor sends an upgrade command to the microcontroller read area. After receiving the upgrade command from the microcontroller read area, the microcontroller reads the second upgrade file from the command setting area of ​​the dual-port RAM to perform the upgrade.

[0040] Thus, according to steps A-B above, when a fault is detected in the microcontroller, the microprocessor can actively obtain the second upgrade file and transmit it to the command setting area through the dual-port RAM. After confirming that the microcontroller's operating status meets the upgrade conditions, it sends an upgrade command to trigger the microcontroller to autonomously complete the firmware update, which greatly enhances the maintainability and reliability of the system.

[0041] As an optional embodiment, the vehicle infotainment system upgrade method provided in this application further includes: a: When a vehicle control command is received, a control command corresponding to the vehicle control command is generated, and the control command is uploaded to the microcontroller reading area so that the microcontroller can obtain the control command from the microcontroller reading area and execute it.

[0042] Here, vehicle control commands refer to control commands generated by the user through operating the vehicle system, such as turning on the air conditioning, adjusting the volume, and switching driving modes. This application does not make specific limitations on this.

[0043] Regarding step a above, in specific implementation, when the microprocessor receives the vehicle control instruction, it converts it into the corresponding control command and writes the control command into the microcontroller's read area, so that the microcontroller can obtain the control command from the microcontroller's read area and execute it.

[0044] b: When the presence of CAN data uploaded by the microcontroller in the microprocessor read area is detected, the CAN data is obtained from the microprocessor read area.

[0045] Regarding step b above, in specific implementation, when the microprocessor detects new CAN data uploaded by the microcontroller in the microprocessor reading area, it reads the CAN data from the microprocessor reading area and uploads it to the cloud platform or for local data analysis.

[0046] Thus, based on steps a and b above, the microcontroller read area and the microprocessor read area realize a bidirectional high-speed data channel between the microprocessor and the microcontroller. By dividing the dual-port RAM into a microcontroller read area and a microprocessor read area, a bidirectional high-speed channel is realized for the microprocessor to send control commands to the microcontroller and for the microcontroller to upload CAN data to the microprocessor. Compared with traditional serial communication interfaces such as SPI, this application supports large data volume, low latency, and high throughput data interaction, effectively reducing communication packet loss and response latency.

[0047] The vehicle infotainment system upgrade method provided in this application is applied to a microprocessor. The microprocessor is connected to a microcontroller via a dual-port RAM. First, a first upgrade file is obtained. When the current operating environment of the vehicle meets preset upgrade conditions, the first upgrade file is used to perform the upgrade. After the upgrade is completed, a new program segment for the microcontroller is generated based on the current upgrade status, and the new program segment is written into the command setting area in the dual-port RAM. This allows the microcontroller to directly read from the command setting area after the new program segment is written, so that the microcontroller can use the new program segment to perform the upgrade.

[0048] In this way, after the microprocessor writes the new program fragment, the microcontroller can immediately read and execute it from the command setting area of ​​the dual-port RAM. Without restarting the microcontroller, the microprocessor can take the lead in completing the local function update, avoiding the problem of having to upgrade independently in the traditional architecture, and improving the maintainability, real-time performance and upgrade efficiency of the system.

[0049] Please see Figure 2 , Figure 2 This is a flowchart illustrating a vehicle infotainment system upgrade method according to another embodiment of this application. The vehicle infotainment system upgrade method is applied to a microcontroller, which is connected to a microprocessor via a dual-port RAM, such as... Figure 2 As shown in the figure, the vehicle infotainment system upgrade method provided in this application embodiment includes: S201, Detect whether a new program segment has started writing within the command setting area of ​​the dual-port RAM.

[0050] S202, if so, after the new program fragment is written, the new program fragment is obtained from the command setting area and run to upgrade using the new program fragment.

[0051] Here, the newly added program fragment refers to the new functional code for the microcontroller generated after the microprocessor has been upgraded.

[0052] Regarding steps S201-S202 above, in specific implementation, when the microcontroller detects whether a new program fragment uploaded by the microprocessor has begun writing in the command setting area of ​​the dual-port RAM, if so, after the new program fragment is written, the microcontroller reads the complete new program fragment in the command setting area and runs it without restarting, so as to use the new program fragment for upgrades, realizing functional expansion or logic updates.

[0053] Furthermore, the dual-port RAM also includes a microcontroller read area and a microprocessor read area.

[0054] Specifically, the vehicle infotainment system upgrade method provided in this application also includes: I: When a second upgrade file is detected in the command setting area, the current running status is sent to the microprocessor reading area.

[0055] II: The microcontroller receives the upgrade command sent by the microprocessor through the microcontroller reading area, obtains the second upgrade file from the command setting area, and performs the upgrade using the second upgrade file after the second upgrade file passes the data verification.

[0056] The second upgrade file is a file uploaded by the microprocessor to the command setting area for upgrading the microcontroller.

[0057] Regarding steps I-II above, in specific implementation, when the microcontroller detects a second upgrade file uploaded by the microprocessor for upgrading the microcontroller in the command setting area of ​​the dual-port RAM, it sends its current operating status to the microprocessor's read area. The microprocessor checks whether the microcontroller meets the preset upgrade status based on the current operating status. If it does, it sends an upgrade command to the microcontroller's read area. The microcontroller receives and responds to the upgrade command sent by the microprocessor through the microcontroller's read area, retrieves the second upgrade file from the command setting area, and performs data verification on the second upgrade file based on MD5. After the second upgrade file passes data verification, the microcontroller uses the second upgrade file to perform the upgrade. If the second upgrade file fails data verification, the microcontroller requests the microprocessor to retransmit the second upgrade file.

[0058] As an optional embodiment, the vehicle infotainment system upgrade method provided in this application further includes: i: When a control command written by the microprocessor is detected in the microcontroller read area, the control command is retrieved from the microcontroller read area and executed.

[0059] Regarding step i above, in specific implementation, the microcontroller periodically scans its read area. Once a new control command is detected, it is immediately read and the corresponding action is executed. Here, as an optional embodiment, after execution, the microcontroller may selectively write the execution result back to the dual-port RAM for the microprocessor to query.

[0060] ii: When the data transmission conditions are met, the vehicle's CAN data is uploaded to the microprocessor reading area so that the microprocessor can obtain the CAN data from the microprocessor reading area.

[0061] Here, the data transmission condition may be reaching the preset data transmission period or the need to report a fault; this application does not specifically limit this.

[0062] Regarding step ii above, in specific implementation, when the data transmission conditions of the microcontroller are met, the microcontroller uploads the vehicle's CAN data to the microprocessor read area of ​​the dual-port RAM, so that the microprocessor can obtain the CAN data from the microprocessor read area.

[0063] As an optional embodiment, after the microcontroller is powered on or reset, the vehicle infotainment system upgrade method further includes: The system monitors in real time whether there is external running code uploaded by the microprocessor in the command setting area; if so, it retrieves the external running code from the command setting area, loads the external running code into a specific running area, and runs it.

[0064] Here, external executable code refers to any executable code uploaded by the microprocessor and executed by the microcontroller. A specific execution region refers to the executable memory region reserved within the microcontroller for loading and running external code.

[0065] Regarding the two steps mentioned above, in practical implementation, after power-on or reset, the microcontroller first checks whether there is external executable code uploaded by the microprocessor in the command setting area of ​​the dual-port RAM. If valid code exists, the microcontroller loads the code block into its internal specific execution area and begins execution. In this way, external executable code has the advantages of faster execution speed and more flexible updates compared to the FLASH code.

[0066] The vehicle infotainment system upgrade method provided in this application embodiment is applied to a microcontroller. The microcontroller is connected to a microprocessor via a dual-port RAM. First, it detects whether a new program segment has started writing in the command setting area of ​​the dual-port RAM. The new program segment is new function code for the microcontroller generated by the microprocessor after the upgrade is completed. If so, after the new program segment is written, it is obtained from the command setting area and run to perform the upgrade using the new program segment.

[0067] In this way, after the microprocessor writes the new program fragment, the microcontroller can immediately read and execute it from the command setting area of ​​the dual-port RAM. Without restarting the microcontroller, the microprocessor can take the lead in completing the local function update, avoiding the problem of having to upgrade independently in the traditional architecture, and improving the maintainability, real-time performance and upgrade efficiency of the system.

[0068] Please see Figure 3 , Figure 3 This is a schematic diagram of the structure of a vehicle infotainment system upgrade system provided in an embodiment of this application. Figure 3As shown, the vehicle infotainment system upgrade system 300 includes a microprocessor 310 and a microcontroller 320. The microprocessor 310 is used to execute... Figure 1 The steps of the CRRC system upgrade method are executed by the microcontroller 320. Figure 2 The steps of the CRRC system upgrade method are as follows: the microprocessor 310 and the microcontroller 320 are connected via a dual-port RAM.

[0069] The microprocessor 310 is used to obtain a first upgrade file and perform an upgrade using the first upgrade file when the current operating environment of the vehicle meets the preset upgrade conditions. After the upgrade is completed, a new program segment for the microcontroller is generated based on the current upgrade status, and the new program segment is written into the command setting area in the dual-port RAM so that the microcontroller can directly read from the command setting area after the new program segment is written, so that the microcontroller can use the new program segment to perform the upgrade. The microcontroller 320 is used to detect whether a new program segment has started to be written in the command setting area of ​​the dual-port RAM; wherein the new program segment is new function code for the microcontroller generated by the microprocessor after the upgrade is completed; if so, after the new program segment is written, the new program segment is obtained from the command setting area and run to upgrade using the new program segment.

[0070] Furthermore, the dual-port RAM also includes a microcontroller read area and a microprocessor read area, and the microprocessor 310 is further used for: When a fault is detected in the microcontroller, a second upgrade file for the microcontroller is obtained and sent to the command setting area; The microprocessor reads the current operating status fed back by the microcontroller. When the current operating status is detected to meet the preset upgrade status, an upgrade command is sent to the microcontroller reads the microcontroller, so that the microcontroller can obtain the second upgrade file from the command setting area based on the upgrade command in the microcontroller reads the microcontroller.

[0071] Furthermore, the microprocessor 310 is also used for: When a vehicle control command is received, a control command corresponding to the vehicle control command is generated, and the control command is uploaded to the microcontroller's reading area, so that the microcontroller can obtain the control command from the microcontroller's reading area and execute it; When the presence of CAN data uploaded by the microcontroller in the microprocessor read area is detected, the CAN data is obtained from the microprocessor read area.

[0072] Furthermore, the microcontroller 320 is also used for: When a second upgrade file is detected in the command setting area, the current running status is sent to the microprocessor reading area; wherein, the second upgrade file is a file uploaded by the microprocessor to the command setting area for upgrading the microcontroller; The microcontroller receives the upgrade command sent by the microprocessor through the microcontroller reading area, obtains the second upgrade file from the command setting area, and performs the upgrade using the second upgrade file after the second upgrade file passes data verification.

[0073] Furthermore, the dual-port RAM also includes a microcontroller read area and a microprocessor read area, and the microcontroller 320 is further used for: When a control command written by the microprocessor is detected in the microcontroller read area, the control command is retrieved from the microcontroller read area and executed. When the data transmission conditions are met, the vehicle's CAN data is uploaded to the microprocessor's read area, so that the microprocessor can obtain the CAN data from the microprocessor's read area.

[0074] Furthermore, after the microcontroller 320 is powered on or reset, the microcontroller 320 is also used to: Real-time monitoring of whether external running code uploaded by the microprocessor exists in the command settings area; If so, the external running code is obtained from the command setting area, loaded into the specific running area, and run.

[0075] Please see Figure 4 , Figure 4 This is a schematic diagram of the structure of an electronic device provided in an embodiment of this application. Figure 4 As shown, the electronic device 400 includes a processor 410, a memory 420, and a bus 430.

[0076] The memory 420 stores machine-readable instructions executable by the processor 410. When the electronic device 400 is running, the processor 410 communicates with the memory 420 via the bus 430. When the machine-readable instructions are executed by the processor 410, they can perform the operations described above. Figure 1 as well as Figure 2 The steps of the vehicle system upgrade method in the illustrated method embodiment can be found in the method embodiment for specific implementation methods, which will not be repeated here.

[0077] This application also provides a computer-readable storage medium storing a computer program, which, when executed by a processor, can perform the above-described actions. Figure 1 as well as Figure 2 The steps of the vehicle system upgrade method in the illustrated method embodiment can be found in the method embodiment for specific implementation methods, which will not be repeated here.

[0078] Those skilled in the art will clearly understand that, for the sake of convenience and brevity, the specific working processes of the systems, devices, and units described above can be referred to the corresponding processes in the foregoing method embodiments, and will not be repeated here.

[0079] In the several embodiments provided in this application, it should be understood that the disclosed systems, apparatuses, and methods can be implemented in other ways. The apparatus embodiments described above are merely illustrative. For example, the division of units is only a logical functional division, and in actual implementation, there may be other division methods. Furthermore, multiple units or components may be combined or integrated into another system, or some features may be ignored or not executed. Additionally, the shown or discussed mutual couplings, direct couplings, or communication connections may be through some communication interfaces; indirect couplings or communication connections between devices or units may be electrical, mechanical, or other forms.

[0080] The units described as separate components may or may not be physically separate. The components shown as units may or may not be physical units; that is, they may be located in one place or distributed across multiple network units. Some or all of the units can be selected to achieve the purpose of this embodiment according to actual needs.

[0081] In addition, the functional units in the various embodiments of this application can be integrated into one processing unit, or each unit can exist physically separately, or two or more units can be integrated into one unit.

[0082] If the aforementioned functions are implemented as software functional units and sold or used as independent products, they can be stored in a processor-executable, non-volatile, computer-readable storage medium. Based on this understanding, the technical solution of this application, in essence, or the part that contributes to the prior art, or a portion of the technical solution, can be embodied in the form of a software product. This computer software product is stored in a storage medium and includes several instructions to cause a computer device (which may be a personal computer, server, or network device, etc.) to execute all or part of the steps of the methods described in the various embodiments of this application. The aforementioned storage medium includes various media capable of storing program code, such as USB flash drives, portable hard drives, read-only memory (ROM), random access memory (RAM), magnetic disks, or optical disks.

[0083] Finally, it should be noted that the above-described embodiments are merely specific implementations of this application, used to illustrate the technical solutions of this application, and not to limit them. The scope of protection of this application is not limited thereto. Although this application has been described in detail with reference to the foregoing embodiments, those skilled in the art should understand that any person skilled in the art can still modify or easily conceive of changes to the technical solutions described in the foregoing embodiments, or make equivalent substitutions for some of the technical features, within the scope of the technology disclosed in this application. Such modifications, changes, or substitutions do not cause the essence of the corresponding technical solutions to deviate from the spirit and scope of the technical solutions of the embodiments of this application, and should all be covered within the scope of protection of this application. Therefore, the scope of protection of this application should be determined by the scope of the claims.

Claims

1. A method for upgrading a vehicle infotainment system, characterized in that, The vehicle infotainment system upgrade method applies to a microprocessor, which is connected to a microcontroller via dual-port RAM. The vehicle infotainment system upgrade method includes: Obtain the first upgrade file, and when the vehicle's current operating environment meets the preset upgrade conditions, use the first upgrade file to perform the upgrade; After the upgrade is completed, a new program segment for the microcontroller is generated based on the current upgrade status, and the new program segment is written into the command setting area in the dual-port RAM, so that the microcontroller can directly read from the command setting area after the new program segment is written, so that the microcontroller can use the new program segment to upgrade.

2. The vehicle infotainment system upgrade method according to claim 1, characterized in that, The dual-port RAM also includes a microcontroller read area and a microprocessor read area, and the vehicle infotainment system upgrade method further includes: When a fault is detected in the microcontroller, a second upgrade file for the microcontroller is obtained and sent to the command setting area; The microprocessor reads the current operating status fed back by the microcontroller. When the current operating status is detected to meet the preset upgrade status, an upgrade command is sent to the microcontroller reads the microcontroller, so that the microcontroller can obtain the second upgrade file from the command setting area based on the upgrade command in the microcontroller reads the microcontroller.

3. The vehicle infotainment system upgrade method according to claim 2, characterized in that, The vehicle infotainment system upgrade method also includes: When a vehicle control command is received, a control command corresponding to the vehicle control command is generated, and the control command is uploaded to the microcontroller's reading area, so that the microcontroller can obtain the control command from the microcontroller's reading area and execute it; When the presence of CAN data uploaded by the microcontroller in the microprocessor read area is detected, the CAN data is obtained from the microprocessor read area.

4. A method for upgrading a vehicle infotainment system, characterized in that, The vehicle infotainment system upgrade method is applied to a microcontroller, which is connected to a microprocessor via dual-port RAM. The vehicle infotainment system upgrade method includes: The system detects whether a new program segment has started writing within the command setting area of ​​the dual-port RAM; wherein, the new program segment is new function code for the microcontroller generated by the microprocessor after the upgrade is completed; If so, after the newly added program fragment is written, the newly added program fragment is retrieved from the command setting area and run to upgrade using the newly added program fragment.

5. The vehicle infotainment system upgrade method according to claim 4, characterized in that, The dual-port RAM also includes a microcontroller read area and a microprocessor read area, and the vehicle infotainment system upgrade method further includes: When a second upgrade file is detected in the command setting area, the current running status is sent to the microprocessor reading area; wherein, the second upgrade file is a file uploaded by the microprocessor to the command setting area for upgrading the microcontroller; The microcontroller receives the upgrade command sent by the microprocessor through the microcontroller reading area, obtains the second upgrade file from the command setting area, and performs the upgrade using the second upgrade file after the second upgrade file passes data verification.

6. The vehicle infotainment system upgrade method according to claim 5, characterized in that, The vehicle infotainment system upgrade method also includes: When a control command written by the microprocessor is detected in the microcontroller read area, the control command is retrieved from the microcontroller read area and executed. When the data transmission conditions are met, the vehicle's CAN data is uploaded to the microprocessor's read area, so that the microprocessor can obtain the CAN data from the microprocessor's read area.

7. The vehicle infotainment system upgrade method according to claim 4, characterized in that, After the microcontroller is powered on or reset, the vehicle infotainment system upgrade method further includes: Real-time monitoring of whether external running code uploaded by the microprocessor exists in the command settings area; If so, the external running code is obtained from the command setting area, loaded into the specific running area, and run.

8. A vehicle infotainment system upgrade system, characterized in that, The vehicle infotainment system upgrade system includes a microprocessor and a microcontroller. The microprocessor executes the vehicle infotainment system upgrade method as described in any one of claims 1-3, and the microcontroller executes the vehicle infotainment system upgrade method as described in any one of claims 4-7. The microprocessor and the microcontroller are connected via a dual-port RAM. The microprocessor is used to obtain a first upgrade file and perform an upgrade using the first upgrade file when the current operating environment of the vehicle meets the preset upgrade conditions. After the upgrade is completed, a new program segment for the microcontroller is generated based on the current upgrade status, and the new program segment is written into the command setting area in the dual-port RAM, so that the microcontroller can directly read from the command setting area after the new program segment is written, so that the microcontroller can use the new program segment to upgrade. The microcontroller is configured to detect whether a new program segment has begun to be written in the command setting area of ​​the dual-port RAM; wherein the new program segment is new function code for the microcontroller generated by the microprocessor after the upgrade is completed; if so, after the new program segment is written, the new program segment is retrieved from the command setting area and run to upgrade using the new program segment.

9. An electronic device, characterized in that, include: The device includes a processor, a memory, and a bus. The memory stores machine-readable instructions executable by the processor. When the electronic device is running, the processor communicates with the memory via the bus, and the processor executes the machine-readable instructions to perform the steps of the vehicle system upgrade method as described in any one of claims 1 to 3 or 4 to 7.

10. A computer-readable storage medium, characterized in that, The computer-readable storage medium stores a computer program that, when executed by a processor, performs the steps of the vehicle system upgrade method as described in any one of claims 1 to 3 or 4 to 7.