MCP16331 INV Click Board
MCP16331 INV Click Board
Overview
The MCP16331 INV Click Board™ works as a buck-boost voltage regulator, a switching regulator topology that combines principles of the buck conversion (step-down) and the boost conversion (step-up). A buck converter outputs voltage that is smaller than the input voltage (steps down the input voltage). A boost converter outputs voltage that is greater than the input voltage (steps up the input voltage).
By combining these two topologies, the MCP16331 INV Click Board™ is able to output a regulated DC voltage, which can be set in the code, for input voltage both greater and less than the output voltage.
The MCP16331 Click Board™ works as a buck-boost voltage regulator, a switching regulator topology that combines principles of the buck conversion (step-down) and the boost conversion (step-up). A buck converter outputs voltage that is smaller than the input voltage (steps down the input voltage). A boost converter outputs voltage that is greater than the input voltage (steps up the input voltage). By combining these two topologies, MCP16331 INV click is able to output a regulated DC voltage, which can be set in the code, for input voltage both greater and less than the output voltage.
A major difference between the MCP16331 INV click and another click with the same name - MCP16331 Click Board™, is that this click works in an inverting configuration, providing an output voltage which is negative in respect to the GND level. Negative voltage is often used in symmetrical power supply configurations - for powering up operational amplifiers and similar devices that require such type of power supply. This feature, as well as the excellent power switching efficiency, overtemperature protection, and a clean regulated voltage output makes this device an ideal solution for powering up any application that demands a negative voltage power supply.
How Does The MCP16331 Click Board™ Work?
The switching regulator used on MCP16331 Click Board™ is the MCP16331, a step-down (buck) switching regulator from Microchip. However, with the help of a few external components, MCP16331 INV click is able to regulate voltage levels both lower and higher than the input voltage, working as an inverted boost-buck voltage regulator.
The MCP16331 Click Board™ is designed so that it can output a negative voltage, with respect to the GND. A negative voltage is often used in the analog electronics domain, to power up devices which require both positive and negative voltages to be applied. A good example would be an operational amplifier (opamp) which amplifies an AC signal. The signal goes in both positive and negative direction with respect to the GND. Processing this kind of signal with using just a single voltage source is difficult and requires workarounds such as using capacitors, charge pumps and virtual GNDs. Using a symmetrical power supply reduces the number of required components and simplifies the design.
To be able to deliver a negative voltage, several additional components, such as the ADM8828 voltage inverter IC and the LM318, a dual operational amplifier have to be added. The ADM8828 voltage inverter IC is used to provide a negative component of the symmetrical power supply, used for the LM318 dual opamp. One integrated opamp from the LM318 IC is used to invert the output from the DAC. The other opamp from the LM318 IC is used to invert the output from the voltage divider, located on the output rail of the MCP16331 so that it can be used by the MCU, which uses a single voltage power source.
To set the output voltage of the MCP16331 Click Board™, the MCP4921 - a low power 12-Bit dual voltage output DAC is used in the feedback loop. As already mentioned, it is necessary to invert this signal as the MCP4921 is supplied from a single voltage power supply, and it is not capable of bringing the signal lower than the GND. Since MCP16331 works in the negative voltage domain, the feedback voltage applied to the FB pin of this IC also needs to be negative with respect to the GND. One of the LM318's integrated opamps, configured as a unity gain inverter, is used to invert the DAC output voltage.
Since the FB pin of the MCP16331 IC is driven by the DAC, it is enough to set the DAC to a specific value, in order to control the output voltage of the click board™. Communication with the MCP4921 DAC is done via the SPI interface. SPI bus pins of the MCP4921 are routed to the mikroBUS™ for an easy and secure connection with the host MCU.
The AN pin of the mikroBUS™ is routed to a middle point of a voltage divider at the output. This voltage divider is used to scale down the output voltage so it can be successfully converted by the ADC of the host MCU. The voltage on the divider also has to be inverted, since it is coming out from the negative voltage domain. This is achieved by the second operational amplifier of the LM318 IC, which also works as a unity gain inverter. This value can be used to monitor the output voltage and correct it, if needed.
The EN pin of the MCP16331 switching regulator is routed to the mikroBUS™ RST pin. By pulling this pin to a HIGH logic level, the internal sections of the regulator are enabled. The EN pin is internally pulled to a HIGH logic level, so the device will be enabled, even if this pin is left floating. Therefore, a correct startup sequence must be used, in order to avoid undesirable effects (in the NOTE, below).
Although it is designed to work as the negative power supply, the MCP16331 Click Board™ can also be used to drive a regular load, connecting its positive input terminal to the GND of the click board™, and using the negative output of the MCP16331INV click as the GND.
The MCP16331 Click Board™ comes with two screw terminals, used to connect the input and the output voltage rails. This click board™ uses only +5V rail from the mikroBUS™. Provided libraries demonstrate functionality of the MCP16331 INV click and offer an easy and simple way of setting it up. The included example can be used as a reference for future designs
NOTE: To avoid any possible damage to any load connected to the VOUT terminals, the correct power-up sequence must be followed:
- Disable the MCP16331 by setting the mikroBUS™ pin RST (EN) to a LOW logic level (GND)
- Set the desired output voltage via SPI (see the software section below)
- Enable the MCP16331 by setting the mikroBUS™ pin RST (EN) to a HIGH logic level (VCC)
The reason for this sequence is that the enable pin (EN) of the MCP16331 has an internal pull-up resistor which keeps the MCP16331 output stage enabled at all times, even if the pin is left unconnected. Having an undetermined voltage output at the DAC during the startup sequence might result with unwanted voltage levels at the output terminal.
Libraries, provided with the MCP16331 Click Board™, will allow for simple and effortless setup of the necessary parameters. The included demo application can be used as a reference for future designs, and it demonstrates the functionality of the click board™, as well as the included software libraries.
SPECIFICATIONS
Type | Buck-Boost |
Applications | Negative voltage is often used in symmetrical power supply configuration for powering up operational amplifiers and similar devices that require such type of power supply. |
On-board modules | MCP16331, a step-down (buck) switching regulator, LM318, a dual operational amplifier, ADM8828, a switched-capacitor voltage inverter, MCP4921, a low power 12-Bit dual voltage output DAC |
Key Features | Negative power supply source with very high switching efficiency, overvoltage protection, internal soft start, adjustable voltage, it can sustain a reasonably high current |
Interface | GPIO,SPI |
Compatibility | mikroBUS |
Click board size | L (57.15 x 25.4 mm) |
Input Voltage | 5V |
PINOUT DIAGRAM
This table shows how the pinout of the MCP16331 Click Board™ corresponds to the pinout on the mikroBUS™ socket (the latter shown in the two middle columns).
Notes | Pin | Pin | Notes | ||||
---|---|---|---|---|---|---|---|
Voltage sense | AN | 1 | AN | PWM | 16 | NC | |
Output Enable | EN | 2 | RST | INT | 15 | NC | |
Chip Select | CS | 3 | CS | RX | 14 | NC | |
SPI Clock | SCK | 4 | SCK | TX | 13 | NC | |
NC | 5 | MISO | SCL | 12 | NC | ||
Serial Data In | SDI | 6 | MOSI | SDA | 11 | NC | |
Power Supply | 3V3 | 7 | 3.3V | 5V | 10 | 5V | Power Supply |
Ground | GND | 8 | GND | GND | 9 | GND | Ground |
MCP16331 INV CLICK ELECTRICAL SPECIFICATIONS
Description | Min | Typ | Max | Unit |
---|---|---|---|---|
Input voltage (VIN terminal) | 4.5 | 16 | V | |
Output Voltage (VOUT terminal) | -2.7 | -5.4 | V | |
Output Current | 500 | mA | ||
Switching Frequency | 500 | kHz |
ONBOARD SETTINGS AND INDICATORS
Label | Name | Default | Description |
---|---|---|---|
LD1 | PWR | - | Power LED indicator |
TB1 | VIN | - | Terminal used for connecting an input voltage |
TB2 | VOUT | - | Terminal used for connecting a load |
Software Support
We provide a library for the MCP16331 Click Board™ on our LibStock page, as well as a demo application (example), developed using MikroElektronika compilers and mikroSDK. The provided click library is mikroSDK standard compliant. The demo application can run on all the main MikroElektronika development boards.
Library Description
Initializes SPI bus driver and click driver functions witch set DAC analog output voltage to the desired value, but in the inverted value compared to the reference voltage, VREF (VDD). Functions have the ability to set the device in the active or shutdown mode or to enable or disable internal pull up on the VIN. For more details check the documentation.
Key Functions
void mcp16331inv_setDACVout( uint16_t DAC_value, uint8_t gain_value, uint8_t mode )
- The function determines DAC output voltage value in depending on the input DAC_value (0x0000 - 0x0FFF) and gain_value. The function also can put the device in the active or the shutdown mode.
void mcp16331inv_enableVin( uint8_t state )
- The function enables or disables internal VIN pull up.
The application is composed of three sections :
- System Initialization - Initializes pins, directions, and SPI bus.
- Application Initialization - Initializes the click driver and enables the pull-up.
- Application Task - (code snippet) - Sets DAC output voltage to 3500mV when the gain is set up on 1xVREF,
with 4s delay time, and then sets DAC output voltage to 5000mV, when the gain is now set up on 2x VREF,
with 4s delay time. The VIN voltage must be greater than 4V.void applicationTask() { mcp16331inv_setDACVout( MCP16331INV_3500_MV_1X_GAIN, MCP16331INV_GAIN_1X_VREF, MCP16331INV_ACTIVE_MODE ); Delay_ms( 4000 ); mcp16331inv_setDACVout( MCP16331INV_5000_MV_2X_GAIN, MCP16331INV_GAIN_2X_VREF, MCP16331INV_ACTIVE_MODE ); Delay_ms( 4000 ); }
The full application code, and ready to use projects can be found on our LibStock page.
Other MikroElektronika Libraries used in the example:
- SPI
Additional Notes and Information
Depending on the development board you are using, you may need a 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
The MCP16331 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.
Software Support
We provide a library for the MCP16331 Click Board™ on our LibStock page, as well as a demo application (example), developed using MikroElektronika compilers and mikroSDK. The provided click library is mikroSDK standard compliant. The demo application can run on all the main MikroElektronika development boards.
Library Description
Initializes SPI bus driver and click driver functions witch set DAC analog output voltage to the desired value, but in the inverted value compared to the reference voltage, VREF (VDD). Functions have the ability to set the device in the active or shutdown mode or to enable or disable internal pull up on the VIN. For more details check the documentation.
Key Functions
void mcp16331inv_setDACVout( uint16_t DAC_value, uint8_t gain_value, uint8_t mode )
- The function determines DAC output voltage value in depending on the input DAC_value (0x0000 - 0x0FFF) and gain_value. The function also can put the device in the active or the shutdown mode.
void mcp16331inv_enableVin( uint8_t state )
- The function enables or disables internal VIN pull up.
The application is composed of three sections :
- System Initialization - Initializes pins, directions, and SPI bus.
- Application Initialization - Initializes the click driver and enables the pull-up.
- Application Task - (code snippet) - Sets DAC output voltage to 3500mV when the gain is set up on 1xVREF,
with 4s delay time, and then sets DAC output voltage to 5000mV, when the gain is now set up on 2x VREF,
with 4s delay time. The VIN voltage must be greater than 4V.void applicationTask() { mcp16331inv_setDACVout( MCP16331INV_3500_MV_1X_GAIN, MCP16331INV_GAIN_1X_VREF, MCP16331INV_ACTIVE_MODE ); Delay_ms( 4000 ); mcp16331inv_setDACVout( MCP16331INV_5000_MV_2X_GAIN, MCP16331INV_GAIN_2X_VREF, MCP16331INV_ACTIVE_MODE ); Delay_ms( 4000 ); }
The full application code, and ready to use projects can be found on our LibStock page.
Other MikroElektronika Libraries used in the example:
- SPI
Additional Notes and Information
Depending on the development board you are using, you may need a 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
The MCP16331 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.
Frequently Asked Questions
Have a Question?
Be the first to ask a question about this.