Advertisement
B-Matt

Arduino - Joystick LED

Nov 11th, 2016
77
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C++ 0.88 KB | None | 0 0
  1. void setup() {
  2.   pinMode(2, INPUT_PULLUP); // Switch
  3.  
  4.   for(int i=0; i < 5; i++) {
  5.     pinMode(i+3, OUTPUT);
  6.   }
  7. }
  8.  
  9. int smjer(int x)
  10. {
  11.   if(x > 530)       return -1;
  12.   else if(x < 499)  return 1;
  13.   else              return 0;
  14. }
  15.  
  16. void loop() {
  17.   int x, z;
  18.   x = analogRead(A0);                         // 0...1023
  19.   z = digitalRead(2);                         // 0-off, 1-on
  20.  
  21.   byte led;                                   // stanje na diodama
  22.   int br=1;
  23.   for(int m=0; m < 6; m++) {
  24.     int s = smjer(x);                         // [-1,0,1]
  25.    
  26.     if(s < 0) led = (1<<m);                   // 00000001 gornja petlja pomiče 1cu u stranu (lijevo)
  27.     else if(s > 0) led = (0b00100000>>m);     // 00000001 gornja petlja pomiče 1cu u stranu (desno)
  28.                
  29.     for(int i=0; i < 5; i++) {
  30.       digitalWrite(i+3, led & (1<<i));
  31.     }
  32.     delay(100);
  33.   }
  34. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement