Management module design of Timing Advance Processor
The meaning of Timing Advance Processor: The timer is one of the basic elements of the normal operation of the communication protocol, and is mainly used for various timing and frame retransmission tasks. The communication protocol implements the timer used on the single-chip system, the timing accuracy is not high, but the quantity is relatively large. Due to limited hardware resources, it is impossible to allocate a hardware timer for each individual task. Only a single hardware timer can be used to simulate multiple software timers to meet the timing application requirements in the protocol.
The function of the timing advance processor: The electronic timing advance processor can be installed on 3-4-5-6 and 8-cylinder cars equipped with coil ignition systems and distributors. It can automatically adjust the lead time, improve performance, reduce consumption and "backfire" risk.
Installation and debugging of the timing advance processor: 1. A connector used to connect the processor and the phase sensor. Only applicable to certain vehicles. 2. The connector used to connect the processor and the TDP sensor interface cable.
The design of the management module of the timing advance processor: The design of the timer management module is based on the static array method. Use an array of timer nodes to store all timing requests, and each item in the array represents an available timer node. Each timer node has a status item, which indicates that the timer is in idle, in use or overflow state. The timing value of the timer and the message to be sent after the timer expires are also stored in the timer node, so that one hardware timer can be used to provide users with multiple software timers.
Timing Advance Processor driver: The software timer driver is provided by the hardware timer. In the hardware timer interrupt, the value of the auxiliary timer is first reduced by 1. If the auxiliary timer value is 0, it means that the timer with the smallest timing value has expired. The corresponding message should be sent to the user task, the node should be placed in an idle state, and the timing value of other nodes should be recalculated, and the smallest timing value should be found at the same time Node, update the auxiliary timer.

コメント