A CAN bus remote control telemetry processing method for satellite-borne GNSS occultation payload
By introducing the CAN bus data frame reception module and cache module in the satellite-borne GNSS occultation payload, combined with the interrupt and timer processing mechanism, the problem of uncertain processing time of the satellite-borne GNSS occultation payload in the CAN bus data reception is solved, and the problem of uncertainty in the processing time of the satellite-borne GNSS occultation payload in the CAN bus data reception is realized. Stable reception and timely response of data frames are achieved.
Patent Information
- Application Number
- CN202410804052.8
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2024-06-21
- Publication Date
- 2025-01-03
- Estimated Expiration
- 2044-06-21
AI Technical Summary
When receiving the CAN bus data, the processing time is uncertain due to the interrupt processing method, which may cause the data frame missed and incomplete reception.
The CAN bus data frame receiving module and data frame cache module are used to receive data frames through the interrupt processing function and cache and process them in the timer interrupt processing function to ensure the integrity and stability of the data frame.
The CAN bus data reception time is clarified, the risk of data loss is avoided, the stable reception and timely response of data frames is realized, and the CAN bus timely response requirements are met.
Smart Images

Figure CN118381690B_ABST
Abstract
Description
Technical Field
[0001] The invention belongs to the field of satellite-borne GNSS, and in particular relates to a satellite-borne GNSS occultation payload CAN bus remote control telemetry processing method. Background Art
[0002] The external interface CPU software of the satellite-borne GNSS occultation receiver is mainly responsible for communicating with other single machines on the satellite platform. Currently, the CAN bus is often used for data communication between the single machines on the satellite platform. For the satellite-borne GNSS occultation receiver, the telemetry status information of the receiver is sent to the outside through the CAN bus, and the control instructions, program packages or parameter packages sent by the external single machine are received.
[0003] At present, the CAN bus controller of some satellite equipment is integrated into the CPU and used as an on-chip peripheral of the CPU chip. The CPU often uses interrupt mode to receive CAN bus data. Each time a complete data frame is received, a CPU interrupt will be triggered, and relevant processing operations will be performed in the interrupt processing function. This CAN bus processing method can detect the received CAN data frame in time and respond in time, but for the situation where multiple frames of CAN bus data are sent to the CPU at one time, since each single frame will be processed in the interrupt, and different processing strategies for different frames will result in different processing times for CAN interrupts. It takes too long to process a single frame in the interrupt, resulting in the omission of other CAN bus data frames. If a transmitted data packet is split into multiple frames for transmission, the data packet will be received incompletely, resulting in the invalidation of the entire packet of data. Summary of the invention
[0004] In view of this, the present invention aims to propose a CAN bus remote control telemetry processing method for a satellite-borne GNSS occultation payload to solve at least one problem existing in the above-mentioned prior art.
[0005] To achieve the above object, the technical solution of the present invention is achieved as follows:
[0006] A CAN bus remote control telemetry processing method for a satellite-borne GNSS occultation payload, the CAN bus remote control telemetry processing method is implemented by a telemetry processing system, the telemetry processing system comprises a CAN bus data frame receiving module, a CAN bus data frame buffer module and a CAN bus data frame processing module, the CAN bus data frame buffer module is bidirectionally connected with the CAN bus data frame receiving module and the CAN bus data frame processing module respectively, the CAN bus data frame receiving module is located in a CPU software CAN bus interrupt processing function, and the CAN bus data frame processing module is located in a CPU software timer interrupt processing function;
[0007] The CAN bus remote control telemetry processing method includes the work flow of a CAN bus data frame receiving module, the work flow of a CAN bus data frame buffer module, and the work flow of a CAN bus data frame processing module which are executed in sequence.
[0008] Furthermore, the CAN bus data frame receiving module is used to receive CAN bus data frames and store the CAN bus data frames in the CAN bus data frame buffer module.
[0009] Furthermore, the CAN bus data frame cache module includes a CAN bus data frame cache area, a CAN bus data frame source tag cache area, a cache area message storage position index, and a cache area message read-out position index. The CAN bus data frame cache area is used to cache data frames of CAN bus data frames, the CAN bus data frame source tag cache area is used to cache the CAN bus data source of CAN bus data frames, the cache area message storage position index is accumulated according to the number of cached CAN bus data frames, and the cache area message read-out position index is accumulated according to the number of cached CAN bus data frames read out. The state in which the CAN bus data frame cache module does not cache CAN bus data frames is recorded as an initial state. In the initial state, the cache area message storage position index and the cache area message read-out position index are both 0.
[0010] Furthermore, when processing the CAN bus data frame, the CAN bus data frame cache module reads out the data frames and CAN bus data sources in the CAN bus data frame cache module from the corresponding cache area in sequence, and accumulates the message position index read out of the cache area one by one until the message position index stored in the cache area and the message position index read out of the cache area are equal, then the current round of processing is stopped.
[0011] Furthermore, the cache depth of the CAN bus data frame buffer is 128, the CAN bus data frame buffer includes an arbitration domain buffer and a data domain buffer, the data frame of the CAN bus data frame includes arbitration domain information and data domain information, and the arbitration domain buffer and the data domain buffer are used to cache the arbitration domain information and the data domain information respectively.
[0012] Furthermore, the cache depth of the CAN bus data frame source mark cache area is 128, the CAN bus data frame source mark cache area, the CAN bus of the CAN bus data frame is divided into A bus and B bus, the data received by A bus is marked as 0, and the data received by B bus is marked as 1.
[0013] Furthermore, the message position index stored in the buffer is used to record the data frame index position stored in the CAN bus data frame buffer, and the range of the message position index stored in the buffer is [0,127].
[0014] Furthermore, the buffer read message position index is used to record the data frame position read from the CAN bus data frame buffer, and the range of the buffer read message position index is [0,127].
[0015] Furthermore, the workflow of the CAN bus data frame receiving module includes the following steps:
[0016] A1. The hardware receiving end of the A bus or B bus of the CAN bus of the occultation payload receives the CAN bus data frame;
[0017] A2. The hardware receiving end triggers the CAN bus interrupt of the CPU software. The CPU software stops the currently executing CPU software background task and enters the CPU software CAN bus interrupt handling function.
[0018] A3. In the CPU software CAN bus interrupt processing function, the CAN bus data frame receiving module obtains the arbitration field, data field, and CAN bus data source information of the received CAN bus data frame, extracts the received information, and sends it to the CAN bus data frame buffer module for buffering.
[0019] Furthermore, the workflow of the CAN bus data frame buffer module includes the following steps:
[0020] B1. Define a local variable Index and initialize it to 0;
[0021] B2. Assign the value of the message location index stored in the buffer to the local variable Index;
[0022] B3, add 1 to Index, and then take the modulus of 128 to ensure that Index is in the range of [0,127];
[0023] B4. Determine whether the Index is equal to the index of the message position read out from the buffer. If they are equal, it indicates that the CAN bus data frame buffer and the CAN bus data frame source mark buffer are full, the CPU program runs abnormally, and this processing ends;
[0024] If B5, Index is not equal to the index of the message position read out from the buffer, then there is still space in the CAN bus data frame buffer and the CAN bus data frame source mark buffer, and the subsequent processing flow continues;
[0025] B6, caching the arbitration domain information of the CAN bus data frame into the Index buffer of the CAN bus data frame buffer, which is also the arbitration domain buffer of the CAN bus data frame buffer. The arbitration domain buffer includes the CAN standard ID, the CAN extension ID, the CAN data frame extension flag, and the effective data length information of the CAN data domain;
[0026] B7, cache the data domain information of the CAN bus data frame into the Index buffer area of the CAN bus data frame buffer area, which is also the data domain buffer area of the CAN bus data frame buffer area, and the data domain buffer area includes data information of up to 8 bytes;
[0027] B8, caching the CAN bus data source tag to the Index buffer area of the CAN bus data frame source tag buffer area;
[0028] B9, assign Index to the cache area to read the message location index;
[0029] B10. Processing is completed and this disposal is ended.
[0030] Furthermore, the workflow of the CAN bus data frame processing module includes the following steps:
[0031] C1. Set a timer interrupt of the CPU software, and the trigger period of the timer interrupt is 60us;
[0032] C2. In the timer interrupt processing function of the CPU software, read the cache memory location index of the CAN bus data frame cache module and the cache memory location index of the read message. If the two are consistent, all cache frames in the cache are processed and exit this processing;
[0033] C3. If the message position index stored in the buffer area of the read CAN bus data frame buffer module and the message position index read out of the buffer area are inconsistent, there is cache information that has not been processed, and the subsequent steps are processed;
[0034] C4, obtaining the buffer data frame information whose index value is the buffer read message position index;
[0035] C5, add 1 to the index of the message position read from the buffer, and then take the modulus of 128 to ensure that the index is in the range of [0,127];
[0036] C6, the read data frame is processed in the subsequent process according to the arbitration domain information and the data domain information;
[0037] C7. If the data frame is determined to be a telemetry query command frame, the telemetry data frame is directly sent to the outside through the CAN bus;
[0038] C8. If the data frame is determined to be a remote control command frame, the occultation payload processes it according to the command type;
[0039] C9. If the data frame is determined to be an injection program or parameter packet, the data is cached twice until the amount of data required by the protocol is cached and then the verification process is performed;
[0040] C10. After completing the processing of this data frame, jump to step C2 to continue judging until exiting this processing.
[0041] Compared with the prior art, the CAN bus remote control telemetry processing method for a satellite-borne GNSS occultation payload described in the present invention has the following advantages:
[0042] (1) The present invention discloses a CAN bus remote control telemetry processing method for a satellite-borne GNSS occultation payload. The present invention clarifies the CAN bus data reception time, reduces the workload of the CAN bus data reception function, avoids the problem of uncertain processing time caused by directly processing data frames in the CAN bus data reception interruption, and solves the risk of data frame loss caused by excessive processing time.
[0043] (2) The CAN bus remote control telemetry processing method for a satellite-borne GNSS occultation payload described in the present invention, the CAN bus data frame buffer module of the present invention can cache the maximum number of data frames of the maximum envelope required by the protocol to the maximum extent, realize the no-frame-loss function, and ensure the stable reception of data.
[0044] (3) The CAN bus remote control telemetry processing method for a satellite-borne GNSS occultation payload described in the present invention, the CAN bus data frame processing module of the present invention can promptly process and respond to the received cached data frames, thus meeting the technical requirements of the CAN bus for timely response. BRIEF DESCRIPTION OF THE DRAWINGS
[0045] The accompanying drawings constituting a part of the present invention are used to provide a further understanding of the present invention. The exemplary embodiments of the present invention and their descriptions are used to explain the present invention and do not constitute an improper limitation of the present invention. In the accompanying drawings:
[0046] Figure 1 A schematic diagram of the connection between the telemetry processing system and the CPU software according to an embodiment of the present invention;
[0047] Figure 2 This is a schematic diagram of the CAN bus data frame buffer module flow according to an embodiment of the present invention;
[0048] Figure 3 The figure is a flow chart of a CAN bus data frame processing module according to an embodiment of the present invention. DETAILED DESCRIPTION
[0049] It should be noted that, in the absence of conflict, the embodiments of the present invention and the features in the embodiments may be combined with each other.
[0050] In the description of the present invention, it should be understood that the terms "center", "longitudinal", "lateral", "up", "down", "front", "back", "left", "right", "vertical", "horizontal", "top", "bottom", "inside", "outside" and the like indicate positions or positional relationships based on the positions or positional relationships shown in the accompanying drawings, and are only for the convenience of describing the present invention and simplifying the description, rather than indicating or implying that the device or element referred to must have a specific orientation, be constructed and operated in a specific orientation, and therefore cannot be understood as limiting the present invention. In addition, the terms "first", "second", and the like are only used for descriptive purposes, and cannot be understood as indicating or implying relative importance or implicitly indicating the number of technical features indicated. Thus, features defined as "first", "second", and the like may explicitly or implicitly include one or more of the features. In the description of the present invention, unless otherwise specified, "multiple" means two or more.
[0051] In the description of the present invention, it should be noted that, unless otherwise clearly specified and limited, the terms "installed", "connected", and "connected" should be understood in a broad sense, for example, it can be a fixed connection, a detachable connection, or an integral connection; it can be a mechanical connection or an electrical connection; it can be a direct connection, or it can be indirectly connected through an intermediate medium, or it can be the internal communication of two components. For ordinary technicians in this field, the specific meanings of the above terms in the present invention can be understood by specific circumstances.
[0052] The present invention will be described in detail below with reference to the accompanying drawings and in conjunction with embodiments.
[0053] like Figures 1 to 3 As shown, a CAN bus remote control telemetry processing method for a satellite-borne GNSS occultation payload is implemented by a telemetry processing system. The telemetry processing system includes a CAN bus data frame receiving module, a CAN bus data frame buffer module and a CAN bus data frame processing module. The CAN bus data frame buffer module is bidirectionally connected to the CAN bus data frame receiving module and the CAN bus data frame processing module respectively. The CAN bus data frame receiving module is located in a CPU software CAN bus interrupt processing function. The CAN bus data frame receiving module is used to receive CAN bus data frames and store the CAN bus data frames in the CAN bus data frame buffer module. The CAN bus data frame processing module is located in a CPU software timer interrupt processing function. The CAN bus data frame processing module is used to read out the buffered CAN bus data frames from the CAN bus data frame buffer module, and process the received CAN bus data according to the arbitration domain information of the CAN bus data frame, the data domain information of the CAN bus data frame, and the bus data frame source information.
[0054] The CAN bus data frame receiving module is placed in the CAN bus interrupt processing function of the CPU software. The module is responsible for reading the CAN bus data frame received by the CAN controller and storing the CAN bus data frame in the CAN bus data frame buffer module. The CAN bus data frame receiving module has a single task and a short and fixed execution time. After the execution is completed, the interrupt is immediately exited and the interrupt processing ready state is entered.
[0055] The CAN bus data frame buffer module is a customized CAN bus data frame buffer control logic module. The buffer structure of this module includes: a CAN bus data frame buffer area (including an arbitration domain part and a data domain part), a CAN bus data frame source mark buffer area, a buffer area stored message position index, and a buffer area read message position index. In the initial state, the buffer area stored message position index and the buffer area read message position index of the buffer module are both 0. After receiving the CAN bus data frame sent from the outside, the data frame will be placed in the CAN bus data frame buffer area, the CAN bus data source will be placed in the CAN bus data frame source mark buffer area, the buffer area stored message position index will be accumulated according to the actual number of cached frames, and the buffer area read message position index will remain unchanged. When processing the CAN bus data frame, the CAN bus data frame and the CAN bus data frame source in the buffer module are read out one by one from the corresponding buffer area in sequence, and the buffer area read message position index is accumulated one by one until the buffer area stored message position index and the buffer area read message position index are equal, then stop this round of processing.
[0056] CAN bus data frame processing module, which is placed in a timer interrupt processing function of the CPU software, sets the timer timing cycle to a fixed value, and triggers a timer interrupt every time the timer reaches the set timing cycle. In the interrupt processing function, the cached data frame is read from the CAN bus data frame cache module, and the received CAN bus data is processed according to the arbitration domain information of the data frame, the data domain information of the data frame, and the bus data frame source information. If the bus data frame is determined to be a telemetry query command frame, the telemetry response frame is directly sent to the outside. If the bus data frame is determined to be a remote control command frame, it is necessary to perform relevant processing according to the detailed command code in the command frame. If the bus data frame is determined to be a multi-frame injection parameter frame, the data field content in the data frame needs to be cached twice until the number of received frames accumulates to the total number of frames constrained in the technical protocol (such as the injection parameter package includes 64 injection parameter frames), and then it is processed.
[0057] The overall flow chart of the CAN bus processing method is as follows Figure 1 As shown:
[0058] CAN bus data frame receiving module, which is located in the CAN bus interrupt handling function of the CPU software. The workflow of this module is as follows:
[0059] (1) The hardware receiver of the A bus or B bus of the CAN bus of the occultation payload receives the CAN bus data frame;
[0060] (2) The hardware receiver triggers the CPU's CAN bus interrupt, and the CPU software stops the currently executing background task and enters the CAN bus interrupt handling function;
[0061] (3) In the CAN bus processing function, the CAN bus data frame receiving module will obtain the arbitration field, data field, and CAN bus source information of the received data frame, extract this information, and send it to the CAN bus data frame buffer module for caching.
[0062] CAN bus cache module, which controls the sequential cache and sequential readout of CAN bus data frames. The cache structure design of this module is as follows:
[0063] (1) A CAN bus data frame buffer with a buffer depth of 128. The buffer information in this buffer contains the arbitration domain information and data domain information of the CAN bus data frame.
[0064] (2) The CAN bus data frame source mark buffer area with a cache depth of 128, the data received by the A bus is marked as 0, and the data received by the B bus is marked as 1;
[0065] (3) The message position index is stored in the buffer. This variable records the data frame index position stored in the CAN bus data frame buffer. The variable range is [0,127].
[0066] (4) Buffer read message position index. This variable records the position of the data frame read from the CAN bus data frame buffer. The variable range is [0,127].
[0067] After the CAN bus data frame receiving module obtains a CAN bus data frame and the source information of the frame, it will send these contents to the CAN bus data frame buffer module. The processing of the CAN bus data frame buffer module is as follows: Figure 2 As shown, the specific steps are:
[0068] (1) Define a local variable Index and initialize it to 0;
[0069] (2) Assign the value of the message location index stored in the buffer to the local variable Index;
[0070] (3) Add 1 to Index and then take the modulo 128 to ensure that Index is in the range [0, 127];
[0071] (4) Determine whether the Index is equal to the index of the message position read out of the cache. If they are equal, it indicates that the cache is full, the CPU program runs abnormally, and this processing ends;
[0072] (5) If the Index is not equal to the index of the message position read from the cache, there is still space in the cache and the subsequent processing process continues;
[0073] (6) Cache the arbitration domain of the CAN bus data frame into the Index buffer of the CAN bus data frame buffer, including the CAN standard ID, CAN extension ID, CAN data frame extension flag, and CAN data domain valid data length information;
[0074] (7) Cache the data domain of the CAN bus data frame into the Index buffer of the CAN bus data frame buffer, including data information of up to 8 bytes;
[0075] (8) Cache the CAN bus data frame source tag to the Index buffer area of the CAN bus data frame source tag buffer area;
[0076] (9) Assign Index to the cache area to read the message location index;
[0077] (10) The processing is completed and the disposal is ended.
[0078] CAN bus data frame processing module, which is placed in a timer interrupt processing function of the CPU software. The workflow of this module is as follows Figure 3 The specific implementation strategy is as follows:
[0079] (1) Set a timer interrupt of the CPU with a trigger period of 60us;
[0080] (2) In the CPU timer interrupt processing function, read the cache memory location index of the CAN bus data frame cache module and the cache memory location index of the read message. If the two are consistent, all cache frames in the cache memory are processed and exit this processing;
[0081] (3) If the message position index stored in the buffer area of the read CAN bus data frame buffer module and the message position index read out of the buffer area are inconsistent, there is cache information that has not been processed, and the subsequent steps are processed;
[0082] (4) Obtaining the cache data frame information whose index value is the cache read message position index;
[0083] (5) The index of the message position read from the buffer is incremented by 1, and then modulo 128 is taken to ensure that the index is in the range [0, 127];
[0084] (6) The read data frame is processed in detail according to the arbitration field and data field information;
[0085] (7) If the data frame is determined to be a telemetry query command frame, the telemetry data frame is directly sent to the outside through the CAN bus;
[0086] (8) If the data frame is determined to be a remote control command frame, the occultation payload performs relevant processing based on the command type;
[0087] (9) If the data frame is determined to be an injection program or parameter packet (this type of data packet usually contains multiple data frames), the data is cached twice until the amount of data required by the protocol is cached and then the verification process is performed;
[0088] (10) After completing the processing of this data frame, jump to step (2) to continue the judgment until exiting this processing.
[0089] This processing method can solve the risk of data frame leakage in the current CAN bus data frame processing strategy.
[0090] Advantages of the present invention:
[0091] (1) The present invention clarifies the CAN bus data reception time, reduces the workload of the CAN bus data reception function, avoids the problem of uncertain processing time caused by directly processing data frames in the CAN bus data reception interrupt, and solves the risk of data frame loss caused by excessive processing time.
[0092] (2) The CAN bus data frame buffer module of the present invention can buffer the maximum number of data frames of the maximum envelope required by the protocol to the maximum extent, realize the function of not losing frames, and ensure the stable reception of data.
[0093] (3) The CAN bus data frame processing module of the present invention can promptly process and respond to the received buffered data frames, thus meeting the technical requirements of the CAN bus for timely response.
[0094] The above description is only a preferred embodiment of the present invention and is not intended to limit the present invention. Any modifications, equivalent substitutions, improvements, etc. made within the spirit and principle of the present invention should be included in the protection scope of the present invention.
Claims
1. A CAN bus remote control telemetry processing method for a satellite-borne GNSS occultation payload, characterized in that: The CAN bus remote control telemetry processing method is implemented by a telemetry processing system, which includes a CAN bus data frame receiving module, a CAN bus data frame buffer module and a CAN bus data frame processing module, wherein the CAN bus data frame buffer module is bidirectionally connected with the CAN bus data frame receiving module and the CAN bus data frame processing module, respectively, the CAN bus data frame receiving module is located in a CPU software CAN bus interrupt processing function, and the CAN bus data frame processing module is located in a CPU software timer interrupt processing function; The CAN bus remote control telemetry processing method includes a work flow of a CAN bus data frame receiving module, a work flow of a CAN bus data frame buffering module, and a work flow of a CAN bus data frame processing module which are executed in sequence; The CAN bus data frame buffer module includes a CAN bus data frame buffer area, a CAN bus data frame source mark buffer area, a buffer area stored message position index, and a buffer area read message position index. The CAN bus data frame buffer area is used to cache data frames of CAN bus data frames. The CAN bus data frame source mark buffer area is used to cache the CAN bus data source of the CAN bus data frame. The buffer area stores the message position index according to the number of frames of the cached CAN bus data frames. The buffer area reads the message position index according to the number of readouts of the cached CAN bus data frames. The state in which the CAN bus data frame buffer module does not cache CAN bus data frames is recorded as the initial state. In the initial state, the buffer area stores the message position index for and the buffer area reads the message position index are both 0; The cache depth of the CAN bus data frame buffer is 128, the CAN bus data frame buffer includes an arbitration domain buffer and a data domain buffer, the data frame of the CAN bus data frame includes arbitration domain information and data domain information, the arbitration domain buffer and the data domain buffer are used to cache the arbitration domain information and the data domain information respectively; The cache depth of the CAN bus data frame source mark cache area is 128. The CAN bus of the CAN bus data frame source mark cache area is divided into A bus and B bus. The data received by A bus is marked as 0, and the data received by B bus is marked as 1; The workflow of the CAN bus data frame receiving module includes the following steps: A1. The hardware receiving end of the A bus or B bus of the CAN bus of the occultation payload receives the CAN bus data frame; A2. The hardware receiving end triggers the CAN bus interrupt of the CPU software. The CPU software stops the currently executing CPU software background task and enters the CPU software CAN bus interrupt handling function. A3. In the CPU software CAN bus interrupt processing function, the CAN bus data frame receiving module obtains the arbitration domain, data domain, and CAN bus data source information of the received CAN bus data frame, extracts the received information, and sends it to the CAN bus data frame buffer module for buffering; The workflow of the CAN bus data frame buffer module includes the following steps: B1. Define a local variable Index and initialize it to 0; B2. Assign the value of the message location index stored in the buffer to the local variable Index; B3, add 1 to Index, and then take the modulus of 128 to ensure that Index is in the range of [0,127]; B4. Determine whether the Index is equal to the index of the message position read out from the buffer. If they are equal, it indicates that the CAN bus data frame buffer and the CAN bus data frame source mark buffer are full, the CPU program runs abnormally, and this processing ends; If B5, Index is not equal to the index of the message position read out from the buffer, then there is still space in the CAN bus data frame buffer and the CAN bus data frame source mark buffer, and the subsequent processing flow continues; B6, caching the arbitration domain information of the CAN bus data frame into the Index buffer of the CAN bus data frame buffer, which is also the arbitration domain buffer of the CAN bus data frame buffer. The arbitration domain buffer includes the CAN standard ID, the CAN extension ID, the CAN data frame extension flag, and the effective data length information of the CAN data domain; B7, cache the data domain information of the CAN bus data frame into the Index buffer area of the CAN bus data frame buffer area, which is also the data domain buffer area of the CAN bus data frame buffer area, and the data domain buffer area includes data information of up to 8 bytes; B8, caching the CAN bus data source tag to the Index buffer area of the CAN bus data frame source tag buffer area; B9, assign Index to the cache area to read the message location index; B10. The treatment is completed and this disposal is ended; The workflow of the CAN bus data frame processing module includes the following steps: C1. Set a timer interrupt of the CPU software, and the trigger period of the timer interrupt is 60us; C2. In the timer interrupt processing function of the CPU software, read the cache memory location index of the CAN bus data frame cache module and the cache memory location index of the read message. If the two are consistent, all cache frames in the cache are processed and exit this processing; C3. If the message position index stored in the buffer area of the read CAN bus data frame buffer module and the message position index read out of the buffer area are inconsistent, there is cache information that has not been processed, and the subsequent steps are processed; C4, obtaining the buffer data frame information whose index value is the buffer read message position index; C5, add 1 to the index of the message position read from the buffer, and then take the modulus of 128 to ensure that the index is in the range of [0,127]; C6, the read data frame is processed in the subsequent process according to the arbitration domain information and the data domain information; C7. If the data frame is determined to be a telemetry query command frame, the telemetry data frame is directly sent to the outside through the CAN bus; C8. If the data frame is determined to be a remote control command frame, the occultation payload processes it according to the command type; C9. If the data frame is determined to be an injection program or parameter packet, the data is cached twice until the amount of data required by the protocol is cached and then the verification process is performed; C10. After completing the processing of this data frame, jump to step C2 to continue judging until exiting this processing.
2. The method for processing CAN bus remote control telemetry of a satellite-borne GNSS occultation payload according to claim 1, characterized in that: The CAN bus data frame receiving module is used to receive the CAN bus data frame and store the CAN bus data frame in the CAN bus data frame buffer module.
3. The method for processing CAN bus remote control telemetry of a satellite-borne GNSS occultation payload according to claim 1, characterized in that: When processing the CAN bus data frame, the CAN bus data frame and the CAN bus data frame source in the CAN bus data frame cache module are read out one by one from the corresponding cache area in sequence, and the message position index read out from the cache area is accumulated one by one until the message position index stored in the cache area and the message position index read out from the cache area are equal, then the current round of processing is stopped.
4. The method for processing CAN bus remote control telemetry of a satellite-borne GNSS occultation payload according to claim 1, characterized in that: The message position index stored in the buffer is used to record the data frame index position stored in the CAN bus data frame buffer, and the range of the message position index stored in the buffer is [0,127]; The buffer read message position index is used to record the data frame position read from the CAN bus data frame buffer, and the range of the buffer read message position index is [0,127].
