![](/media/cache/img/default_profile.jpg.50x50_q85.jpg)
Robot tryout
Dependencies: mbed QEI biquadFilter MODSERIAL FastPWM ttmath Math
Motor_tryout.cpp
- Committer:
- Feike
- Date:
- 2019-10-14
- Revision:
- 17:6da57acb7bea
- Parent:
- 16:2ad161f709f6
- Child:
- 18:ab0fe311e7f3
File content as of revision 17:6da57acb7bea:
#include "mbed.h" #include "MODSERIAL.h" #include "QEI.h" MODSERIAL pc(USBTX, USBRX); PwmOut motor1_pwm(PTC2); DigitalOut motor1_dir(PTC3); PwmOut motor3_pwm(PTA1); DigitalOut motor3_dir(PTB9); QEI Encoder(D12,D13,NC,64,QEI::X4_ENCODING); int quit; int counts = 0; int limit_pos = 8400; Ticker pulse; void pulseget() { counts = Encoder.getPulses(); if(counts > limit_pos) { quit = 1; } } Ticker show; void pulseshow() { pc.printf("The counts is %i",counts); } // DE MAIN FUNCTIE int main(void) { pc.baud(115200); char cc = pc.getc(); while(true) { quit = 0; counts = 0; { pc.printf("in while"); int frequency_pwm = 10000; //10 kHz PWM motor1_pwm.period(1.0/(double)frequency_pwm); // T=1/f motor1_dir.write(0); // positief motor1_pwm.write(0.8); // write Duty Cycle motor3_pwm.period(1.0/(double)frequency_pwm); // T=1/f motor3_dir.write(0); // positief motor3_pwm.write(0.8); // write Duty Cycle counts = Encoder.getPulses(); pc.printf("The counts is %i\n\r",counts); //pulse.attach(pulseget,1.0/10000); // show.attach(pulseshow,1.0/10000); //if(quit == 1) //{ // pulse.detach(); // motor1_pwm.write(0); // motor3_pwm.write(0); // pc.printf("The motor is off with counts is %i\n\r",counts); // break; // } wait(1.0/10); } } }