Dependencies:   mbed

Embed: (wiki syntax)

« Back to documentation index

Show/hide line numbers main2.h Source File

main2.h

00001 #include "mbed.h"
00002 #include "Counter.h"
00003 DigitalOut led1(LED1);
00004 #define TICK_PERIOD 0.5
00005 Counter counter(p18);
00006 
00007 Ticker tick;
00008 volatile int tick_active = 0;
00009 
00010 void dotick (void) {
00011     tick_active = 1;
00012 
00013 }
00014 float samples [2] = {0};
00015 int index2 = 0;
00016 int start = 1;
00017 
00018 int rpm_counter=0;
00019 int main() {
00020 
00021     tick.attach(dotick,0.5);
00022     while (1) {
00023         while (tick_active == 0) {}
00024         rpm_counter = counter.read();
00025         counter.reset();
00026 
00027         tick_active = 0;
00028         samples[index2] = 120*rpm_counter;
00029         index2++;
00030         if (index2 >= 2) {
00031             index2 = 0;
00032         }
00033         int i;
00034         start = 1;
00035         for (i=0; i<2; i++) {
00036             if (samples[i] <180) {
00037                 start = 0;
00038             }
00039         }
00040         if (start) {
00041             led1 = !led1;
00042         }
00043     }
00044 }
00045