
Lol smth
Dependencies: LocalPositionSystem MMA8451Q Motor_Driver Sensors mbed
Fork of TDP_main_BartFork by
main.cpp
- Committer:
- Reckstyle
- Date:
- 2015-02-23
- Revision:
- 9:718987b106a8
- Parent:
- 7:14af656b721f
- Child:
- 10:c9212bbfeae6
File content as of revision 9:718987b106a8:
// TESTING REPO COMMIT /* ****** MAIN PROGRAM ****** TODO : organisational routine still to be decided. 3 main approaches: -sequential prirority based tasks -Timer/Ticker driven with sequential prirority based tasks - interrupt driven from sensor inputs Please consider that although it is an embedded envrionment we are NOT creating a HARD-TIME real time system - delays can be dealt with */ #include "mbed.h" #include "sensor_measure.h" #include "Motor_Driver.h" //#include "Sensors.h" #define PWM_PERIOD_US 10000 Serial pc(USBTX, USBRX); Timer MeasureTimer; //Timer used for measurement /* For deleting double measure1 (){ sensorTimer.reset(); double freq,period = 0.0; int n =0; //number of samples int sensor_old = 0; int sensor_new = 0;//variable to remember old sensor state double time_us = sensorTimer.read(); while (n < NUMBER_SAMPLES){ sensor_new = pin_right_right.read(); if ( sensor_new== 1 && sensor_old == 0){ // detect on rising edge ,sensor_old n++; } sensor_old = sensor_new; } double time_us2 = sensorTimer.read(); // pc.printf(" delta time is %f , time 2 is %f " , (time_us2 - time_us), time_us2); period = time_us2/((double)NUMBER_SAMPLES); // Get time freq = (1/period); // Convert period (in us) to frequency (Hz). Works up to 100kHz. // pc.printf(" period is %f ", period); return freq;//(freq < sensor.black_value*2)? 1 : 0; } */ int main() { /* Motor_Driver motors(PTD4, PTA12, PTA4, PTA5, PTC9, PTC8, PWM_PERIOD_US); motors.setSpeed(1.0f); motors.forward(); motors.start(); wait(3); motors.stop() motors.reverse(); wait(200ms); motors.start(); */ // setup_counter(1000, 0); // float frequency = measure_frequency(CHANNEL_1); sensor_initialise(); // initialise sensor values wait(1); //give time to set up the system sensorTimer.start(); // start timer for sensors pc.printf("Start..."); MeasureTimer.start(); while (1) { MeasureTimer.reset(); measure(right_right); pc.printf("Time taken for the whole thing is %f",MeasureTimer.read()); } }