Code om de PID controller af te stellen aan de hand van een sinus golf

Dependencies:   mbed QEI MODSERIAL FastPWM biquadFilter

Revision:
2:926d56babb1a
Parent:
1:58f34947c674
Child:
3:ac13255164cd
--- a/main.cpp	Wed Mar 13 14:01:03 2019 +0000
+++ b/main.cpp	Wed Mar 13 15:38:05 2019 +0000
@@ -1,16 +1,27 @@
 #include "mbed.h"
+#include "MODSERIAL.h"
 DigitalIn button2(SW2);
 DigitalIn button3(SW3);
+DigitalOut led(LED_GREEN);
+DigitalOut led2(LED_RED);
+MODSERIAL pc(USBTX, USBRX);
+
+//motoren
 DigitalOut direction1(D4);
 PwmOut pwmpin1(D5);
 PwmOut pwmpin2(D6);
 DigitalOut direction2(D7);
+
+//Pot meter
 AnalogIn pot(A1);
 Ticker Pot;
+Ticker PotRead;
+Ticker Typ;
 
-DigitalOut led(LED_RED);
+
 volatile float PWM1;
 volatile float PWM2;
+float Pot2;
 
 void Period(void)
     {
@@ -19,6 +30,10 @@
 void Potread(void)
     {     
     pwmpin2 = pot.read();
+    
+    //pwmpin2.write(0.5);
+    //pwmpin2 = PWM2;
+
     }  
 void MotorOn(void)
     {
@@ -30,21 +45,34 @@
     Pot.detach ();    
     pwmpin2 = 0;
     }
+void Typen(void){
+    char c;
+    c = pc.getc();
+    pc.printf("%c", c);
+    }
     
 
        
 int main() {
     Period();
-    while (1){
+    pc.baud(115200);
+    pc.printf("start\r\n");
+    
+    while (true){
+    led2 = 0;
+    Pot2 = pot.read();
+    pc.printf("%f\r\n",Pot2);
     if (!button2)
     {
-        led = !led;
-        MotorOn();
+        led = 1;
+        MotorOn();   
     }
     if (!button3)
     {
         MotorOff();
     }
+    led = 0;
+    Typ.attach(Typen,0.1);
     }
     }