ticker aan de praat proberen te krijgen

Dependencies:   MODSERIAL mbed QEI

Committer:
sivuu
Date:
Mon Oct 17 13:07:26 2016 +0000
Revision:
1:9a06f249ccf0
Parent:
0:e97d89c1bf32
Child:
2:f70238e93bf0
ticker met aangepast door assistent dus nu met bool en flag;

Who changed what in which revision?

UserRevisionLine numberNew contents of line
sivuu 0:e97d89c1bf32 1 #include <iostream>
sivuu 0:e97d89c1bf32 2 #include <cstdio>
sivuu 0:e97d89c1bf32 3 #include <ctime>
sivuu 0:e97d89c1bf32 4 #include "MODSERIAL.h"
sivuu 0:e97d89c1bf32 5 #include "stdio.h"
sivuu 1:9a06f249ccf0 6 #include "mbed.h" //standaard bieb mbed
sivuu 1:9a06f249ccf0 7 #include "QEI.h" //bieb voor encoderfuncties in c++
sivuu 1:9a06f249ccf0 8 InterruptIn sw3(SW3);
sivuu 1:9a06f249ccf0 9 DigitalIn encoder1A(D13);
sivuu 1:9a06f249ccf0 10 DigitalIn encoder1B(D12);
sivuu 1:9a06f249ccf0 11 DigitalIn encoder2A(D11);
sivuu 1:9a06f249ccf0 12 DigitalIn encoder2B(D10);
sivuu 1:9a06f249ccf0 13 DigitalIn button_cw(D9);
sivuu 1:9a06f249ccf0 14 DigitalIn button_ccw(D8);
sivuu 1:9a06f249ccf0 15 MODSERIAL pc(USBTX, USBRX);
sivuu 1:9a06f249ccf0 16 DigitalOut richting_motor1(D4);
sivuu 1:9a06f249ccf0 17 PwmOut pwm_motor1(D5);
sivuu 1:9a06f249ccf0 18 DigitalOut richting_motor2(D7);
sivuu 1:9a06f249ccf0 19 PwmOut pwm_motor2(D6);
sivuu 0:e97d89c1bf32 20
sivuu 0:e97d89c1bf32 21 MODSERIAL pc(USBTX, USBRX);
sivuu 0:e97d89c1bf32 22
sivuu 1:9a06f249ccf0 23 double current_position = 0;
sivuu 1:9a06f249ccf0 24 double previous_position = 0;
sivuu 1:9a06f249ccf0 25 volatile bool tickerflag;
sivuu 0:e97d89c1bf32 26
sivuu 0:e97d89c1bf32 27 double ticker_TS=0.01;
sivuu 1:9a06f249ccf0 28 volatile double timepassed=0;
sivuu 0:e97d89c1bf32 29 Ticker t;
sivuu 1:9a06f249ccf0 30
sivuu 1:9a06f249ccf0 31 void tickerfunctie()
sivuu 0:e97d89c1bf32 32 {
sivuu 1:9a06f249ccf0 33 tickerflag = 1;
sivuu 0:e97d89c1bf32 34 }
sivuu 0:e97d89c1bf32 35
sivuu 0:e97d89c1bf32 36 int main()
sivuu 0:e97d89c1bf32 37 {
sivuu 0:e97d89c1bf32 38 pc.baud(115200);
sivuu 1:9a06f249ccf0 39 t.attach(&tickerfunctie,ticker_TS);
sivuu 0:e97d89c1bf32 40 while (true){
sivuu 1:9a06f249ccf0 41 if ( tickerflag == 1)
sivuu 1:9a06f249ccf0 42 {
sivuu 1:9a06f249ccf0 43 previous_position = current_position;
sivuu 1:9a06f249ccf0 44 current_position = encodershit;
sivuu 0:e97d89c1bf32 45
sivuu 1:9a06f249ccf0 46 snelheid = (current_position - previous_position) / ts
sivuu 1:9a06f249ccf0 47
sivuu 1:9a06f249ccf0 48 tickerflag = 0;
sivuu 1:9a06f249ccf0 49 }
sivuu 1:9a06f249ccf0 50 pc.printf("tijd voorbij: %f \r\n", timepassed);
sivuu 0:e97d89c1bf32 51 }
sivuu 0:e97d89c1bf32 52 }