Software debugging method, controller, upper computer and system

Through the combination of custom trigger source-action pairs and native trigger source-action pairs, a multi-trigger source mode is formed, which solves the problem of low efficiency and inability to troubleshoot new faults in software debugging, and realizes flexible and efficient software debugging, which is suitable for troubleshooting throughout the product life cycle.

CN119669038APending Publication Date: 2025-03-21UNITED AUTOMOTIVE ELECTRONICS SYST
View PDF 0 Cites 0 Cited by

Patent Information

Application Number
CN202411663119.7
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2024-11-20
Publication Date
2025-03-21

AI Technical Summary

Technical Problem

The existing JTAG interface is inefficient in software debugging, and cannot effectively troubleshoot new and uncommon fault problems. In the later stage of product development or after batch production, due to information security considerations, the JTAG interface will be removed or hidden, making software debugging very difficult.

Method used

Through a software debugging method, a custom trigger source-action pair is adopted to support users to write custom trigger conditions and action codes, and temporarily store them in random memory to achieve dynamic loading. At the same time, combined with the native trigger source-action pair, a multi-trigger source mode is formed to meet the needs of troubleshooting complex fault problems.

Benefits of technology

It improves the flexibility of software debugging, broadens the scope of troubleshooting problems, can effectively troubleshoot new problems, reduces dependence on JTAG interface, and adapts to the problem detection of the entire life cycle of the product.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN119669038A_ABST
    Figure CN119669038A_ABST
Patent Text Reader

Abstract

The invention belongs to the technical field of software debugging, and particularly relates to a software debugging method, a controller, an upper computer and a system. The software debugging method comprises the following steps: receiving a trigger source-action pair; when the trigger source-action pair contains the self-defined trigger source-action pair, temporarily storing the self-defined trigger source-action pair in the random access memory; the user-defined trigger source-action pair comprises a user-defined trigger condition and a user-defined action type, and correspondingly comprises a user-defined trigger condition code and a user-defined action code; when a trigger condition in the trigger source is established, executing a corresponding action code; and feeding back an execution result. The software debugging system comprises a controller and an upper computer, and the upper computer is connected with the controller through a communication interface except for a JTAG interface. The method gets rid of dependence on a JTAG interface, covers troubleshooting of a whole life cycle, and adapts to troubleshooting requirements of endless new fault problems by dynamically loading a user-defined trigger source-action pair.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The invention belongs to the technical field of software debugging, and in particular relates to a software debugging method, a controller, a host computer and a system. Background Art

[0002] The vehicle controller is usually equipped with a debugging function module of the IEEE1149.1 standard, which can send and receive data through the standardized JTAG interface. Therefore, in the early stage of product development, the JTAG interface and the corresponding JTAG debugger are usually used to debug the software in the vehicle controller.

[0003] There are several single trigger conditions preset in the JTAG debugger, and each trigger condition corresponds to an action. The vehicle controller can only receive one trigger condition at a time through the JTAG interface and execute the corresponding action. The vehicle controller returns a result after each action is executed. This is not only inefficient, but also for some new and uncommon fault problems, due to the lack of corresponding trigger conditions in the JTAG debugger, it will be impossible to troubleshoot the fault through the JTAG interface.

[0004] In addition, since the permission level of the JTAG interface is too high, for information security reasons, the JTAG interface will be removed or hidden in the late stage of product development or after mass production, making it very difficult to debug the software of the vehicle controller after the product leaves the factory. Summary of the invention

[0005] The present application provides a software debugging method to get rid of the dependence on the JTAG interface, improve the flexibility of software debugging, and broaden the scope of troubleshooting of fault problems.

[0006] The present invention is implemented by the following technical solution: a software debugging method, comprising the following steps:

[0007] receiving a trigger source-action pair;

[0008] When the trigger source-action pair includes a custom trigger source-action pair, the custom trigger source-action pair is temporarily stored in a random access memory; the custom trigger source-action pair includes a custom trigger condition and a custom action type, and correspondingly includes a custom trigger condition code and a custom action code;

[0009] When the trigger condition in the trigger source is met, the corresponding action code is executed;

[0010] Feedback execution results.

[0011] The custom trigger source-action pair in the present invention supports users to write corresponding codes for different fault problems (especially new and unique fault problems), which has extremely high flexibility and overcomes the limitation that the prior art can only troubleshoot preset fault problems. The custom trigger source-action pair is temporarily stored in the random access memory to realize dynamic loading of the custom trigger condition code and the custom action code. Due to the power-off volatility of the random access memory, the custom trigger source-action pair will not be retained after debugging is completed, avoiding the accumulation of too many custom trigger source-action pairs, thereby saving storage resources.

[0012] Furthermore, the method further comprises the following steps:

[0013] When the trigger source-action pair includes a native trigger source-action pair, the native trigger source-action pair includes a native trigger condition and a native action type, and the code of the corresponding native action type pre-stored in the read-only memory is called.

[0014] In the present invention, the corresponding codes of the native trigger source-action pair are preset in the lower computer, and the native trigger source-action is used to troubleshoot common and widespread fault problems, which can improve the debugging efficiency.

[0015] Furthermore, the trigger source in the trigger source-trigger action pair is a logical combination of a custom trigger condition and a native trigger condition; the trigger action in the trigger source-trigger action pair is a logical combination of a custom action type and a native action type.

[0016] The native trigger source-action pair is combined with the custom trigger source-action pair to form a trigger source-action pair, transforming the single trigger source mode into a multi-trigger source mode to meet the needs of troubleshooting complex fault problems.

[0017] Furthermore, a result message is used to feedback the execution result, and the result message includes a message header, an execution result field and a message tail; the message header of the result message stores a trigger source-action pair identification code; the execution result field is used to store the action type and the corresponding execution result.

[0018] The trigger source-action pair identification code can effectively associate the configuration message and the result message, which is convenient for receiving the corresponding result message after sending multiple messages. It is not necessary to wait for the result message feedback of the configuration message before sending the next configuration message, which can improve the efficiency of software debugging.

[0019] Furthermore, before executing the trigger source-action pair, a security check is performed to meet the information security requirements of the software debugging function.

[0020] The present invention also provides a controller, wherein the controller is configured with a software debugging program, and the software debugging program is used to execute the software debugging method mentioned above.

[0021] The present invention also provides a host computer, comprising:

[0022] Human-computer interaction interface and configuration information generation module;

[0023] The human-computer interaction interface includes a configuration information setting window;

[0024] The configuration information setting window includes a custom configuration information setting module;

[0025] The custom configuration information setting module is used to write custom trigger condition codes and custom action codes;

[0026] The configuration information generation module is used to generate a custom trigger source-action pair according to the written custom trigger condition code and custom action code and compile the custom trigger source-action.

[0027] The present invention can call the software debugging program in the lower computer by developing the trigger source-action pair configuration function in the upper computer, and no longer needs a special debugger, thereby reducing costs. The upper computer supports the writing operation of custom trigger condition codes and custom action codes through a human-computer interaction interface to generate custom trigger source-action pairs, which meets the needs of troubleshooting new fault problems that emerge in an endless stream.

[0028] Furthermore, the human-computer interaction interface also includes a compiler selection window, and the compiler selection window is used to provide compiler type options; the configuration information generation module is used to compile the custom trigger source-action pair according to the selected compiler type.

[0029] Since different users are proficient in different programming languages, the compiler corresponding to the programming language can be selected through the compiler selection window to facilitate user use.

[0030] Furthermore, the configuration information setting window also includes a native configuration information setting module;

[0031] The native configuration information setting module is used to provide native trigger condition options and native action type options;

[0032] The configuration information generation module is used to generate corresponding native trigger source-action pairs according to the selection results of the native trigger conditions and the native action types.

[0033] Native trigger conditions and native action types can be freely matched, improving the flexibility of software debugging.

[0034] Furthermore, the configuration information generation module is used to logically combine the custom trigger source-action pair and the native trigger source-action pair to form a trigger source-action pair.

[0035] The native trigger source-action pair is combined with the custom trigger source-action pair to form a trigger source-action pair, transforming the single trigger source mode into a multi-trigger source mode to meet the needs of troubleshooting complex fault problems.

[0036] Furthermore, it also includes a configuration message sending module for sending configuration messages, the configuration message includes sending a new type configuration message; the new type configuration message includes a message header, a configuration field and a message tail; the message header of the new type configuration message stores a trigger source-action pair identification code; the configuration field is used to store the trigger source-action pair.

[0037] Furthermore, the configuration domain includes a trigger condition configuration domain and a trigger action configuration domain, the trigger condition configuration domain allows configuration of a native trigger condition and / or a custom trigger condition, and the trigger action configuration domain allows configuration of several native trigger actions and / or a custom trigger action.

[0038] It meets the needs of flexibly matching native trigger source-action pairs with custom trigger source-action pairs according to actual conditions.

[0039] Furthermore, the configuration message also includes a deletion type configuration message; the deletion type configuration message includes a message header and a message tail; the message header of the deletion type configuration message stores a trigger source-action pair identification code corresponding to the trigger source-action pair to be deleted.

[0040] By sending a deletion configuration message, the trigger source-action pair in the lower computer is deleted to reduce the memory burden.

[0041] Furthermore, it also includes a security verification request module, which is used to send a security verification request and receive a security verification response after sending the configuration message.

[0042] The present invention also provides a software debugging system, comprising the above-mentioned controller and a host computer, wherein the host computer and the controller are connected via a communication interface other than the JTAG interface.

[0043] Furthermore, the controller and the host computer establish a communication connection using CAN bus, Ethernet or Bluetooth.

[0044] The present invention uses a common communication interface to establish a connection between the host computer and the controller, gets rid of the dependence on the JTAG interface, can cover the troubleshooting of problems throughout the life cycle, and adapts to the troubleshooting needs of emerging new fault problems by dynamically loading custom trigger source-action pairs, and is no longer limited to the troubleshooting of limited preset fault problems. BRIEF DESCRIPTION OF THE DRAWINGS

[0045] In order to more clearly illustrate the specific implementation methods of the present application or the technical solutions in the prior art, the drawings required for use in the specific implementation methods or the description of the prior art will be briefly introduced below. Obviously, the drawings described below are some implementation methods of the present application. For ordinary technicians in this field, other drawings can be obtained based on these drawings without paying any creative work.

[0046] Figure 1 It is a communication link diagram of software debugging in the prior art;

[0047] Figure 2 is a communication link diagram for software debugging in this specific implementation mode;

[0048] Figure 3 It is a data structure diagram of the newly added class configuration message in this specific implementation mode;

[0049] Figure 4 It is a data structure diagram of a deletion class configuration message in this specific implementation mode;

[0050] Figure 5 is a flowchart of the software debugging procedure in this specific implementation mode;

[0051] Figure 6 is a data structure diagram of the result message in this specific implementation mode;

[0052] Figure 7 is a schematic diagram of the security verification mechanism in this specific implementation mode;

[0053] Figure 8 is a schematic diagram of a trigger source-action pair in this specific implementation mode;

[0054] Fig. 9 It is a schematic diagram of the interaction between the host computer and the controller in this specific implementation method. DETAILED DESCRIPTION

[0055] In the prior art, the JTAG interface and the corresponding JTAG debugger are usually used to debug the software in the vehicle controller in the early stage of product development. Figure 1 As shown in the figure, the debugger is connected to the vehicle controller MCU through the JTAG debugging interface. There are several single trigger conditions preset in the JTAG debugger, and each trigger condition corresponds to an action. The vehicle controller can only receive one trigger condition at a time through the JTAG interface and execute the corresponding action. After each action is executed, the vehicle controller returns an execution result. The host PC then obtains the returned execution result through the debugger, and the user troubleshoots the fault problem based on the execution result.

[0056] In the later stages of product development or after mass production, the JTAG interface will be removed or hidden for information security reasons because the permission level of the JTAG interface is too high. This makes it very difficult to debug the software of the vehicle controller after the product leaves the factory. When after-sales problems occur, engineers can only troubleshoot the problems by redeveloping a whole set of test software, which is not only inefficient but may even cause the problem to disappear unexpectedly and become impossible to troubleshoot, bringing after-sales risks.

[0057] To get rid of the reliance on the JTAG interface, refer to Figure 2 As shown, the present invention provides a software debugging system, including a controller and a host computer, wherein the host computer and the controller are connected via a communication interface other than a JTAG interface, for example, a CAN bus, Ethernet or Bluetooth is used to establish a communication connection.

[0058] When a communication interface other than the JTAG interface is used for connection, it is no longer limited by the debugging mode of the JTAG interface, and a more flexible debugging method can be used. In order to improve the flexibility of software debugging and broaden the scope of troubleshooting, the present invention develops new debugging software in the controller and redesigns the PC-side host software to adapt to it.

[0059] The following is a detailed description using different embodiments.

[0060] Example 1

[0061] This embodiment specifically describes the upper level.

[0062] A host computer, comprising:

[0063] Human-computer interaction interface and configuration information generation module;

[0064] The human-computer interaction interface includes a configuration information setting window;

[0065] The configuration information setting window includes a custom configuration information setting module;

[0066] The custom configuration information setting module is used to write custom trigger condition codes and custom action codes;

[0067] The configuration information generation module is used to generate a custom trigger source-action pair according to the written custom trigger condition code and custom action code and compile the custom trigger source-action.

[0068] By developing the trigger source-action pair configuration function in the upper computer, the software debugging program in the lower computer can be called, and a special debugger is no longer needed, reducing costs. The upper computer supports the writing of custom trigger condition codes and custom action codes through the human-computer interaction interface to generate custom trigger source-action pairs to meet the needs of troubleshooting new fault problems that emerge in an endless stream.

[0069] In this embodiment, the human-computer interaction interface further includes a compiler selection window, wherein the compiler selection window is used to provide compiler type options; and the configuration information generation module is used to compile the custom trigger source-action pair according to the selected compiler type.

[0070] Since different users are proficient in different programming languages, the compiler corresponding to the programming language can be selected through the compiler selection window to facilitate user use.

[0071] In this embodiment, the configuration information setting window also includes a native configuration information setting module;

[0072] The native configuration information setting module is used to provide native trigger condition options and native action type options;

[0073] The configuration information generation module is used to generate corresponding native trigger source-action pairs according to the selection results of native trigger conditions and native action types. Native trigger conditions and native action types can be freely matched, which improves the flexibility of software debugging.

[0074] In this embodiment, the configuration information generation module is used to logically combine the custom trigger source-action pair and the native trigger source-action pair to form a trigger source-action pair.

[0075] The native trigger source-action pair is combined with the custom trigger source-action pair to form a trigger source-action pair, transforming the single trigger source mode into a multi-trigger source mode to meet the needs of troubleshooting complex fault problems.

[0076] For example, the user sets the following trigger source-action pair in the host computer: "When the software executes to the 100th line and variable a*b>c, get the value of variable a and store the value of variable b in address 0x1000"; among them, "When the software executes to the 100th line" is the native trigger condition, and "Get the value of variable a" is the native action type; "When variable a*b>c" is the custom trigger condition, and "Store the value of variable b in address 0x1000" is the custom action type.

[0077] refer to Figure 3As shown, in this embodiment, the upper computer also includes a configuration message sending module for sending configuration messages, and the configuration message includes sending a new type configuration message; the new type configuration message includes a message header, a configuration field and a message tail; the message header of the new type configuration message stores a trigger source-action pair identification code; the configuration field is used to store the trigger source-action pair.

[0078] In this embodiment, the configuration domain includes a trigger condition configuration domain and a trigger action configuration domain. The trigger condition configuration domain allows configuration of a native trigger condition and / or a custom trigger condition, and the trigger action configuration domain allows configuration of several native trigger actions and / or a custom trigger action.

[0079] In order to facilitate the controller to identify custom trigger source-action pairs and native trigger source-action pairs, labels can also be set in the configuration message to distinguish them. For example, the label is set to 1 for the custom trigger source-action pair and the label is set to 0 for the native trigger source-action pair.

[0080] It meets the needs of flexibly matching native trigger source-action pairs with custom trigger source-action pairs according to actual conditions.

[0081] refer to Figure 4 As shown, in this embodiment, the configuration message also includes a deletion type configuration message; the deletion type configuration message includes a message header and a message tail; the message header of the deletion type configuration message stores a trigger source-action pair identification code corresponding to the trigger source-action pair to be deleted.

[0082] By sending a deletion configuration message, the trigger source-action pair in the lower computer is deleted to reduce the memory burden.

[0083] Example 2

[0084] This embodiment describes a controller. The controller in this embodiment is compatible with the host computer in Embodiment 1, can receive configuration messages sent by the host computer, and can feed back execution results to the host computer.

[0085] A controller, wherein a software debugging program is configured in the controller, referring to Figure 5 As shown, the software debugging procedure includes the following steps:

[0086] Receive trigger source-action pair,

[0087] When the trigger source-action pair includes a custom trigger source-action pair, the custom trigger source-action pair is temporarily stored in a random access memory; the custom trigger source-action pair includes a custom trigger condition and a custom action type, and correspondingly includes a custom trigger condition code and a custom action code;

[0088] When the trigger condition in the trigger source is met, the corresponding action code is executed;

[0089] Feedback execution results.

[0090] The custom trigger source-action pair in the present invention supports users to write corresponding codes for different fault problems (especially new and unique fault problems), which has extremely high flexibility and overcomes the limitation that the prior art can only troubleshoot preset fault problems. The custom trigger source-action pair is temporarily stored in the random access memory to realize dynamic loading of the custom trigger condition code and the custom action code. Due to the power-off volatility of the random access memory, the custom trigger source-action pair will not be retained after debugging is completed, avoiding the accumulation of too many custom trigger source-action pairs, thereby saving storage resources.

[0091] In this embodiment, the software debugging program further includes the following steps:

[0092] When the trigger source-action pair includes a native trigger source-action pair, the native trigger source-action pair includes a native trigger condition and a native action type, and the code of the corresponding native action type pre-stored in the read-only memory is called.

[0093] In this embodiment, the corresponding codes of the native trigger source-action pair have been preset in the lower computer. The native trigger source-action is used to troubleshoot common and widespread fault problems, which can improve debugging efficiency.

[0094] In this embodiment, the trigger source in the trigger source-trigger action pair is a logical combination of a custom trigger condition and a native trigger condition; the trigger action in the trigger source-trigger action pair is a logical combination of a custom action type and a native action type.

[0095] The native trigger source-action pair is combined with the custom trigger source-action pair to form a trigger source-action pair, transforming the single trigger source mode into a multi-trigger source mode to meet the needs of troubleshooting complex fault problems.

[0096] In this embodiment, the result message is used to feedback the execution result, refer to Figure 6 As shown, the result message includes a message header, an execution result field and a message tail; the message header of the result message stores a trigger source-action pair identification code; the execution result field is used to store the action type and the corresponding execution result.

[0097] The trigger source-action pair identification code can effectively associate the configuration message and the result message, which is convenient for receiving the corresponding result message after sending multiple messages. It is not necessary to wait for the result message feedback of the configuration message before sending the next configuration message, which can improve the efficiency of software debugging.

[0098] Example 3

[0099] This embodiment describes the interaction process between the host computer and the controller.

[0100] The software debugging function has high requirements for information security. In order to prevent hackers from exploiting it, an information security mechanism needs to be designed. For this reason, in this embodiment, the host computer also includes a security verification request module, which is used to send a security verification request and receive a security verification response after sending a configuration message. Accordingly, the controller performs a security verification before executing the trigger source-action pair. The requirements of the software debugging function for information security are met.

[0101] refer to Figure 7 As shown, this embodiment adopts the seed&key mechanism for security verification. If and only if the seed&key verification passes, the controller can execute the configuration message sent by the host computer.

[0102] Before sending the configuration message, the user configures it on the human-machine interface of the host computer. Figure 8 As shown, the trigger source-action pair is set according to actual needs. In the figure, "When data is accessed", "When the software executes to a certain place", and "When the software runs for a period of time" are all native trigger conditions, and "Get the value of data", "Get the value of MCU register", "Get runtime data", and "Get stack" are all native action types.

[0103] This embodiment is described by taking the following trigger source-action pair as an example: "When the software executes to line 100 and variable a*b>c, obtain the value of variable a and store the value of variable b in address 0x1000", then the corresponding software execution detailed process is as follows:

[0104] Step 1: The host computer sends a configuration message to the MCU, sets the trigger source to "when the software executes to line 100" and "variable a*b>c", and sets the actions to be executed under this condition to "get the value of variable a" and "store the value of variable b in address 0x1000";

[0105] Step 2: After receiving the configuration message from the host computer, the MCU determines that "variable a*b>c" is a custom trigger source and "store the value of variable b at address 0x1000" is a custom action, so the custom trigger source and the custom trigger action code are temporarily stored in the pre-allocated Ram space; it determines that "when the software executes to line 100" is a native trigger source and "get the value of variable a" is a native action type, and calls the native action type code pre-stored in the MCU; and starts waiting for the trigger condition to occur;

[0106] Step 3: If the trigger condition occurs, that is, "the software executes to line 100", the MCU checks whether the user-defined condition "variable a*b>c" is also met. If it is met, it executes the operations "get the value of variable a" and "store the value of variable b in address 0x1000".

[0107] Step 4: After the action is executed, the result message is fed back to the upper computer.

[0108] In the MCU upload result message, the ID in the result message header should be consistent with the ID in the configuration message. The result message data contains the trigger result field, which includes the results of multiple configured trigger actions, such as variable data, stack values, etc.

[0109] The communication protocol supports multiple sending and receiving. The correspondence between the configuration message and the result message is maintained by the "ID", i.e. the "trigger source-action pair identification code". Fig. 9 As shown in the figure: the host computer can send multiple configuration messages to the MCU, and it does not need to wait for the result message feedback of the configuration message before sending the next configuration message. After receiving multiple configuration messages, the MCU polls to determine whether the trigger source in each configuration message is satisfied. Each time a trigger source is satisfied, it executes one and saves the execution result in the corresponding result message. This can improve the efficiency of software debugging.

[0110] Obviously, the above embodiments are merely examples for the purpose of clear explanation, and are not intended to limit the implementation methods. For those skilled in the art, other different forms of changes or modifications can be made based on the above description. It is not necessary and impossible to list all the implementation methods here. The obvious changes or modifications derived therefrom are still within the scope of protection created by this application.

Claims

1. A software debugging method, characterized in that: The following steps are involved: receiving a trigger source-action pair; When the trigger source-action pair includes a custom trigger source-action pair, the custom trigger source-action pair is temporarily stored in a random access memory; the custom trigger source-action pair includes a custom trigger condition and a custom action type, and correspondingly includes a custom trigger condition code and a custom action code; When the trigger condition in the trigger source is met, the corresponding action code is executed; Feedback execution results.

2. The software debugging method according to claim 1, characterized in that: The following steps are also included: When the trigger source-action pair includes a native trigger source-action pair, the native trigger source-action pair includes a native trigger condition and a native action type, and the code of the corresponding native action type pre-stored in the read-only memory is called.

3. The software debugging method according to claim 2, characterized in that: The trigger source in the trigger source-trigger action pair is a logical combination of a custom trigger condition and a native trigger condition; the trigger action in the trigger source-trigger action pair is a logical combination of a custom action type and a native action type.

4. The software debugging method according to claim 2, characterized in that: The execution result is fed back using a result message, the result message includes a message header, an execution result field and a message tail; the message header of the result message stores a trigger source-action pair identification code; the execution result field is used to store the action type and the corresponding execution result.

5. The software debugging method according to claim 1, characterized in that: Before receiving a trigger source-action pair, a safety check is performed.

6. A controller, characterized in that: The controller is provided with a software debugging program, and the software debugging program is used to execute the software debugging method described in any one of claims 1 to 5.

7. A host computer, characterized in that: include: Human-computer interaction interface and configuration information generation module; The human-computer interaction interface includes a configuration information setting window; The configuration information setting window includes a custom configuration information setting module; The custom configuration information setting module is used to write custom trigger condition codes and custom action codes; The configuration information generation module is used to generate a custom trigger source-action pair according to the written custom trigger condition code and custom action code and compile the custom trigger source-action.

8. The host computer according to claim 7, characterized in that: The human-computer interaction interface further includes a compiler selection window, wherein the compiler selection window is used to provide compiler type options; the configuration information generation module is used to compile the custom trigger source-action pair according to the selected compiler type.

9. The host computer according to claim 7, characterized in that: The configuration information setting window also includes a native configuration information setting module; The native configuration information setting module is used to provide native trigger condition options and native action type options; The configuration information generation module is used to generate corresponding native trigger source-action pairs according to the selection results of the native trigger conditions and the native action types.

10. The host computer according to claim 7, characterized in that: The configuration information generation module is used to logically combine the custom trigger source-action pair and the native trigger source-action pair to form a trigger source-action pair.

11. The host computer according to claim 7, characterized in that: It also includes a configuration message sending module for sending configuration messages, wherein the configuration message includes sending a newly added configuration message; the newly added configuration message includes a message header, a configuration field and a message tail; the message header of the newly added configuration message stores a trigger source-action pair identification code; the configuration field is used to store the trigger source-action pair.

12. The host computer according to claim 11, characterized in that: The configuration domain includes a trigger condition configuration domain and a trigger action configuration domain. The trigger condition configuration domain allows configuration of a native trigger condition and / or a custom trigger condition, and the trigger action configuration domain allows configuration of several native trigger actions and / or a custom trigger action.

13. The host computer according to claim 11, characterized in that: The configuration message also includes a deletion type configuration message; the deletion type configuration message includes a message header and a message tail; the message header of the deletion type configuration message stores a trigger source-action pair identification code corresponding to the trigger source-action pair to be deleted.

14. The host computer according to claim 11, characterized in that: It also includes a security verification request module, which is used to send a security verification request and receive a security verification response after sending the configuration message.

15. A software debugging system, characterized in that: It comprises the controller as claimed in claim 7, and the host computer as claimed in any one of claims 7 to 14, wherein the host computer and the controller are connected via a communication interface other than the JTAG interface.

16. The software debugging system according to claim 15, characterized in that: The controller and the host computer are connected by CAN bus, Ethernet or Bluetooth.