Ramon Waninge / Mbed 2 deprecated Milestone1

Dependencies:   FastPWM mbed QEI biquadFilter HIDScope MODSERIAL

main.cpp

Committer:
efvanmarrewijk
Date:
2018-10-08
Revision:
10:ac36f9a204dd
Parent:
9:65c52c1f4a57
Child:
11:3efd6a324f16

File content as of revision 10:ac36f9a204dd:

#include "mbed.h"
#include "FastPWM.h"

Ticker motor;

AnalogIn pot1(A1);
AnalogIn pot2(A2);
InterruptIn button2(SW2);
InterruptIn button3(SW3);

DigitalOut pin2(D2);    // Motor 3 direction
FastPWM pin3(D3);       // Motor 3 pwm
DigitalOut pin4(D4);    // Motor 2 direction
FastPWM pin5(D5);       // Motor 2 pwm
FastPWM pin6(D6);       // Motor 1 pwm
DigitalOut pin7(D7);    // Motor 1 direction
//float u1  = pot1;

DigitalIn pin8(D8);     // Encoder 1 B
DigitalIn pin9(D9);     // Encoder 1 A
DigitalIn pin10(D10);   // Encoder 2 B
DigitalIn pin11(D11);   // Encoder 2 A
DigitalIn pin12(D12);   // Encoder 3 B
DigitalIn pin13(D13);   // Encoder 3 A

float b;

void draaisnel()
    {   if(button2 == 1)
        {   //Interrupt voor rotatierichting clockwise
            b = 0.4;  //In stapjes van 0.1
            pin3 = fabs(b);
        }
        else if (button2 == 0)
        {   //Interrupt voor rotatierichting 
        }
    }
void draailangzaam()
    {   if(button3 == 1)
        {  //Interrupt voor minder snelheid 
            b = -0.4;
            pin3 = fabs(b);
        }
    }

void draai()
{   if (b>0)
    {   pin2 = true;
        b = b+0.1;
    }
    else if(b<0)
    {   pin2 = false; 
        b = b-0.1;
    }
    else
    {   pin3 = 0;
    }
    pin3 = fabs(b);
    
    float u1 = 2.0*(pot1 - 0.5);
    if (u1>0)
    {   pin4 = true;
    }
    else if(u1<0)
    {   pin4 = false;    
    }
    pin5 = fabs(u1);
    
    float u2 = 2.0*(pot2 - 0.5);
    if (u2>0)
    {   pin7 = true;
    }
    else if(u2<0)
    {   pin7 = false;    
    }
    pin6 = fabs(u2);     
}
int main(){
    pin3 = 0.0;
    pin5.period(1.0/10000);
    button2.rise(&draaisnel);       // interrupt koppelen
    button3.rise(&draailangzaam);
    
    pin3.period_us(50);
    motor.attach(draai, 0.001);
   
    pin5.period_us(50);
    motor.attach(draai, 0.001);
    
    pin6.period_us(50);
    motor.attach(draai, 0.001);
   while(true){
       
    }
}