Derek McLean / Mbed 2 deprecated uwb-quadcopter

Dependencies:   mbed ESC SR04 TSI

touchdemo.cpp

Committer:
MitchJCarlson
Date:
2013-06-06
Revision:
24:0da46fb81428
Parent:
19:96be4c99e9e3

File content as of revision 24:0da46fb81428:

#include "mbed.h"
#include "TSISensor.h"
#include "esc.h"

int main() {

    /* Electronic Speed Control */
    ESC esc1(PTD4);
    ESC esc2(PTC9);
    ESC esc3(PTC8);
    ESC esc4(PTA5);

    int throttleLevel = 0;


    /* Mode LEDs */
    PwmOut led1(LED_BLUE);
    PwmOut led2(LED_GREEN);
    PwmOut led3(LED_RED);

    led1 = 1;
    led2 = 1;
    led3 = 1;

    /* Capacitive Touch Sensor */
    TSISensor tsi;

    float percent=0;

    while (1) 
    {   
        if (tsi.readPercentage() > 0) {
            percent = tsi.readPercentage();
        }
        
        // LED=1,2,3 : blue=001, green=101, red=110
        led1 = (percent <= 0.33)?0:1;
        led2 = (percent > 0.66 && percent <= 1)?1:0;
        led3 = (percent > 0.66 && percent <= 1)?0:1;

        if (percent <= 0.33) {
            throttleLevel = 0;
            esc1.setThrottle(throttleLevel); esc2.setThrottle(throttleLevel); esc3.setThrottle(throttleLevel); esc4.setThrottle(throttleLevel);
        }
        else if (percent > 0.33 && percent <= 0.66) {
            throttleLevel = 15;
            esc1.setThrottle(throttleLevel); esc2.setThrottle(throttleLevel); esc3.setThrottle(throttleLevel); esc4.setThrottle(throttleLevel);
        }
        else if (percent > 0.66) {
            throttleLevel = 30;
            esc1.setThrottle(throttleLevel); esc2.setThrottle(throttleLevel); esc3.setThrottle(throttleLevel); esc4.setThrottle(throttleLevel);
        }
        esc1.pulse();
        esc2.pulse();
        esc3.pulse();
        esc4.pulse();
        wait_ms(20);
    }
}