NOT FINISHED YET!!! My first try to get a self built fully working Quadrocopter based on an mbed, a self built frame and some other more or less cheap parts.

Dependencies:   mbed MODI2C

Committer:
maetugr
Date:
Sat Dec 01 07:13:04 2012 +0000
Revision:
28:ba6ca9f4def4
Parent:
12:67a06c9b69d5
bevor eigener PID

Who changed what in which revision?

UserRevisionLine numberNew contents of line
maetugr 0:0c4fafa398b4 1 #include "LED.h"
maetugr 0:0c4fafa398b4 2 #include "mbed.h"
maetugr 0:0c4fafa398b4 3
maetugr 1:5a64632b1eb9 4 LED::LED() : Led(LED1, LED2, LED3, LED4){
maetugr 1:5a64632b1eb9 5 roller = 0;
maetugr 1:5a64632b1eb9 6 }
maetugr 0:0c4fafa398b4 7
maetugr 0:0c4fafa398b4 8 void LED::shownumber(int number) {
maetugr 0:0c4fafa398b4 9 Led = number;
maetugr 0:0c4fafa398b4 10 }
maetugr 0:0c4fafa398b4 11
maetugr 1:5a64632b1eb9 12 void LED::ride(int times = 1) {
maetugr 1:5a64632b1eb9 13 Led = 0;
maetugr 0:0c4fafa398b4 14 for (int j = 0; j < times; j++) {
maetugr 1:5a64632b1eb9 15 for(int i=0; i < 4; i++) {
maetugr 0:0c4fafa398b4 16 Led = 1 << i;
maetugr 1:5a64632b1eb9 17 wait(0.2);
maetugr 0:0c4fafa398b4 18 }
maetugr 0:0c4fafa398b4 19 }
maetugr 1:5a64632b1eb9 20 Led = 0;
maetugr 1:5a64632b1eb9 21 }
maetugr 1:5a64632b1eb9 22
maetugr 1:5a64632b1eb9 23 void LED::roll(int times = 1) {
maetugr 1:5a64632b1eb9 24 Led = 0;
maetugr 1:5a64632b1eb9 25 for (int j = 0; j < (times*2); j++) {
maetugr 1:5a64632b1eb9 26 for(int roller = 1; roller <= 4; roller++) {
maetugr 1:5a64632b1eb9 27 tilt(roller);
maetugr 1:5a64632b1eb9 28 wait(0.1);
maetugr 1:5a64632b1eb9 29 }
maetugr 1:5a64632b1eb9 30 }
maetugr 1:5a64632b1eb9 31 roller = 0;
maetugr 1:5a64632b1eb9 32 Led = 0;
maetugr 1:5a64632b1eb9 33 }
maetugr 1:5a64632b1eb9 34
maetugr 1:5a64632b1eb9 35 void LED::rollnext() {
maetugr 1:5a64632b1eb9 36 if (roller >= 4)
maetugr 1:5a64632b1eb9 37 roller = 0;
maetugr 8:d25ecdcdbeb5 38 roller++;
maetugr 1:5a64632b1eb9 39 tilt(roller);
maetugr 0:0c4fafa398b4 40 }
maetugr 0:0c4fafa398b4 41
maetugr 0:0c4fafa398b4 42 void LED::tilt(int index) {
maetugr 12:67a06c9b69d5 43 Led = Led ^ (1 << (index-1)); //XOR
maetugr 12:67a06c9b69d5 44 }
maetugr 12:67a06c9b69d5 45
maetugr 12:67a06c9b69d5 46 void LED::set(int index) {
maetugr 12:67a06c9b69d5 47 Led = Led | (1 << (index-1)); //OR
maetugr 12:67a06c9b69d5 48 }
maetugr 12:67a06c9b69d5 49
maetugr 12:67a06c9b69d5 50 void LED::reset(int index) {
maetugr 12:67a06c9b69d5 51 Led = Led & ~(1 << (index-1)); //OR
maetugr 12:67a06c9b69d5 52 }
maetugr 12:67a06c9b69d5 53
maetugr 12:67a06c9b69d5 54 int LED::check(int index) {
maetugr 12:67a06c9b69d5 55 return Led & (1 << (index-1));
maetugr 1:5a64632b1eb9 56 }
maetugr 1:5a64632b1eb9 57
maetugr 1:5a64632b1eb9 58 void LED::operator=(int value) {
maetugr 1:5a64632b1eb9 59 Led = value;
maetugr 0:0c4fafa398b4 60 }