2 Powering Multi-Voltage I/O (MVIO)

Multi-Voltage I/O (MVIO) is a feature on some devices that allows an I/O port to operate at a different voltage level than the rest of the microcontroller. As an example, this allows a 3.3V microcontroller to interface with 1.8V logic, or for a 3.3V microcontroller to interface with 5V devices.

One of the requirements to use MVIO is that the MVIO port must be supplied with the voltage level used by the port. This can come from a dedicated power rail, or alternatively, it can be generated internally using an OPAMP in the microcontroller.

Note: It is more power efficient to power the MVIO through a dedicated power supply. However, a built in OPAMP requires no extra design area or components.

The maximum output current on the MVIO port will be limited by the OPAMP’s maximum output current; this also requires the operating voltage of the microcontroller to be higher than or equal to that of the MVIO supply. However, it is suitable for many applications.

There are three ways to set the output of the OPAMP:

  • Digital to Analog Converter (DAC)
  • Internal Resistor Ladder (available on select devices)
  • External Reference Level

The first method is to use the on-board DAC. The DAC peripheral can be set to the voltage level needed. The on-board voltage references can be used to improve the accuracy of the DAC.

The second method is to generate the output level with the internal resistor ladder. Normally, the internal resistor ladder is used as a part of the feedback network of the OPAMP. However, this ladder can also be used as a voltage divider to set the output level. The OPAMP would be setup to operate in unity gain mode to buffer the output of the resistor ladder.

The final method is to use an external reference. Since the OPAMP has a high input impedance, the reference level can be from a simple resistor voltage divider or an external DAC outside of the microcontroller.