![](/media/cache/group/default_image.jpg.50x50_q85.jpg)
the fish that looks like a jet
Dependencies: ADXL345 ADXL345_I2C IMUfilter ITG3200 mbed Servo
Diff: main.cpp
- Revision:
- 11:8ec915eb70f6
- Parent:
- 10:d9f1037f0cb0
- Child:
- 12:7eeb29892625
diff -r d9f1037f0cb0 -r 8ec915eb70f6 main.cpp --- a/main.cpp Fri Jan 31 05:18:19 2014 +0000 +++ b/main.cpp Fri Jan 31 19:36:28 2014 +0000 @@ -1,33 +1,54 @@ #include "mbed.h" -#include "motor_controller.h" +//#include "motor_controller.h" #include "guardian.h" //#include "IMU.h" #include "Servo.h" //#include "rtos.h" //#include "PwmReader.h" -#include "PwmIn.h" +//#include "PwmIn.h" +#include "MainController.h" -#define VOLUME_MAX 0.4 -#define VOLUME_MIN 0.2 -#define FREQUENCY_MAX 0.4 -#define FREQUENCY_MIN 0.2 -#define RUDDER_MAX 0.4 -#define RUDDER_MIN 0.2 -#define SIZE_ARRAY 500 - -bool quit=false; +//bool quit=false; //InterruptIn event(p16); -PololuMController mcon(p22, p6, p5); + //Servo servo(p21); //Guardian ap(p21, p23, p24, p25, p26, p26); //Serial xbee(p13, p14); Serial pc(USBTX, USBRX); -PwmIn ch3(p16,0.054,0.092); -PwmIn ch6(p15,0.055,0.092); +// Timer t; +// +// +//int counter; +//int divisions; +//float vol,frq; +//PwmOut led(LED1); -float throttle, frequency, rudder; +//void dosomething () +//{ +// if( counter == divisions) { +// ticker1.detach(); +// vol = ch6.dutycyclescaledup(); +// frq = ch3.dutycyclescaledup(); +// counter = 0; +// ticker1.attach(&dosomething,1/(frq*float(divisions))); +// } +// +// +// +// } +// +// +//void startsomething() +//{ +// counter = 0; +// divisions = 20; +// +// +// ticker1.attach(&dosomething,1/(frq*float(divisions))); +//} + int main() { //ap.calibrate(); @@ -35,19 +56,25 @@ //ap.setoff(); t.start(); + MainController mainCtrl; + + + //startsomething(); + + mainCtrl.start(); + + while(t.read() < 500) { + - float vol_norm=ch6.dutycyclescaledup(); - float freq_norm=ch3.dutycyclescaledup(); - - //mcon.drive_rectangular(t.read(), vol_norm*freq_norm, 3*freq_norm); //mcon.drive_sinusoidal(t.read(), vol_norm*freq_norm, 3*freq_norm); - float dutycycle = mcon.drive_sinusoidal(t.read(), vol_norm*freq_norm, freq_norm); - pc.printf("ch 3: %f, ch 6: %f, dc: %f, asin: %f\n", vol_norm, freq_norm, dutycycle, asin(sin(t.read())) ); + //float dutycycle = mcon.drive_sinusoidal(t.read(), vol_norm*freq_norm, freq_norm); + pc.printf("frq: %f, vol: %f, amp: %f, dut: %f\n", mainCtrl.getFrequency(), mainCtrl.getVolume(), mainCtrl.getAmplitude(),mainCtrl.getDutyCycle() ); //pc.printf("time: %f\n\r", t.read()); //pc.printf("throttle: %f frequency: %f rudder: %f\n\r",throttle,frequency,rudder); - wait_ms(20); + wait_ms(100); } t.stop(); + mainCtrl.stop(); }