svoe

Dependencies:   mbed mbed-STM32F103C8T6 MPU6050_1

wifi.h

Committer:
dima285
Date:
2019-08-06
Branch:
svoe
Revision:
23:bc05a104be10
Parent:
22:14e85f2068c7

File content as of revision 23:bc05a104be10:

unsigned char volatile external_command = 0;

void command_receive(){
    external_command = wifi.getc();
    //myled = !myled;
    } 

void command_process(){             // Interrupt !!! - transfer to main
    int command = int(external_command/64);
    int value = external_command & 0x3f;
    switch (command){
        case 0: x_prop = value * 10; break; //target.x = (float) value/100; break;
        case 1: x_diff = value * 10; break; //target.y = (float) value/100; break;
        case 2: balance_prop = value / 10; break;
        case 3: balance_diff = value; break; 
        }

    /*if(external_command > 0xf0){                   //16 commands w/o parameters
        switch (external_command){
            case 0xff: {stop(); break;}      //Command Stop
            case 0xfe: {dance(10,2); break;} //Command Dance
            }
        }
    else{
        if (external_command < 128) k_1 = 0.05*(external_command - 10); //{speed = 2*(external_command - 20);} //Command Speed 
        else k_2 = 0.05*(external_command - 128 - 10); // {if ((external_command - 128 - 20) == 0)radius = 1e5; else radius = 100/(external_command - 128 - 20);} //Command Turn 
        stop_flag = 0; infinite_flag = 1; motor_enable = 1; motor_busy = 1;
        }*/
    external_command = 0;
    }

void wifi_init(){
    wifi.attach(&command_receive);
    }