Skip to content

These Atmel Studio 7 bare metal examples in Getting Started with Multi Voltage I/O (MVIO) (TB3287) show how the MVIO is used on the AVR® DB family of microcontrollers. The MVIO peripheral allows a subset of the I/O pins to be powered by a different I/O voltage domain VDDIO2, eliminating the need for external level shifters.

Notifications You must be signed in to change notification settings

microchip-pic-avr-examples/avr128db48-getting-started-with-mvio

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

9 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

MCHP

Getting Started with Multi Voltage I/O (MVIO)

A new feature introduced in the AVR® DB Family is the Multi-Voltage I/O (MVIO) peripheral. In this example, VDDIO2 supplies a different voltage level PORTC, than on the rest of the PORTs, which are supplied by VDD. It is possible to monitor this voltage level with the internal analog-to-digital converter (ADC) and also possible to get an interrupt when the voltage level for the MVIO, called VDDIO2, goes in and out of acceptable voltage range.

overview

These examples show how the Multi-Voltage I/O feature works on the AVR DB family of microcontrollers. It covers the following use cases:

  • Polling VDDIO2 Status: Checking if the VDDIO2 voltage is within acceptable range by reading the Status bit.
  • Interrupt on VDDIO2 Status: Make use of the interrupt that occurs when the Status bit changes state.
  • Measuring VDDIO2: Use the internal ADC to measure the VDDIO2 voltage.
  • Blink a 3V LED with VDD at 1.8V: Basic example of MVIO blinking an LED with forward voltage higher than VDD.

Related Documentation

Software Used

  • Atmel Studio 7.0.2397 or later
  • Atmel Studio AVR-Dx_DFP version 1.3.67 or later
  • For the MPLAB® X version of these projects, please go to this repository

Hardware Used

Setup

  • Connect the hardware together as seen in the schematic of the application note

Operation

  • Connect the AVR128DB48 Curiosity Nano to a computer using a USB cable
  • Download the zip file or clone the example to get the source code
  • Open the .atsln file with Atmel Studio
  • Right-click on the project you want to run and choose "Set as StartUp Project"
  • Press Start Without Debugging (CTRL+ALT+F5) to run the application

Changing Voltage

Drag and drop one of the following files to the "Curiosity" disc on your computer:

  • VDD1V8.txt - Sets voltage to 1.8V
  • VDD3V3.txt - Sets voltage to 3.3V

Conclusion

After going through this example, you should have a better understanding of how to set up the MVIO peripheral to utilize the internal level shifters to communicate with and drive external components.

About

These Atmel Studio 7 bare metal examples in Getting Started with Multi Voltage I/O (MVIO) (TB3287) show how the MVIO is used on the AVR® DB family of microcontrollers. The MVIO peripheral allows a subset of the I/O pins to be powered by a different I/O voltage domain VDDIO2, eliminating the need for external level shifters.

Topics

Resources

Stars

Watchers

Forks

Packages

No packages published

Languages