element14 Community
element14 Community
    Register Log In
  • Site
  • Search
  • Log In Register
  • Community Hub
    Community Hub
    • What's New on element14
    • Feedback and Support
    • Benefits of Membership
    • Personal Blogs
    • Members Area
    • Achievement Levels
  • Learn
    Learn
    • Ask an Expert
    • eBooks
    • element14 presents
    • Learning Center
    • Tech Spotlight
    • STEM Academy
    • Webinars, Training and Events
    • Learning Groups
  • Technologies
    Technologies
    • 3D Printing
    • FPGA
    • Industrial Automation
    • Internet of Things
    • Power & Energy
    • Sensors
    • Technology Groups
  • Challenges & Projects
    Challenges & Projects
    • Design Challenges
    • element14 presents Projects
    • Project14
    • Arduino Projects
    • Raspberry Pi Projects
    • Project Groups
  • Products
    Products
    • Arduino
    • Avnet Boards Community
    • Dev Tools
    • Manufacturers
    • Multicomp Pro
    • Product Groups
    • Raspberry Pi
    • RoadTests & Reviews
  • Store
    Store
    • Visit Your Store
    • Choose another store...
      • Europe
      •  Austria (German)
      •  Belgium (Dutch, French)
      •  Bulgaria (Bulgarian)
      •  Czech Republic (Czech)
      •  Denmark (Danish)
      •  Estonia (Estonian)
      •  Finland (Finnish)
      •  France (French)
      •  Germany (German)
      •  Hungary (Hungarian)
      •  Ireland
      •  Israel
      •  Italy (Italian)
      •  Latvia (Latvian)
      •  
      •  Lithuania (Lithuanian)
      •  Netherlands (Dutch)
      •  Norway (Norwegian)
      •  Poland (Polish)
      •  Portugal (Portuguese)
      •  Romania (Romanian)
      •  Russia (Russian)
      •  Slovakia (Slovak)
      •  Slovenia (Slovenian)
      •  Spain (Spanish)
      •  Sweden (Swedish)
      •  Switzerland(German, French)
      •  Turkey (Turkish)
      •  United Kingdom
      • Asia Pacific
      •  Australia
      •  China
      •  Hong Kong
      •  India
      •  Korea (Korean)
      •  Malaysia
      •  New Zealand
      •  Philippines
      •  Singapore
      •  Taiwan
      •  Thailand (Thai)
      • Americas
      •  Brazil (Portuguese)
      •  Canada
      •  Mexico (Spanish)
      •  United States
      Can't find the country/region you're looking for? Visit our export site or find a local distributor.
  • Translate
  • Profile
  • Settings
Programmable Logic
  • Challenges & Projects
  • Project14
  • Programmable Logic
  • More
  • Cancel
Programmable Logic
Blog MKR VIDOR 4000 Simple DVM
  • Blog
  • Forum
  • Documents
  • Events
  • Polls
  • Files
  • Members
  • Mentions
  • Sub-Groups
  • Tags
  • More
  • Cancel
  • New
Programmable Logic requires membership for participation - click to join
  • Share
  • More
  • Cancel
Group Actions
  • Group RSS
  • More
  • Cancel
Engagement
  • Author Author: rsc
  • Date Created: 16 Jul 2019 7:13 PM Date Created
  • Views 778 views
  • Likes 5 likes
  • Comments 0 comments
  • programmablelogicch
  • mkr_vidor
Related
Recommended

MKR VIDOR 4000 Simple DVM

rsc
rsc
16 Jul 2019

Here's a simple DVM made from an Arduino VIDOR 4000.

A potentiometer is placed in between VCC and GND with the wiper connected to analog input A3.

The value of the analog input is read and then shown through the HDMI to a monitor screen.

The arduino example code for showing the Arduino logo was modified for this project.

Here is the code listing:

//MKR VIDOR 4000 Simple DVM
//R. Scott Coppersmith
//Last Edit 16July2019


#include "VidorGraphics.h"
#include "Vidor_GFX.h"


Vidor_GFX  vdgfx;
int analogPin = A3; // potentiometer wiper (middle terminal) connected to analog pin 3
                    // outside leads to ground and +5V
int val = 0;  // variable to store the value read
void setup() {
  // Initialize the FPGA
  if (!FPGA.begin()) {
    Serial.println("Initialization failed!");
    while (1) {}
  }


  delay(4000);
  // Fill the screen with a white background
  vdgfx.fillRect(0,0,640,480,vdgfx.White());


}


void loop()
{
  
  while (1) {
    delay(200);
    val = analogRead(analogPin);  // read the input pin
    vdgfx.fillRect(50,50,250,180,vdgfx.Yellow());
    vdgfx.text.setCursor(50,150);
    vdgfx.text.setAlpha(255);
    vdgfx.text.setSize(4);
    vdgfx.text.setColor(vdgfx.Blue());
    vdgfx.println(val);
  }
}

 

 

Video of operation:

https://www.element14.com/community/videos/29879

 

You don't have permission to edit metadata of this video.
Edit media
x
image
Upload Preview
image

 

To convert counts (14-1023) to voltage (0.0 vdc to 3.3 vdc) change val from int to double and add this line of code after reading the analog input:

 

val = (val-14)*3.3/(1023-14); //convert to voltage 0-3.3vdc

  • Sign in to reply
element14 Community

element14 is the first online community specifically for engineers. Connect with your peers and get expert answers to your questions.

  • Members
  • Learn
  • Technologies
  • Challenges & Projects
  • Products
  • Store
  • About Us
  • Feedback & Support
  • FAQs
  • Terms of Use
  • Privacy Policy
  • Legal and Copyright Notices
  • Sitemap
  • Cookies

An Avnet Company © 2025 Premier Farnell Limited. All Rights Reserved.

Premier Farnell Ltd, registered in England and Wales (no 00876412), registered office: Farnell House, Forge Lane, Leeds LS12 2NE.

ICP 备案号 10220084.

Follow element14

  • X
  • Facebook
  • linkedin
  • YouTube