Bem vindo ao Multilógica Shop, o primeiro site a comercializar os produtos Arduino e artigos de Open Source Hardware no Brasil. Aqui você vai encontrar toda a referência de instalação e programação da plataforma Arduino traduzida para o nosso português, bem como tutoriais e exemplos. Encontre mais informações sobre como comprar clicando aqui.
Regulando
Faz repetidas leituras a partir de uma entrada analógica, calculando a média e informando o computador. Demonstra o uso de arrays.
Circuito
Potenciômetro no pino de entrada analógica 0.
Código
// Define the number of samples to keep track of. The higher the number,
// the more the readings will be smoothed, but the slower the output will
// respond to the input. Using a #define rather than a normal variable lets
// use this value to determine the size of the readings array.
#define NUMREADINGS 10
int readings[NUMREADINGS]; // the readings from the analog input
int index = 0; // the index of the current reading
int total = 0; // the running total
int average = 0; // the average
int inputPin = 0;
void setup()
{
Serial.begin(9600); // initialize serial communication with computer
for (int i = 0; i < NUMREADINGS; i++)
readings[i] = 0; // initialize all the readings to 0
}
void loop()
{
total -= readings[index]; // subtract the last reading
readings[index] = analogRead(inputPin); // read from the sensor
total += readings[index]; // add the reading to the total
index = (index + 1); // advance to the next index
if (index >= NUMREADINGS) // if we're at the end of the array...
index = 0; // ...wrap around to the beginning
average = total / NUMREADINGS; // calculate the average
Serial.println(average); // send it to the computer (as ASCII digits)
}
O conteúdo desta página é uma tradução para o português a partir do site original do Arduino.
Esta obra está licenciada sob uma Licença Creative Commons.


