arduino
Analoge ingangen
Zoeken…
Syntaxis
-
analogRead(pin)
// Lezen van de gegeven pin.
Opmerkingen
Serial.println(val)
Zie: Seriële communicatie voor hulp bij seriële communicatie
Druk een analoge waarde af
int val = 0; // variable used to store the value
// coming from the sensor
void setup() {
Serial.begin(9600); //Begin serializer to print out value
// Note: Analogue pins are
// automatically set as inputs
}
void loop() {
val = analogRead(0); // read the value from
// the sensor connected to A0.
Serial.println(val); //Prints the value coming in from the analog sensor
delay(10); // stop the program for
// some time
}
Haal spanning van analoge pin
Analoge pinnen kunnen worden gebruikt om spanningen te lezen, wat handig is voor batterijmonitoring of voor interface met analoge apparaten. Standaard is de AREF-pin hetzelfde als de bedrijfsspanning van de Arduino, maar kan extern op andere waarden worden ingesteld. Als de te lezen spanning groter is dan de ingangsspanning, is een potentiële devider nodig om de analoge spanning te verlagen.
#define analogPin 14 //A0 (uno)
#define AREFValue 5 //Standard for 5V Arduinos
#define ADCResolution 1023 //Standard for a 10bit ADC
int ADCValue = 0;
float voltage = 0;
void setup()
{
Serial.begin(9600);
}
void loop()
{
readADC();
Serial.print(voltage); Serial.println("V");
}
void readADC()
{
ADCValue = analogRead(analogPin);
float = ( ( (float)ADCValue/ADCRange ) * AREFValue ); //Convert the ADC value to a float, devide by the ADC resolution and multiply by the AREF voltage
}
Modified text is an extract of the original Stack Overflow Documentation
Licentie onder CC BY-SA 3.0
Niet aangesloten bij Stack Overflow