Descripción
Lee el valor del pin analógico especificado. La placa Arduino contiene 6 canales (8 canales en el Mini yNano, 16 en el Mega), analógicos con convertidor analógico a digital de 10-bit. Esto significa que mapeará tensiones de entrada entre 0 y 5 voltios en valores enteros entre 0 y 1023. Esto produce una resolución entre las lecturas de: 5 voltios / 1024 unidades = 0.0049 voltios (4,9 mV) por unidad. El rango de entrada y la resolución se pueden cambiar con analogReference().
Se tarda unos 100 microsegundos (0.0001 s) para leer una entrada analógica, por lo que la velocidad de lectura máxima es de alrededor de 10.000 veces por segundo.
Sintaxis
analogRead(pin)
Parámetros
pin: el número de pin de la entrada analógica a leer (0 a5 en la mayoría de las placas, 0 a 7 en el Mini y Nano, 0 a 15 en el Mega)
Retornos
int (0 to 1023)
Nota
Si el pin de entrada analógica no está conectado (al aire o flotante), el valor devuelto por analogRead () fluctuará en base a una serie de factores (por ejemplo, los valores de las otras entradas analógicas, lo cerca que tu mano est.e a la placa, etc.).
Hola...¿Como puedo sacar el promedio de una lectura de 10 datos con el sensor BMP180?
ResponderEliminarDejo código del BMP180
#include
#include
Adafruit_BMP085 bmp;
void setup() {
Serial.begin(9600);
if (!bmp.begin()) {
Serial.println("Could not find a valid BMP085 sensor, check wiring!");
while (1) {}
}
}
void loop() {
Serial.print("Temperature = ");
Serial.print(bmp.readTemperature());
Serial.println(" *C");
Serial.print("Pressure = ");
Serial.print(bmp.readPressure());
Serial.println(" Pa");
Serial.print("Altitude = ");
Serial.print(bmp.readAltitude());
Serial.println(" meters");
Serial.print("Pressure at sealevel (calculated) = ");
Serial.print(bmp.readSealevelPressure());
Serial.println(" Pa");
Serial.print("Real altitude = ");
Serial.print(bmp.readAltitude(101500));
Serial.println(" meters");
Serial.println();
delay(500);
}
hedouuuuuu
Eliminarsoy anonymus
EliminarPito
ResponderEliminarMAMAS
EliminarEste comentario ha sido eliminado por el autor.
ResponderEliminarsimple, usá algo para sacar el promedio como
ResponderEliminarvar=0;
for(byte i=0; i<10; i++){
var += bmp.readTemperature();
delay(3);
}
var /= 10;
Cómo puedo sacar el promedio de la lectura de 10 valores RSSI de potencia WiFI para el dispositivo?
ResponderEliminar#include
void setup()
{
Serial.begin(9600);
WiFi.mode(WIFI_STA);
WiFi.disconnect();
delay(100);
Serial.println("MODO ESTACION CONFIGURADO");
Serial.println("");
}
void loop()
{
Serial.println("Escaneando dispositivos...");
for (int m = 0; m < 10; ++m){
int n = WiFi.scanNetworks();
for (int n = 0; n < 10; ++n)
{
if((WiFi.SSID)(n)!="Dispositivo-01"||"Dispositivo-02"||"Dispositivo-03"||"Dispositivo-04")
//Serial.println("No se encontraron dispositivos");
continue;
}
if (n!=0)
{
for (int i = 0; i < n; ++i)
{
if((WiFi.SSID)(i)!="Dispositivo-01")
continue;
//Serial.print(i + 1);
//Serial.println(" ");
Serial.print("- Escaneo ");
Serial.print(m + 1);
Serial.print(" ");
Serial.print(WiFi.SSID(i));
Serial.print(": (");
Serial.print(WiFi.RSSI(i));
Serial.print("dBm");
Serial.println(")");
//delay(100);
}
}
}
Serial.println("");
//delay(5000);
}
Muy buenas, me ha venido de perlas este post para empezar a trabajar con la función. ¿Cómo podría utilizarlo con un sensor de audio para que iluminara un led si detecta sonido?
ResponderEliminarMuchas gracias de antemano
Chupala
EliminarPito
ResponderEliminar