Arduino Nano: Read the analog value of a potentiometer and display its corresponding digital value.
![Screenshot.jpg](https://steemitimages.com/640x0/https://res.cloudinary.com/hpiynhbhq/image/upload/v1515801415/gfqzstl55azx3h8pwngw.jpg)
photocredits
for this activity you must remember the concepts shown below.
Potenciometer
A potentiometer is a simple knob that provides a variable resistance, which we can read into the Arduino board as an analog value.
ADC
An Analog to Digital Converter (ADC) is a very useful feature that converts an analog voltage on a pin to a digital number. The arduino Nano has 8 analog inputs, each of them provides 10 bits of resolution. from A0 to A7.
the 10 bits of resolution means that it will map input voltages between 0 and 5 volts into integer values between 0 and 1023.
serial communication
Serial ports are the main way to communicate an Arduino board with a computer. Thanks to the serial port we can, for example, move the mouse
There are endless possibilities in which the use of the serial port is required. Therefore, the serial port is a fundamental component of a large number of Arduino projects, and it is one of the basic elements that we must learn in order to take full advantage of Arduino.
Serial ports
A port is the generic name with which we name interfaces, physical or virtual, that allow communication between two computers or devices.
A serial port sends the information through a sequence of bits. This requires at least two connectors to perform data communication, RX (reception) and TX (transmission). Sometimes you will see refer to the serial ports as UART.
Arduino and the Serial Port
Virtually all Arduino boards have at least one UART unit. Many models of Arduino boards have a USB or Micro USB connector connected to one of the serial ports, which simplifies the process of connecting to a computer. However some boards, such as the Mini Pro, do not have this connector so the only way to connect to them is directly through the corresponding pins.
we will connect using the USB cable.
Here we are going to see a photo of the arduino nano:
![Screenshot002.jpg](https://steemitimages.com/640x0/https://res.cloudinary.com/hpiynhbhq/image/upload/v1515807489/dbw3pmqjh4cxt35qpqwg.jpg)
PhotoCredits
Activity
we are going to read an external analog value given by the variable resistor of a potentiometer and we will see the corresponding digital value on the screen of the serial monitor tool of the Arduino IDE.
difficulty
This tutorial is for those who know the basics of Arduino.
Requirement
- Arduino nano with USB Cable
- Potenciometer
- Laptop with Arduino IDE
Steps to follow
- Prepare the equipment needed for the activity.
- Connect the arduino to the Laptop using the usb cable
- Open Arduino IDE
now we are going to open a new project in arduino:
![Sin título.png](https://steemitimages.com/640x0/https://res.cloudinary.com/hpiynhbhq/image/upload/v1515868265/smdb0xsxq81jpv5badae.png)
you will see this window:
![Sin título1.png](https://steemitimages.com/640x0/https://res.cloudinary.com/hpiynhbhq/image/upload/v1515868277/ubxgzhgzuguvmlypekus.png)
Now we are going to connect the potentiometer to the arduino board as we will see in the following image:
![foto1.jpg](https://steemitimages.com/640x0/https://res.cloudinary.com/hpiynhbhq/image/upload/v1516466414/ejtdokflnfdevzzmsbvx.jpg)
in the following image we will see the code to read the analog voltage of pin A0, use the adc to obtain the digital value and print it on the serial monitor. Remember that you must have basic arduino notions.
Program
now you must write the following code that I have explained:
![foto2.jpg](https://steemitimages.com/640x0/https://res.cloudinary.com/hpiynhbhq/image/upload/v1516468894/gixpa5rbdor907nrd2hn.jpg)
This is the text code:
int val_pot; //variable to store the analog value read
void setup() {
// put your setup code here, to run once:
Serial.begin(9600); ////sets the baud rate of the UART for serial transmission
}
// put your main code here, to run repeatedly:
void loop() {
//reads the analog value of pin A0 connected to the potentiometer
val_pot = analogRead(A0);
//print out the following string
Serial.print("The digital value is: ");
//print out the value you read on the serial monitor
Serial.println(val_pot);
//Wait 10 ms for the next reading.
delay(100);
}
The serial port monitor is a small utility integrated within IDE Standard that allows us to easily send and receive information through the serial port. In the image we see how to open the serial monitor:
![Sin título3.png](https://steemitimages.com/640x0/https://res.cloudinary.com/hpiynhbhq/image/upload/v1515868344/um6qvomgdw9glq7agnui.png)
Using the serial monitor is very simple, and has two zones, one that shows the data received, and another to send them. You should check that the baud is 9600 as you configured it with the Serial.begin(9600) function.
![Sin título4.png](https://steemitimages.com/640x0/https://res.cloudinary.com/hpiynhbhq/image/upload/v1515868361/scufa3e0xp4aeorcx10o.png)
After connecting the potentiometer to the analog input (pin A0) we will be able to vary the voltage in the center pin between 0 and 5V and display the digital values on the serial monitor.
![Sin título5.png](https://steemitimages.com/640x0/https://res.cloudinary.com/hpiynhbhq/image/upload/v1515868371/fwvxpuqiqybdhewxpexw.png)
you should see values from 0 to 1023 according to the position of the potentiometer knob.
try to run the code and start to learn.
Collaborations
Posted on Utopian.io - Rewarding Open Source Contributors
Hey @luisrod I am @utopian-io. I have just upvoted you!
Achievements
Suggestions
Get Noticed!
Community-Driven Witness!
I am the first and only Steem Community-Driven Witness. Participate on Discord. Lets GROW TOGETHER!
Up-vote this comment to grow my power and help Open Source contributions like this one. Want to chat? Join me on Discord https://discord.gg/Pc8HG9x
Thank you for the contribution. It has been approved.
You can contact us on Discord.
[utopian-moderator]