Quadrature Position Revolution Counter (PDL_QPRC) | Cypress Semiconductor
Quadrature Position Revolution Counter (PDL_QPRC)
The Quadrature Position/Revolution Counter (QPRC) Component is typically used in motor control applications to track the position, speed, or rotation of a motor. It includes a built-in noise filter that helps remove glitches in the signal on each of the three input pins. A number of PCLK cycles can be set to filter out short pulses that are not valid QPRC inputs.
The position counter (PC) is a very flexible up/down counter circuit that operates on input signals from the AIN and BIN external pins, which can be configured to be active on a rising or falling edge (or both). The counter can be configured to work in one of three modes. Incremental mode simply increments on AIN active and decrements on BIN active. Phase difference mode increments if AIN leads BIN and decrements if BIN leads AIN. Directional mode uses BIN to set the direction (up/down) and counts on AIN active.
The revolution counter (RC) receives an input from the ZIN pin and/or the output of the position counter (underflow or overflow). The counter increments or decrements based on your configuration choices.
There are two compare values: the Position compare value, and the Position and Revolution compare value (PCRC).
The revolution counter (RC) can operate on the ZIN external pin, which can be configured as active on an edge or level, or the output of the PC (underflow or overflow). This counter can also be configured to work in one of three modes. The simplest mode is a simple up/down count based on the state of ZIN. The PC position count match (determined by a compare operation) can also be used to update the RC on overflow and underflow. The third option combines the two previous modes and counts on either event.
These two counting schemes – PC and RC – form a very flexible and powerful motor control solution that enables firmware to monitor and modify motor speeds with the minimum of CPU involvement.
QPRC Component Parameter Editor