lib_qadc

VERSION RELEASED COMMENTS DOCUMENTATION SOFTWARE
v1.0.0 2024-11-26 VIEW HTML VIEW PDF ZIP

Overview#

The xcore.ai family offers an inexpensive way to read the value of a variable resistor (rheostat) or a potentiometer without the need for a dedicated ADC component. It uses known RC delay characteristics to determine the value of the resistor and only requires two additional passive components per channel.

The performance may be suitable for applications such as reading the position of an analog slider to control an audio gain setting. Resolutions in excess of eight bits can be achieved which can be adequate for many control applications.

Features#

  • Rheostat reader or Potentiometer reader

  • One channel per 1-bit port (wide ports supported for Potentiometer type)

  • Up to 3000 conversions per second

  • 8+ effective number of bits (ENOB)

  • Filtering and hysteresis functions for smoothing noise

  • Continuous conversion (using a thread) or single shot API via function call

Resource Usage#

The Rheostat reader requires 3 kB and either one thread (continuous operation) or ~300 microseconds of CPU time per conversion.

For a two channel, 8 bit (256 output levels) with a 16 entry moving average filter, the Potentiometer reader requires 5 kB and either one thread (continuous operation) or around ~300 microseconds of CPU time per conversion.

Known Issues#

  • Calibration mode not yet implemented for Rheostat reader.

Required Tools#

  • XMOS XTC Tools: 15.3.0

Required Libraries (dependencies)#

  • None

Support#

This package is supported by XMOS Ltd. Issues can be raised against the software at www.xmos.com/support

Scroll to Top