Mbed HOVER
Dependencies: Motor Servo mbed
main.cpp
- Committer:
- hankpkai
- Date:
- 2017-04-24
- Revision:
- 0:146e770d8ab8
File content as of revision 0:146e770d8ab8:
#include "mbed.h" #include "Servo.h" #include "Motor.h" Serial blue(p28,p27); DigitalOut led1(LED1); DigitalOut led2(LED2); DigitalOut led3(LED3); DigitalOut led4(LED4); Motor propel(p22, p13, p14); Servo turn(p23); Servo lift(p25); int main() { char bnum=0; char bhit=0; //calibrating lift = 0; wait(0.5); lift = 1; wait(10); lift = 0; wait(10); turn =0.5; lift = 0; while(1) { led1 = 1; if (blue.getc()=='!') { if (blue.getc()=='B') { //button data packet bnum = blue.getc(); //button number bhit = blue.getc(); //1=hit, 0=release if (blue.getc()==char(~('!' + 'B' + bnum + bhit))) { //checksum OK? switch (bnum) { case '1': //number button 1 if (bhit=='1') { //add hit code here } else { //add release code here } break; case '2': //number button 2 if (bhit=='1') { propel.speed(1);//add hit code here } else { propel.speed(0);//add release code here } break; case '3': //number button 3 if (bhit=='1') { //add hit code here } else { //add release code here } break; case '4': //number button 4 if (bhit=='1') { propel.speed(-1);//add hit code here } else { propel.speed(0);//add release code here } break; case '5': //button 5 up arrow if (bhit=='1') { lift = 0.2; wait(2); lift = 0.4; wait(2); lift = 0.45; wait(2); lift = 0.6; wait(2); lift = 0.7; wait(2); lift = 0.8; wait(2); lift = 0.9; wait(2); lift= 1; } else { //lift = 0.5;//add release code here } break; case '6': //button 6 down arrow if (bhit=='1') { lift = 0;//add hit code here } else { lift = 0;//add release code here } break; case '7': //button 7 left arrow if (bhit=='1') { turn = 1;//add hit code here } else { turn = 0.5;//add release code here } break; case '8': //button 8 right arrow if (bhit=='1') { turn = 0;//add hit code here } else { turn = 0.5;//add release code here } break; default: break; } } } } } }