With the ability to adjust the voltage on the AN pin very accurately, this Click board™ can be used for development of applications that require voltage reference other than what is commonly available as an output from a dedicated IC. This includes HMI applications where the potentiometer can be used to provide fine control the movement of a step motor, or intensity of a LED segment, backlight amount of a TFT screen, and similar applications that require fine control of the voltage reference.
How does it work?
This Click board™ uses a very simple design: the MCP1501, a precision voltage reference IC from Microchip is used to provide the voltage of 2.048V. This voltage is routed to the small SMD jumper labeled as OUT SEL. By moving the jumper to the REF position, 2.048V will be applied to one end of the potentiometer. Otherwise, the potentiometer will be connected to the 3.3V rail of the mikroBUS™. The other end of the potentiometer is tied to GND, allowing to select voltage either from 0 to 2.048V range (VREF) or from 0 to 3.3V range. The adjustable voltage is available on both AN pin of the mikroBUS™ and 1×2-pin header on the upper edge of the Click board™, which is labeled as VOUT.
The potentiometer itself is labeled as PT10MV11-103A2020-S. It is a high-quality potentiometer from Piher Sensing Systems. This company is otherwise known for their high-quality potentiometers, used in many industries. The potentiometer has a carbon-based resistive surface with the resistance of 10 kΩ. It is a single-turn linear potentiometer, with 50% of resistance achieved when in the middle position. It has 10mm in diameter. Its turning knob is not fixed: the potentiometer has a hole with flat surfaces instead (hexagonal shape), and a small pole with the matching shape can be inserted. This makes possible using both fingers and some other precision tool (screwdriver, hex keys, etc.)
The output of the potentiometer is fed to the non-inverting input of the OPA344, a rail-to-rail single supply operational amplifier, from Texas Instruments. This operational amplifier is a perfect choice for this design, as it allows rail-to-rail operation, uses a single power supply of 5V, and has a stable unity gain. The OPA344 is used as a buffer, providing a constant input and output impedance. Without buffer, variable impedance would affect the reference voltage. The reference voltage IC can provide less than 10 mA, with the significant voltage drop for output currents exceeding 2 mA. Therefore, the OPA344 ensures good stability of the circuit.
The current output of this Click board™ is limited by the circuit at the output, which consists of two BJT transistors. When the output load is too large, a voltage drop will appear across the base-emitter resistor on the Q2 transistor, which in turn starts to conduct, reducing the voltage across the feedback loop, limiting the max current this way. Q1 transistor is otherwise used to provide enough current to the output load, preventing the damage to the buffer and the rest of the circuit. Therefore, in the case of short circuit, this transistor will start dissipating heat. It is dimensioned so that it can withstand short circuit on the output. The connected load can draw up to 100mA of current.
Specifications
Type
Potentiometer
Applications
It can be used for development of different types of HMI applications where the potentiometer can be used to provide fine control the movement or to change the intensity of a LED segment in fine steps, backlight amount of a TFT screen, etc.
On-board modules
MCP1501, a precision voltage reference IC from Microchip; OPA344, a single-supply, rail-to-rail operational amplifier from Texas Instruments.
Key Features
Precise and buffered reference voltage output with current limiting, selectable maximum value for the adjustable voltage reference, high-quality linear potentiometer from Piher.
Interface
Analog
Feature
No ClickID
Compatibility
mikroBUS™
Click board size
M (42.9 x 25.4 mm)
Input Voltage
3.3V,5V
Pinout diagram
This table shows how the pinout on POT Click corresponds to the pinout on the mikroBUS™ socket (the latter shown in the two middle columns).
Onboard settings and indicators
Label | Name | Default | Description |
---|---|---|---|
PWR | PWR | – | Power LED Indicator |
JP1 | OUT SEL | – | Voltage reference level selection: left position 2.048V, right position 3.3V |
J1 | VOUT | – | Reference voltage output |
Software support
We provide a library for the POT Click on our LibStock page, as well as a demo application (example), developed using MikroElektronika compilers. The demo can run on all the main MikroElektronika development boards.
Library Description
The library initializes GPIO interface for the desired mikrobus selection. For more details check documentation.
Key functions:
void pot_gpioDriverInit( T_POT_P gpioObj )
– Function initializes GPIO driver for the desired mikrobus.
Examples description
The application is composed of the three sections :
- System Initialization – Initializes peripherals and pins.
- Application Initialization – Initializes GPIO interface and ADC.
- Application Task – (code snippet) – Makes the averaged results by using the desired number of samples of AD conversion. The averaged results will be calculated to millivolts [mV] and sent to the uart terminal. Note : The AD conversion will be performed on the analog (AN) pin on the mikrobus 1.
void applicationTask() { for (nSamples = 0; nSamples < N_SAMPLES; nSamples++) { adcRead = ADC_Get_Sample( 0 ); if (nSamples == 0) { adcMax = adcRead; adcMin = adcRead; } if (adcRead > adcMax) { adcMax = adcRead; } else if (adcRead < adcMin) { adcMin = adcRead; } Delay_ms( 1 ); } adcAvrg = adcMax; adcAvrg += adcMin; adcAvrg /= 2; adcAvrg /= ADC_12BIT_RESOL; adcAvrg *= ADC_V_REF_MV; adcRead = adcAvrg; WordToStr( adcRead, text ); mikrobus_logWrite( "** AN : ", _LOG_TEXT ); mikrobus_logWrite( text, _LOG_TEXT ); mikrobus_logWrite( " mV **", _LOG_LINE ); Delay_ms( 100 ); }
The full application code, and ready to use projects can be found on our LibStock page.
Other mikroE Libraries used in the example:
ADC
Conversions
UART
Additional notes and informations
Depending on the development board you are using, you may need USB UART click, USB UART 2 click or RS232 click to connect to your PC, for development systems with no UART to USB interface available on the board. The terminal available in all MikroElektronika compilers, or any other terminal application of your choice, can be used to read the message.
mikroSDK
This click board is supported with mikroSDK - MikroElektronika Software Development Kit. To ensure proper operation of mikroSDK compliant click board demo applications, mikroSDK should be downloaded from the LibStock and installed for the compiler you are using.
For more information about mikroSDK, visit the official page.