A freq gen

Dependencies:   C12832_lcd LM75B mbed

Committer:
usedbytes
Date:
Sat Jan 30 16:53:54 2016 +0000
Revision:
0:606db2d43559
disruptor v1

Who changed what in which revision?

UserRevisionLine numberNew contents of line
usedbytes 0:606db2d43559 1 #include "mbed.h"
usedbytes 0:606db2d43559 2 #include "C12832_lcd/C12832_lcd.h"
usedbytes 0:606db2d43559 3 #include "LM75B/LM75B.h"
usedbytes 0:606db2d43559 4
usedbytes 0:606db2d43559 5 PwmOut spkr(p26);
usedbytes 0:606db2d43559 6 AnalogIn fine(p19);
usedbytes 0:606db2d43559 7 AnalogIn coarse(p20);
usedbytes 0:606db2d43559 8 C12832_LCD lcd("LCD");
usedbytes 0:606db2d43559 9
usedbytes 0:606db2d43559 10 int main()
usedbytes 0:606db2d43559 11 {
usedbytes 0:606db2d43559 12 int us, last_us, freq;
usedbytes 0:606db2d43559 13 spkr.write(0.5);
usedbytes 0:606db2d43559 14
usedbytes 0:606db2d43559 15 while(1) {
usedbytes 0:606db2d43559 16 freq = (int)(50000.0 * coarse.read()) + (1000.0 * fine.read());
usedbytes 0:606db2d43559 17 us = 1000000 / freq;
usedbytes 0:606db2d43559 18 lcd.locate(0,3);
usedbytes 0:606db2d43559 19 lcd.printf("Freq: %5i Hz", freq);
usedbytes 0:606db2d43559 20 lcd.locate(0,12);
usedbytes 0:606db2d43559 21 lcd.printf(" (%7i us)", us);
usedbytes 0:606db2d43559 22
usedbytes 0:606db2d43559 23 if (us != last_us) {
usedbytes 0:606db2d43559 24 last_us = us;
usedbytes 0:606db2d43559 25 spkr.write(0.5);
usedbytes 0:606db2d43559 26 spkr.period_us(us);
usedbytes 0:606db2d43559 27 }
usedbytes 0:606db2d43559 28 wait(0.01);
usedbytes 0:606db2d43559 29 }
usedbytes 0:606db2d43559 30 }