Advertisement
Guest User

Untitled

a guest
Feb 27th, 2017
84
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C 2.02 KB | None | 0 0
  1. const int m1SensePin =0;
  2. // const int m2SensePin =1;
  3. // const int lSensePin =2;
  4. // const int tSensePin =3;
  5. const int fSensePin =4;
  6.  
  7. const int ledPin =13;                    // This will need to be changed at a latter date, or I can use pin 13 as output
  8. // const int relayPin =12;
  9.  
  10. float m1Val;
  11. //  float m2Val;
  12. //  float lVal;
  13. //  float tVal;
  14. float fVal;
  15.  
  16. int m1Array[10];
  17. //  int m2Array[10];
  18. //  int lArray[10];
  19. //  int tArray[10];
  20. //  int fArray[10];
  21.  
  22. int ledState = 0;
  23. float avg = 0;
  24.  
  25. unsigned long currentMillis;
  26. long previousMillis1 = 0;
  27. long previousMillis2 = 0;
  28. long interval1 = 800;
  29. long interval2 = interval1/5;  
  30.  
  31. float average (int array[], int len);
  32.  
  33.  
  34. void setup()
  35. {
  36.     pinMode(ledPin, OUTPUT);            
  37. //  pinMode(relayPin, OUTPUT);
  38.     Serial.begin(9600);
  39. }
  40.  
  41. void loop()
  42. {
  43.     int i = 0;
  44.     currentMillis= millis();
  45.     m1Val = analogRead(m1SensePin);
  46. //  m2Val = analogRead(m2SensePin);
  47. //  lVal = analogRead(lSensePin);
  48. //  tVal = analogRead(tSensePin);
  49.  
  50.     if(currentMillis - previousMillis1 >= interval1)
  51.     {
  52.         previousMillis1 = currentMillis;
  53.  
  54.         if(ledState == LOW)
  55.         {
  56. //            Serial.println(analogRead(m1Val));                                                   // Prints Array Data over Serial
  57.             ledState = HIGH;
  58.         }
  59.         else
  60.         {
  61.             ledState = LOW;
  62.             digitalWrite(ledPin, ledState);
  63.         }
  64.     }
  65.  
  66. if( (currentMillis - previousMillis2 >= interval2) && (i <= 10))                     // This handles Arrays, providing more accurate data
  67.     {
  68.         previousMillis2 = currentMillis;
  69.  
  70.         if( i <= 10)
  71.         {
  72.         m1Array[i] = m1Val;
  73.         Serial.println(m1Array[i]);
  74.         i++;
  75.         }
  76.         else
  77.         {
  78.         avg = average(m1Array, 10);
  79.         i=0;
  80.         }
  81.     }
  82. }
  83. float average (int array[], int len)
  84. {
  85.   int sum = 0;  
  86.   for (int i = 0 ; i < len ; i++)
  87.   {
  88.   sum += array [i];
  89.   Serial.println(sum);
  90. }
  91. return  ((float) sum) / len;
  92. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement