Example for Lib Pulses. Measurement of power and energy with a energy meter which has a S0 interface

Dependencies:   Pulses mbed

Measurement of low frequencys based on timing between pulses. Example for using a energy meter with S0 interface.

Revision:
0:010c6e517e18
Child:
1:0f8dd2deb61b
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/main.cpp	Wed Nov 07 18:48:55 2012 +0000
@@ -0,0 +1,22 @@
+#include "mbed.h"
+#include "Pulses.h"
+
+//DigitalOut myled(LED1);
+Pulses pulses(p8, Pulses::FALL);
+Serial pc(USBTX, USBRX); // tx, rx
+
+int main() {
+    // choose on of the following unit scales
+    pulses.setFactor(1.0f);   // Hz
+    pulses.setFactor(60.0f);   // rpm
+    pulses.setFactor(3600.0f/2000.0f);   // kWh; energy meter with SO interface - 2000 pulses per kWh
+    
+    while(1) {
+        pc.printf ( "Pulses: counter=%d act=%.3f average=%.3f\r\n", 
+            pulses.getCounter(), 
+            pulses.getAct(), 
+            pulses.getAverage() );
+        
+        wait(3.14);
+    }
+}