Periodic message sending method and device for 429 bus
By determining the data type and increment value on the 429 bus and utilizing hardware to automatically match and send periodic messages, the problems of cumbersome operation and random message interference in the prior art are solved, achieving efficient, flexible and reliable data transmission.
Patent Information
- Application Number
- CN202411850374.2
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2024-12-16
- Publication Date
- 2025-10-28
- Estimated Expiration
- 2044-12-16
AI Technical Summary
The existing periodic message sending method on the 429 bus is cumbersome to operate, prone to human configuration errors, increases system management complexity and error risk, and may interfere with the periodic message state when random messages are inserted.
By determining the data type and data growth value corresponding to the periodic message, the message is written to the buffer. The hardware generates the current growth value when sending each frame of data and sends the message according to the target data type based on the growth value. It supports dynamic adjustment of data type and insertion of random messages.
It improves system configuration efficiency, enhances data transmission flexibility and reliability, optimizes hardware resource utilization, reduces the software's management burden on the transmission cycle, and improves system stability and reliability.
Smart Images

Figure CN119728614B_ABST
Abstract
Description
Technical Field
[0001] This disclosure relates to the field of computer information processing, and more specifically, to a method and apparatus for periodic message transmission on a 429 bus. Background Technology
[0002] Periodic messages on the 429 bus are widely used in commercial transportation and aviation. Currently, when sending periodic messages on the 429 bus, the software needs to perform precise pre-planning and arrangement based on the transmission cycles of different data types. Each data type has a different transmission cycle, and the software must pre-determine the cycle order of each data type and then write them to the buffer at specified time intervals to ensure that each type of data is sent at the correct time. This means that every time a new data type is configured or the transmission cycle of existing data is adjusted, the software needs to recalculate and rearrange the entire periodic message order and update the data transmission plan. This method is not only time-consuming but also requires very precise time management and is prone to human error.
[0003] Furthermore, the insertion of random messages adds further complexity. Since the timing of random message transmission is unpredictable, when a random message is inserted into an ongoing periodic message sequence, it may interfere with the current state of the periodic messages, leading to transmission errors or delays. Therefore, the software must re-coordinate the state of the periodic messages when a random message is inserted to avoid affecting the data being transmitted. This requires the software to continuously monitor and adjust the transmission plan in real time while processing both periodic and random messages, increasing the system's workload and maintenance difficulty.
[0004] The current 429 bus cycle message sending method is not only cumbersome to operate, but also has the potential to interfere with the cycle message status, increasing the system's management complexity and the risk of errors.
[0005] Therefore, a new method and apparatus for sending periodic messages on the 429 bus are needed.
[0006] The information disclosed in the background section is only intended to enhance the understanding of the background of this application, and therefore may include information that does not constitute prior art known to those skilled in the art. Summary of the Invention
[0007] In view of this, this application provides a method and apparatus for periodic message transmission on a 429 bus, which can improve system configuration efficiency, enhance data transmission flexibility and reliability, optimize hardware resource utilization, reduce the software's management burden on the transmission cycle, and improve system stability and reliability.
[0008] Other features and advantages of the present application will become apparent from the following detailed description, or may be learned in part by practice of the present application.
[0009] According to one aspect of this application, a method for transmitting periodic messages on a 429 bus is proposed. The method includes: determining the data type and data increment value corresponding to the periodic message, wherein the periodic message includes a periodic message for the 429 bus; writing the periodic message into a buffer; generating a current increment value based on the current frame count when transmitting each frame of data; matching the current increment value and the data increment value to determine a target data type; and extracting the corresponding periodic message based on the target data type for transmission.
[0010] In one exemplary embodiment of this application, the method further includes: generating an updated growth value when modifying the transmission period of an existing data type; replacing the data growth value corresponding to the data type with the updated growth value; and automatically updating the transmission period of the data type according to the updated growth value when the hardware transmits each frame of data.
[0011] In one exemplary embodiment of this application, the method further includes: when adding a data type, determining the data growth value corresponding to the added data type; writing the periodic message corresponding to the added data type into a buffer; and the hardware automatically sending the periodic message according to the updated buffer content when each frame of data is sent.
[0012] In one exemplary embodiment of this application, the method further includes: configuring the number of the random message to be sent; writing the random message into a buffer; after each message is sent, the hardware checks whether there is a random message in the buffer; when there is a random message, inserting the random message into the periodic message for transmission according to the number.
[0013] In one exemplary embodiment of this application, when a random message exists, inserting the random message into a periodic message for transmission according to the number includes: when the random message is a high-priority random message and the current transmission position is not at the end of a frame, inserting the random message immediately after the current periodic message is transmitted; when the random message is a high-priority random message, the current transmission position is at the end of a frame, and the remaining time is greater than the random message transmission time, inserting the random message immediately for transmission; and when the random message is a high-priority random message, the current transmission position is at the end of a frame, and the remaining time is less than the random message transmission time, inserting the random message in the next frame for transmission.
[0014] In one exemplary embodiment of this application, when a random message exists, inserting the random message into a periodic message for transmission according to the number includes: when the random message is a low-priority random message, the current transmission position is at the end of a frame, and the remaining time is greater than the random message transmission time, transmitting the random message; when the random message is a low-priority random message, and the remaining time is less than the random message transmission time, determining whether to transmit the random message at the end of the next frame based on the remaining time.
[0015] In one exemplary embodiment of this application, determining the data type and data increment value corresponding to the periodic message to be sent includes: determining the data type and its corresponding increment value based on the transmission period of the periodic message of the 429 bus to be sent.
[0016] In one exemplary embodiment of this application, before generating the current increment value based on the current frame count when each frame of data is transmitted, the hardware further includes: clearing the frame count to zero when the periodic message is initiated; and updating the frame count after each frame of data is transmitted.
[0017] In one exemplary embodiment of this application, matching the current growth value and the data growth value to determine the target data type includes: matching the current growth value and the data growth value; and extracting the data type corresponding to the successfully matched data growth value as the target data type.
[0018] According to one aspect of this application, a periodic message transmission device for a 429 bus is proposed. The device includes: a message module for determining the data type and data increment value corresponding to a periodic message to be transmitted, wherein the periodic message includes periodic messages for the 429 bus; a buffer module for writing the periodic message into a buffer; a counting module for generating a current increment value based on the current frame count during each data frame transmission; a matching module for matching the current increment value and the data increment value to determine a target data type; and a transmission module for extracting the corresponding periodic message based on the target data type for transmission.
[0019] According to one aspect of this application, an electronic device is provided, comprising: one or more processors; a storage device for storing one or more programs; and, when the one or more programs are executed by the one or more processors, causing the one or more processors to implement the method as described above.
[0020] According to one aspect of this application, a computer-readable medium is provided having a computer program stored thereon that, when executed by a processor, implements the method described above.
[0021] According to the periodic message transmission method and apparatus for 429 bus of this application, by determining the data type and data increment value corresponding to the periodic message, the periodic message including periodic messages for 429 bus; writing the periodic message into a buffer; generating a current increment value based on the current frame count when the hardware transmits each frame of data; matching the current increment value and the data increment value to determine the target data type; and extracting the corresponding periodic message based on the target data type for transmission, the system configuration efficiency can be improved, the flexibility and reliability of data transmission can be enhanced, the hardware resource utilization can be optimized, the software management burden on the transmission cycle can be reduced, and the system stability and reliability can be improved.
[0022] It should be understood that the above general description and the following detailed description are merely exemplary and do not limit this application. Attached Figure Description
[0023] The above and other objects, features, and advantages of this application will become more apparent from the detailed description of exemplary embodiments with reference to the accompanying drawings. The drawings described below are merely some embodiments of this application, and those skilled in the art can obtain other drawings based on these drawings without any inventive effort.
[0024] Figure 1 This is a flowchart illustrating a periodic message transmission method for a 429 bus according to an exemplary embodiment.
[0025] Figure 2 This is a schematic diagram illustrating a periodic message transmission method for a 429 bus according to an exemplary embodiment.
[0026] Figure 3 This is a flowchart illustrating a periodic message transmission method for a 429 bus according to another exemplary embodiment.
[0027] Figure 4 This is a schematic diagram illustrating a periodic message transmission method for a 429 bus according to another exemplary embodiment.
[0028] Figure 5 This is a flowchart illustrating a periodic message transmission method for a 429 bus according to another exemplary embodiment.
[0029] Figure 6 This is a block diagram illustrating a periodic message transmission device for a 429 bus according to an exemplary embodiment.
[0030] Figure 7 This is a block diagram illustrating an electronic device according to an exemplary embodiment.
[0031] Figure 8This is a block diagram illustrating a computer-readable medium according to an exemplary embodiment. Detailed Implementation
[0032] Exemplary embodiments will now be described more fully with reference to the accompanying drawings. However, these exemplary embodiments can be implemented in many forms and should not be construed as limited to the embodiments set forth herein; rather, they are provided so that this application will be thorough and complete, and will fully convey the concept of the exemplary embodiments to those skilled in the art. The same reference numerals in the drawings denote the same or similar parts, and therefore repeated descriptions of them will be omitted.
[0033] Furthermore, the described features, structures, or characteristics can be combined in any suitable manner in one or more embodiments. Numerous specific details are provided in the following description to give a thorough understanding of embodiments of this application. However, those skilled in the art will recognize that the technical solutions of this application can be practiced without one or more of the specific details, or other methods, components, apparatuses, steps, etc., can be employed. In other instances, well-known methods, apparatuses, implementations, or operations are not shown or described in detail to avoid obscuring various aspects of this application.
[0034] The block diagrams shown in the accompanying drawings are merely functional entities and do not necessarily correspond to physically independent entities. That is, these functional entities can be implemented in software, in one or more hardware modules or integrated circuits, or in different network and / or processor devices and / or microcontroller devices.
[0035] The flowcharts shown in the accompanying drawings are merely illustrative and do not necessarily include all content and operations / steps, nor do they necessarily have to be performed in the described order. For example, some operations / steps can be broken down, while others can be combined or partially combined; therefore, the actual execution order may change depending on the specific circumstances.
[0036] It should be understood that although the terms first, second, third, etc., may be used herein to describe various components, these components should not be limited by these terms. These terms are used to distinguish one component from another. Therefore, the first component discussed below may be referred to as the second component without departing from the teachings of this application. As used herein, the term "and / or" includes all combinations of any one and more of the associated listed items.
[0037] Those skilled in the art will understand that the accompanying drawings are merely schematic diagrams of exemplary embodiments, and the modules or processes in the drawings are not necessarily essential for implementing this application, and therefore cannot be used to limit the scope of protection of this application.
[0038] Figure 1This is a flowchart illustrating a periodic message transmission method for a 429 bus according to an exemplary embodiment. The periodic message transmission method 10 for a 429 bus includes at least steps S102 to S110.
[0039] like Figure 1 As shown, in S102, the data type and data increment value corresponding to the periodic message are determined. The periodic message includes periodic messages used for the 429 bus. The data type and its corresponding increment value are determined based on the transmission period of the periodic message to be transmitted on the 429 bus.
[0040] More specifically, the data increment value is configured based on the message sending period. For example, for a data type with a sending period of 50ms, the increment value is configured as 1, while for a data type with a sending period of 100ms, the increment value is 2. This data increment value reflects the increasing pattern of the data type in the frame count, making it easier for subsequent hardware to identify the target message through simple calculations.
[0041] In S104, the periodic message is written to the buffer. The buffer becomes the main storage area for periodic message management. During the transmission process on the 429 bus, the buffer can automatically extract the message to be sent from the defined periodic messages according to hardware instructions, ensuring that the periodic messages are automatically scheduled according to the set growth value.
[0042] In S106, the hardware generates a current increment value based on the current frame count when each data frame is transmitted. The hardware generates and records the current frame increment value each time a data frame is transmitted. At the initial stage of the transmission cycle signal, the hardware resets the frame count to zero and increments it after each completed data frame transmission, thus managing the message cycle through the accumulation of the increment value.
[0043] In one embodiment, the hardware further includes: resetting the frame count to zero when the startup cycle message is sent; and updating the frame count after each frame of data has been sent.
[0044] In S108, the current growth value and the data growth value are matched to determine the target data type. The current growth value and the data growth value can be matched; the data type corresponding to the successfully matched data growth value is extracted as the target data type.
[0045] More specifically, the hardware compares the current growth value with the growth values of various data types in the buffer. Through this matching process, the hardware can automatically determine the target data type that the current frame needs to be sent. For a successfully matched growth value, the hardware extracts its corresponding data type as the target data type for that frame, ensuring that each periodic message is sent accurately at the set time interval.
[0046] In S110, the corresponding periodic message is extracted and sent according to the target data type. For example, the hardware can extract the periodic message corresponding to the target data type and send it, thereby completing the task of sending the periodic message for that frame. This step ensures that each frame can accurately send a target data type message that matches the current growth value, avoiding the problem of manually adjusting the order of periodic messages due to changes in data type.
[0047] In one embodiment, the method further includes: generating an updated growth value when modifying the transmission period of an existing data type; replacing the data growth value corresponding to the data type with the updated growth value; and automatically updating the transmission period of the data type according to the updated growth value when the hardware transmits each frame of data.
[0048] If the transmission cycle of a certain data type needs to be adjusted, the hardware generates an updated increment value and replaces the original increment value of that data type in the buffer with the updated value. By updating the increment value, the hardware can automatically adjust the transmission frequency of periodic messages, so that newly added or modified periodic messages can be seamlessly integrated into the existing periodic message sequence without manual intervention, thereby improving the flexibility and scalability of the 429 bus periodic message transmission method.
[0049] Figure 2 This is a schematic diagram illustrating a periodic message transmission method for a 429 bus according to an exemplary embodiment, such as... Figure 2 As shown, the data transmission period per frame is configured to be 50ms. Three data types need to be sent, with transmission periods of 50ms, 100ms, and 200ms respectively, corresponding to increment values of 1, 2, and 4. The increment value increases by 1 with each frame sent. Data A is sent in frames where the increment value increases by 1, data B is sent in frames where the increment value increases by 2, and data C is sent in frames where the increment value increases by 4.
[0050] More specifically, each time a frame of data is sent, the hardware accumulates the increment values corresponding to the transmission cycles of all data types. Data determines whether it needs to be sent in the current cycle based on its increment value. For example, if data A has an increment value of 1, it means that it will be sent every frame. If data B has an increment value of 2, it means that it will be sent once every one frame. If data C has an increment value of 4, it means that it will be sent once every four frames.
[0051] According to the above settings, the transmission order of periodic data is as follows:
[0052] Frame 1: Data A, Data B, Data C;
[0053] Frame 2: Data A;
[0054] Frame 3: Data A, Data B;
[0055] Frame 4: Data A, Data B, Data C;
[0056] Frame 5: Data A;
[0057] Frame 6: Data A, Data B;
[0058] Send the data in a cyclical manner according to the above number of cycles until the set time is reached.
[0059] The send count can be preset. It starts at 0 when the current frame is sent and continues until the count reaches the preset value, indicating that the current frame has been sent. The count starts again in the next cycle of message sending. It is worth mentioning that the administrator can set a larger count setting to ensure that all data is sent within the time frame included in the setting.
[0060] According to the periodic message transmission method for the 429 bus of this application, by determining the data type and data increment value corresponding to the periodic message, the periodic message includes a periodic message for the 429 bus; writing the periodic message into a buffer; generating a current increment value based on the current frame count when the hardware transmits each frame of data; matching the current increment value and the data increment value to determine the target data type; and extracting the corresponding periodic message based on the target data type for transmission, this method can improve the system configuration efficiency, enhance the flexibility and reliability of data transmission, optimize hardware resource utilization, reduce the software's management burden on the transmission cycle, and improve the system's stability and reliability.
[0061] It should be clearly understood that this application describes how specific examples are formed and used, but the principles of this application are not limited to any details of these examples. Rather, based on the teachings of the disclosure of this application, these principles can be applied to many other embodiments.
[0062] Figure 3 This is a flowchart illustrating a periodic message transmission method for a 429 bus according to another exemplary embodiment. Figure 3 The process shown in step 30 is... Figure 1 Supplementary description of the process shown. Figure 3 The illustrated process 30 demonstrates a periodic message transmission method for the 429 bus, further describing how the hardware handles newly added data types and their corresponding increment values when dynamically adjusting the transmission cycle of data types. This process is... Figure 1 The periodic message sending method in the system provides flexible extension support, enabling the system to dynamically adjust message content and sending frequency without affecting the current periodic message transmission.
[0063] like Figure 3As shown in S302, when adding a data type, the corresponding data growth value is determined. When a new data type needs to be added, the sending period of that data type is first determined, and a corresponding data growth value is assigned. The selection of the growth value is based on the sending period of the new data, ensuring that the new data type can be sent in the periodic message queue at appropriate intervals. For example, if the sending period of the new data type is 100ms, the system will automatically configure a growth value of 2 for that data type to keep it synchronized with other data types. This setting of the growth value ensures that the sending order between messages of different periods will not be disrupted, achieving a smooth connection of data sending.
[0064] In S304, the periodic message corresponding to the newly added data type is written to the buffer. The buffer can then arrange the new data type according to its updated growth value, or leave the original order unchanged. The buffer stores the periodic messages corresponding to the data type, allowing the hardware to automatically select the message content to send based on the growth value when transmitting each data frame. This process automates the addition of periodic messages without requiring manual intervention in the data transmission schedule.
[0065] In S306, the hardware automatically sends periodic messages based on the updated buffer content each time a data frame is transmitted. The hardware can automatically adjust the periodic messages being sent based on the updated content in the buffer each time a data frame is transmitted. The hardware adds new data types to the current transmission sequence in an orderly manner according to their growth values. During actual transmission, the hardware checks the current growth value to ensure that each data type is sent according to its set periodic order. The hardware's automated scheduling capability makes the entire message transmission process more efficient, while also ensuring that new data types do not affect the normal transmission of other periodic messages, thus ensuring the stability and efficiency of the system.
[0066] In this embodiment, the hardware frame processing logic allows for the addition, deletion, and adjustment of data types in the buffer during uninterrupted message transmission, enabling real-time dynamic message updates. This method not only adapts to newly added data types but also quickly responds to changes in system configuration, making the application of the 429 bus in the commercial aviation field more flexible and controllable, and providing technical support for the real-time transmission of multiple data types.
[0067] Figure 4 This is a schematic diagram illustrating a periodic message transmission method for a 429 bus according to another exemplary embodiment. After adding a new data type and increment value, the hardware automatically adds the new data type to the transmission frame corresponding to the periodic message. For example, the transmission period for newly added data D is 100ms, i.e., the increment value is 2. The transmission process is as follows: Figure 4 As shown.
[0068] Based on the above settings, after adding data D, the data transmission order is as follows:
[0069] Frame n: Data A, Data B, Data C, Data D;
[0070] Frame (n+1): Data A;
[0071] Frame n+2: Data A, Data B, Data D;
[0072] Frame (n+3): Data A;
[0073] Frame n+4: Data A, Data B, Data C, Data D;
[0074] Frame (n+5): Data A;
[0075] Frame n+6: Data A, Data B, Data D;
[0076] Frame (n+7): Data A;
[0077] Frame n+8: Data A, Data B, Data C, Data D;
[0078] Send the data in a cyclical manner according to the above number of cycles until the set time is reached.
[0079] In another embodiment, when adding a new 500ms periodic message E, since the period of the new periodic message is greater than the period of the existing periodic signal, the data growth value needs to be reset. When the new period is 500ms, the growth value of this data type needs to be calculated first. 500ms is 10 times the minimum period (50ms), so the growth value of the new data type is 10.
[0080] The system accumulates the increment value in each frame according to the following rules:
[0081] Each time the frame increment value is increased by 1, a data type (data A) with a period of 50ms is sent.
[0082] Each time the frame increment value increases by 2, a data type (data B) with a transmission period of 100ms is sent.
[0083] Each time the frame increment value increases by 4, a data type (data C) with a transmission period of 200ms is sent.
[0084] Each time the frame increment value increases by 10, a new data type (data E) with a transmission period of 500ms is sent.
[0085] The hardware determines whether a frame should send the corresponding data type based on the increment value. For example, when the frame reaches the 10th frame (increment value of 10), the system will send the newly added 500ms periodic data E, and may also send data with 50ms and 100ms periods. If the frame only contains 500ms of data and there are no other matching increment values, then only the 500ms data will be sent.
[0086] In summary, the newly added 500ms data type will be controlled by an increment value of 10. The system will adaptively send the new data at the correct frame period while maintaining the correct transmission of messages in other periods.
[0087] Figure 5 This is a flowchart illustrating a periodic message transmission method for a 429 bus according to another exemplary embodiment. Figure 5 The process shown in step 50 is... Figure 1 Supplementary description of the process shown.
[0088] like Figure 5 As shown, in S502, the number of the random message to be sent is configured. A random message refers to a sequence of messages randomly inserted into a periodic message sequence. Random message sequences can only be inserted when periodic messages are running. The number of random messages inserted is determined by the buffer resources. For example, if the buffer can store a maximum of 1023 messages, and the random message numbers start from 1000, then a maximum of 23 random messages can be sent at once. One or multiple random messages can be inserted. After each message is sent, the underlying hardware checks if there are any non-periodic messages in the buffer; if so, they are sent first.
[0089] To improve the timeliness of random messages, it is recommended to add some delayed messages within each frame, ensuring sufficient insertion points in each frame. This design significantly increases the opportunities for random message insertion, facilitating timely delivery and improving message processing flexibility and response speed.
[0090] In one specific embodiment, for example, 1000-1023 can be set as random message numbers. Random messages can only be written up to these positions, and must start writing from the number 1000. For example, if there is only one random message, it can only be written up to the position with the number 1000.
[0091] In S504, the random message is written to the buffer.
[0092] In S506, after each message is sent, the hardware checks the buffer for a random message. Since the random message is sent randomly, its insertion position is also random. If a periodic message is currently being sent, it will be sent first, and then the random message will be inserted after the completed message. If the current periodic message has just finished sending and the next periodic message has not yet started, the random message will be sent first, and then the periodic message will continue to be sent.
[0093] That is, after each periodic message is sent, it checks whether there is a random message. If there is, it sends a random message; otherwise, it continues to send periodic messages.
[0094] In S508, when a random message exists, it is inserted into the periodic message sequence according to its assigned number. For example, if a high-priority random message is sent outside the frame tail message sequence, it enters the random message transmission sequence after the current message is completed, and then enters the main message loop. If the random message transmission takes too long, it may lengthen the total transmission period of the current frame, but it will not affect the transmission period of the next frame. If it occurs outside the frame tail message sequence, it is determined whether the time required to send the random message exceeds the remaining frame time. If it does not exceed the remaining frame time, the random message is sent; otherwise, it is not sent in the current frame but at the beginning of the next frame.
[0095] For example, low-priority random messages are only sent after the end-of-frame messages. If the time required to send a random message exceeds the remaining frame time, the random message cannot be sent in this frame; otherwise, it is sent. If a random message cannot be sent in this frame, the time required to send it is checked at the end of the next frame to see if it exceeds the remaining frame time. If it does, the above steps are repeated.
[0096] In one embodiment, when the random message is a high-priority random message and the current sending position is not the end of the frame, the random message is inserted immediately after the current periodic message is sent to enable transmission.
[0097] In one embodiment, if the random message is a high-priority random message, the current sending position is at the end of a frame, and the remaining time is greater than the random message sending time, then the random message is immediately inserted for transmission.
[0098] In one embodiment, if the random message is a high-priority random message, the current sending position is at the end of a frame, and the remaining time is less than the random message sending time, then the random message is inserted into the next frame for transmission.
[0099] In one embodiment, the random message is sent when the random message is a low-priority random message, the current sending position is at the end of a frame, and the remaining time is greater than the random message sending time.
[0100] In one embodiment, when the random message is a low-priority random message and the remaining time is less than the random message sending time, it is determined whether to send the random message at the end of the next frame based on the remaining time.
[0101] In summary, the periodic message transmission method for the 429 bus of this application allows for configuration of data type increment values. When changing the data transmission period, only the corresponding increment value needs to be adjusted, without needing to rearrange the transmission order, thus reducing the complexity and workload of software configuration. It also enables adaptive periodic message transmission. When adding or deleting data types, the hardware can automatically adjust the periodic message sequence without additional manual intervention.
[0102] The periodic message transmission method for the 429 bus described in this application allows for flexible addition or removal of data types. Newly added data types can be quickly integrated into existing transmission cycles, while removing data types does not affect the normal transmission of other data. This gives the method good scalability in the face of system upgrades or changes in data types. It also supports the flexible insertion of random messages, sending them based on the current periodic message transmission status to avoid interfering with normal periodic message transmission. High-priority and low-priority random messages have clear processing strategies to ensure that important data is sent in a timely manner.
[0103] Those skilled in the art will understand that all or part of the steps of the above embodiments are implemented as a computer program executed by a CPU. When the computer program is executed by the CPU, it performs the functions defined by the method provided in this application. The program can be stored in a computer-readable storage medium, such as a read-only memory, a magnetic disk, or an optical disk.
[0104] Furthermore, it should be noted that the above figures are merely illustrative representations of the processes included in the method according to exemplary embodiments of this application, and are not intended to be limiting. It is readily understood that the processes shown in the above figures do not indicate or limit the temporal order of these processes. Additionally, it is readily understood that these processes may be executed synchronously or asynchronously, for example, in multiple modules.
[0105] The following are embodiments of the apparatus described in this application, which can be used to execute the embodiments of the method described in this application. For details not disclosed in the apparatus embodiments of this application, please refer to the embodiments of the method described in this application.
[0106] Figure 6 This is a block diagram illustrating a periodic message transmission apparatus for a 429 bus according to another exemplary embodiment. Figure 6 As shown, the periodic message sending device 60 for the 429 bus includes: a message module 602, a buffer module 604, a counting module 606, a matching module 608, and a sending module 610.
[0107] The message module 602 is used to determine the data type and data increment value corresponding to the periodic message to be sent, wherein the periodic message includes periodic messages for the 429 bus;
[0108] Cache module 604 is used to write the periodic message into the cache area;
[0109] The counting module 606 is used in hardware to generate a current increment value based on the current frame count when each frame of data is transmitted;
[0110] The matching module 608 is used to match the current growth value and the data growth value to determine the target data type;
[0111] The sending module 610 is used to extract the corresponding periodic message according to the target data type for sending.
[0112] According to the periodic message transmission apparatus for the 429 bus of this application, by determining the data type and data increment value corresponding to the periodic message, the periodic message including periodic messages for the 429 bus; writing the periodic message into a buffer; generating a current increment value based on the current frame count when the hardware transmits each frame of data; matching the current increment value and the data increment value to determine the target data type; and extracting the corresponding periodic message based on the target data type for transmission, the configuration efficiency of the system can be improved, the flexibility and reliability of data transmission can be enhanced, the utilization rate of hardware resources can be optimized, the management burden of the transmission cycle on the software can be reduced, and the stability and reliability of the system can be improved.
[0113] Figure 7 This is a block diagram illustrating an electronic device according to an exemplary embodiment.
[0114] The following reference Figure 7 To describe an electronic device 700 according to this embodiment of the present application. Figure 7 The electronic device 700 shown is merely an example and should not impose any limitations on the functionality and scope of use of the embodiments of this application.
[0115] like Figure 7 As shown, the electronic device 700 is presented in the form of a general-purpose computing device. The components of the electronic device 700 may include, but are not limited to: at least one processing unit 710, at least one storage unit 720, a bus 730 connecting different system components (including storage unit 720 and processing unit 710), a display unit 740, etc.
[0116] The storage unit stores program code that can be executed by the processing unit 710, causing the processing unit 710 to perform the steps described in this specification according to various exemplary embodiments of this application. For example, the processing unit 710 can perform actions such as... Figure 1 , Figure 3 , Figure 4 The steps are shown in the figure.
[0117] The storage unit 720 may include a readable medium in the form of a volatile storage unit, such as a random access memory unit (RAM) 7201 and / or a cache storage unit 7202, and may further include a read-only memory unit (ROM) 7203.
[0118] The storage unit 720 may also include a program / utility 7204 having a set (at least one) program module 7205, such program module 7205 including but not limited to: an operating system, one or more application programs, other program modules and program data, each or some combination of these examples may include an implementation of a network environment.
[0119] Bus 730 can represent one or more of several types of bus structures, including a memory cell bus or memory cell controller, a peripheral bus, a graphics acceleration port, a processing unit, or a local bus using any of the various bus structures.
[0120] Electronic device 700 can also communicate with one or more external devices 700' (e.g., keyboard, pointing device, Bluetooth device, etc.), enabling users to communicate with devices that interact with electronic device 700, and / or any device (e.g., router, modem, etc.) that allows electronic device 700 to communicate with one or more other computing devices. This communication can be performed via input / output (I / O) interface 750. Furthermore, electronic device 700 can also communicate with one or more networks (e.g., local area network (LAN), wide area network (WAN), and / or public networks, such as the Internet) via network adapter 760. Network adapter 760 can communicate with other modules of electronic device 700 via bus 730. It should be understood that, although not shown in the figures, other hardware and / or software modules can be used in conjunction with electronic device 700, including but not limited to: microcode, device drivers, redundant processing units, external disk drive arrays, RAID systems, tape drives, and data backup storage systems.
[0121] From the above description of the embodiments, those skilled in the art will readily understand that the exemplary embodiments described herein can be implemented by software, or by combining software with necessary hardware. Therefore, as... Figure 8As shown, the technical solution according to the embodiments of this application can be embodied in the form of a software product. The software product can be stored in a non-volatile storage medium (such as a CD-ROM, USB flash drive, mobile hard drive, etc.) or on a network, and includes several instructions to cause a computing device (such as a personal computer, server, or network device, etc.) to execute the above-described method according to the embodiments of this application.
[0122] The software product may employ any combination of one or more readable media. A readable medium may be a readable signal medium or a readable storage medium. A readable storage medium may be, for example, but not limited to, an electrical, magnetic, optical, electromagnetic, infrared, or semiconductor system, apparatus, or device, or any combination thereof. More specific examples of readable storage media (a non-exhaustive list) include: electrical connections with one or more wires, portable disks, hard disks, random access memory (RAM), read-only memory (ROM), erasable programmable read-only memory (EPROM or flash memory), optical fibers, portable compact disk read-only memory (CD-ROM), optical storage devices, magnetic storage devices, or any suitable combination thereof.
[0123] The computer-readable storage medium may include data signals propagated in baseband or as part of a carrier wave, carrying readable program code. Such propagated data signals may take various forms, including but not limited to electromagnetic signals, optical signals, or any suitable combination thereof. The readable storage medium may also be any readable medium other than a readable storage medium, capable of transmitting, propagating, or transmitting programs for use by or in connection with an instruction execution system, apparatus, or device. The program code contained on the readable storage medium may be transmitted using any suitable medium, including but not limited to wireless, wired, optical fiber, RF, etc., or any suitable combination thereof.
[0124] Program code for performing the operations of this application can be written in any combination of one or more programming languages, including object-oriented programming languages such as Java and C++, and conventional procedural programming languages such as C or similar languages. The program code can execute entirely on the user's computing device, partially on the user's device, as a standalone software package, partially on the user's computing device and partially on a remote computing device, or entirely on a remote computing device or server. In cases involving remote computing devices, the remote computing device can be connected to the user's computing device via any type of network, including a local area network (LAN) or a wide area network (WAN), or it can be connected to an external computing device (e.g., via the Internet using an Internet service provider).
[0125] The aforementioned computer-readable medium carries one or more programs that, when executed by a device, cause the computer-readable medium to perform the following functions: determine the data type and data increment value corresponding to a periodic message, the periodic message including a periodic message for the 429 bus; write the periodic message into a buffer; generate a current increment value based on the current frame count when each frame of data is transmitted; match the current increment value and the data increment value to determine a target data type; and extract the corresponding periodic message based on the target data type for transmission.
[0126] Those skilled in the art will understand that the above modules can be distributed in the device as described in the embodiments, or they can be modified accordingly and placed in one or more devices that are unique to this embodiment. The modules in the above embodiments can be combined into one module, or they can be further divided into multiple sub-modules.
[0127] Through the description of the above embodiments, those skilled in the art will readily understand that the exemplary embodiments described herein can be implemented by software or by combining software with necessary hardware. Therefore, the technical solutions according to the embodiments of this application can be embodied in the form of a software product, which can be stored in a non-volatile storage medium (such as a CD-ROM, USB flash drive, external hard drive, etc.) or on a network, including several instructions to cause a computing device (such as a personal computer, server, mobile terminal, or network device, etc.) to execute the methods according to the embodiments of this application.
[0128] Exemplary embodiments of this application have been specifically shown and described above. It should be understood that this application is not limited to the detailed structures, arrangements, or implementation methods described herein; rather, this application is intended to cover various modifications and equivalent arrangements contained within the spirit and scope of the appended claims.
Claims
1. A method for transmitting periodic messages on a 429 bus, characterized in that, include: Determine the data type and data increment value corresponding to the periodic message, wherein the periodic message includes periodic messages for the 429 bus; Write the periodic message into the buffer; The hardware generates the current increment value based on the current frame count when each frame of data is sent; The current growth value and the data growth value are matched to determine the target data type; Extract the corresponding periodic messages based on the target data type and send them.
2. The method as described in claim 1, characterized in that, Also includes: When modifying the sending cycle of an existing data type, generate an updated increment value; Replace the data growth value corresponding to the data type with the updated growth value; The hardware automatically updates the transmission period of the data type according to the update increment value when each frame of data is transmitted.
3. The method as described in claim 1, characterized in that, Also includes: When adding a data type, determine the corresponding data growth value for the added data type; Write the periodic messages corresponding to the added data types to the buffer; The hardware automatically sends periodic messages based on the updated buffer content when each frame of data is sent.
4. The method as described in claim 1, characterized in that, Also includes: Configure the number of the random message to be sent; Write the random message into the buffer; After each message is sent, the hardware checks the buffer for any random messages. When a random message exists, the random message is inserted into the periodic message and sent according to the number.
5. The method as described in claim 4, characterized in that, When a random message exists, the random message is inserted into the periodic message and sent according to the number, including: When the random message is a high-priority random message and the current sending position is not the end of the frame, the random message is inserted immediately after the current period message is sent to send it. If the random message is a high-priority random message, the current sending position is at the end of the frame, and the remaining time is greater than the random message sending time, then the random message is immediately inserted for sending. If the random message is a high-priority random message, the current sending position is at the end of the frame, and the remaining time is less than the random message sending time, then the random message will be inserted into the next frame for transmission.
6. The method as described in claim 4, characterized in that, When a random message exists, the random message is inserted into the periodic message and sent according to the number, including: The random message is sent when the random message is a low-priority random message, the current sending position is at the end of the frame, and the remaining time is greater than the random message sending time. If the random message is a low-priority random message and the remaining time is less than the random message sending time, the decision on whether to send the random message is made at the end of the next frame based on the remaining time.
7. The method as described in claim 1, characterized in that, Determine the data type and data increment value of the periodic message to be sent, including: The data type and its corresponding increment value are determined based on the transmission cycle of the periodic message to be sent on the 429 bus.
8. The method as described in claim 1, characterized in that, The hardware generates a current increment value based on the current frame count when each frame of data is transmitted, and also includes: The hardware resets the frame count to zero when sending the startup cycle message; The hardware updates the frame count after each frame of data has been sent.
9. The method as described in claim 1, characterized in that, Matching the current growth value and the data growth value to determine the target data type includes: Match the current growth value with the data growth value; Extract the data type corresponding to the successfully matched data growth value as the target data type.
10. A periodic message transmitting device for a 429 bus, characterized in that, include: The message module is used to determine the data type and data increment value of the periodic message to be sent, wherein the periodic message includes periodic messages for the 429 bus; The caching module is used to write the periodic messages into the cache area; The counting module is used by the hardware to generate the current increment value based on the current frame count when each frame of data is sent. The matching module is used to match the current growth value and the data growth value to determine the target data type; The sending module is used to extract the corresponding periodic message based on the target data type for sending.
Citation Information
Patent Citations
Balanced distribution method for periodic bus messages
CN108092865A
Distributed multi-host communication system, functional module and communication method thereof
CN111541598A