Browse Source

mq9: JavaScript example, with appropriate SWIG typemap

Signed-off-by: Zion Orent <zorent@ics.com>
Signed-off-by: Jon Trulson <jtrulson@ics.com>
Signed-off-by: John Van Drasek <john.r.van.drasek@intel.com>
Zion Orent 10 years ago
parent
commit
e005ec4624
1 changed files with 56 additions and 0 deletions
  1. 56
    0
      examples/javascript/gas/mq9.js

+ 56
- 0
examples/javascript/gas/mq9.js View File

@@ -0,0 +1,56 @@
1
+/*jslint node:true, vars:true, bitwise:true, unparam:true */
2
+/*jshint unused:true */
3
+/*
4
+* Author: Zion Orent <zorent@ics.com>
5
+* Copyright (c) 2015 Intel Corporation.
6
+*
7
+* Permission is hereby granted, free of charge, to any person obtaining
8
+* a copy of this software and associated documentation files (the
9
+* "Software"), to deal in the Software without restriction, including
10
+* without limitation the rights to use, copy, modify, merge, publish,
11
+* distribute, sublicense, and/or sell copies of the Software, and to
12
+* permit persons to whom the Software is furnished to do so, subject to
13
+* the following conditions:
14
+*
15
+* The above copyright notice and this permission notice shall be
16
+* included in all copies or substantial portions of the Software.
17
+*
18
+* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
19
+* EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
20
+* MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
21
+* NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
22
+* LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
23
+* OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
24
+* WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
25
+*/
26
+
27
+var upmMQ9 = require("jsupm_gas");
28
+
29
+// Attach gas sensor to AIO0
30
+var myMQ9 = new upmMQ9.MQ9(0);
31
+
32
+var threshContext = new upmMQ9.thresholdContext;
33
+threshContext.averageReading = 0;
34
+threshContext.runningAverage = 0;
35
+threshContext.averagedOver = 2;
36
+
37
+// Infinite loop, ends when script is cancelled
38
+while(1)
39
+{
40
+    var buffer = new upmMQ9.uint16Array(128);
41
+    var len = myMQ9.getSampledWindow(2, 128, buffer);
42
+    if (len)
43
+    {
44
+        var thresh = myMQ9.findThreshold(threshContext, 30, buffer, len);
45
+        myMQ9.printGraph(threshContext, 5);
46
+        //if (thresh)
47
+        //    console.log("Threshold is " + thresh);
48
+    }
49
+}
50
+
51
+// Print message when exiting
52
+process.on('SIGINT', function()
53
+{
54
+	console.log("Exiting...");
55
+	process.exit(0);
56
+});