nRF5 SDK v17.1.0
QDEC Example

The QDEC Example demonstrates the use of the quadrature decoder (QDEC) peripheral.

The example uses the software quadrature encoder simulator QENC to produce input. The quadrature encoder simulator uses one channel of the GPIOTE module. The state of the encoder changes according to the sampling clock generated by the LED output.

The QDEC inputs A and B must be connected to the QENC outputs A and B, respectively. The QDEC LED output must be connected to the QENC LED input.

QENC produces a variable number of positive and negative pulses in an infinite loop. These pulses are synchronized with the bursts of clock impulses that are generated by QDEC at the LED output. The pulses are counted by QDEC operating in a REPORT mode, and the count is compared with the pulses that are generated by QENC.

qdec_example.png
Example waveform

Setup

You can find the source code and the project file of the example in the following folder: <InstallFolder>\examples\peripheral\qdec

Configuration:

Testing

The example works in auto-test mode:

Test the QDEC example application by performing the following steps:

  1. Connect the pins as described above.
  2. Compile and program the application.
  3. Start a terminal emulator like PuTTY and connect to the used COM port with the following UART settings:
    • Baud rate: 115.200
    • 8 data bits
    • 1 stop bit
    • No parity
    • HW flow control: None
  4. Observe that a welcome message is output on the console.
  5. Observe that a series of asterisks is output on the console. If no asterisks are printed, check the pin connections.
  6. Observe for a while to make sure that no error messages are generated.

Documentation feedback | Developer Zone | Subscribe | Updated