Nooo, what i posted is just an example, I realize that the average can never go to 386....but what I am having a problem with it is that, Lets say average for 1 PM falls somewhere between 100 and 300. the average for 2 pm falls between 125 and 175. So when I try to simulate this, even though i get the value of say 150, it is showing 1 PM, when i need it to show 2 PM. Get it? its tricky to explain.
#include <LiquidCrystal.h>
LiquidCrystal lcd(12, 11, 5, 4, 3, 2);
int analogPin0 = 0;
int analogPin1 = 1;
int analogPin2 = 2;
int analogPin3 = 3;
int analogPin4 = 4;int sensVal;
int analogreading = 0;
int analogreading1 = 1;
int analogreading2 = 2;
int analogreading3 = 3;
int analogreading4 = 4;void setup()
{
Serial.begin(9600);
lcd.begin(16,2);
lcd.setCursor(0,0);
lcd.print("I Work, but no");
lcd.setCursor(0,1);
lcd.print("clouds please!");
delay(3000);
lcd.clear();}
void loop ()
{
analogreading = analogRead(analogPin0);
Serial.print("Pin0=");
Serial.println(analogreading);analogreading1 = analogRead(analogPin1);
Serial.print("Pin1=");
Serial.println(analogreading1);analogreading2 = analogRead(analogPin2);
Serial.print("Pin2=");
Serial.println(analogreading2);analogreading3 = analogRead(analogPin3);
Serial.print("Pin3=");
Serial.println(analogreading3);analogreading4 = analogRead(analogPin4);
Serial.print("Pin4=");
Serial.println(analogreading4);int list[] = { analogreading, analogreading1, analogreading2, analogreading3, analogreading4 };
for (int i = 0; i < 4; i++)
{
for (int j = i; j < 5; j++)
{
if (list[j] < list*)*
- {*
- int temp = list[j];*
_ list[j] = list*;_
_ list = temp;
}
}
}*_* float total = 0.0f;*
* int count = 0;*
* for (int k = 2; k<5; k++)*
* {*
* total += list[k];*
* count ++;*
* }** float average = (total/count);*
* Serial.print("avg=");*
* Serial.println(average);*
* // lcd.setCursor(0,0);*
* // lcd.print("Avg= ");*
* // lcd.setCursor(5,0);*
* // lcd.print(average);*
* //delay(1500);*
* //lcd.clear();** if ((average > 316 && (average < 386)))*
* { Serial.println ("1 pm");*
* }*
* if ((average > 387 && (average < 488)))*
* {*
* Serial.println("2pm");*
* }** if ((average > 330 && (average < 375)))*
* {*
* Serial.println("1.30 PM");*
* }*
* // lcd.setCursor(0,0);*
* // lcd.print("Avg= ");*
* // lcd.setCursor(5,0);*
* // lcd.print(average);*
* //delay(1500);*
* //lcd.clear();** delay(2000);*
* }*
[/quote]
here is the full code