Analog Input Pins
evive has 10 analog input pins behind Magic Lid. The Atmega controllers used for evive contain a total of 16 channel analog-to-digital (A/D) converters. Out of these, only 10 analog inputs are available to the user. The converter has 10-bit resolution, returning integers from 0 to 1023. While the main function of the analog pins for most Arduino users is to read analog sensors, the analog pins also have all the functionality of General Purpose Input/Output (GPIO) pins (the same as digital pins 0 - 13).
The analog pins can be used identically to the digital pins, using the aliases A0 (for analog input 0), A1, etc. For example, the code would look like this to set analog pin 0 to an output, and to set it HIGH.
Available pins in evive:
- 10 analog pins available for the user, A0 to A5 & A12 to A15
- Two potentiometers: Potentiometer_1, Potentiometer_2
- VSS_Voltage_Sense (for sensing input voltage)
- VVR_Voltage_Sense (for sensing variable voltage output)
How to use Analog Pin in Arduino IDE
To read analog input from an analog pin in Arduino IDE, you have to use analogRead(pin) function.
analogRead(pin) function reads the value from the specific analog pin. The output is an integer value between 0 and 1023 (Due to a 10 bit analog to digital converter), which is mapped between 0 and 5 volts input voltage. This yields a resolution between readings of 5 volts / 1024 units or, .0049 volts (4.9 mV) per unit.
It takes about 112 microseconds (0.000112 s) to read an analog input, so the maximum reading rate is about 9,000 times a second.
How to use Analog Pin in Scratch
This block returns the value of analog pins available in evive. Analog reading is of 10 bit resolution, hence the range of value is 0 to 1023. This range is mapped to the voltage of the pin (normally 0 to 5V). If the value received is 512, the voltage value will be around 2.5V.
Displaying the analog value of potentiometer 1: