forked from node-red/node-red-nodes
-
Notifications
You must be signed in to change notification settings - Fork 0
/
pimcp3008.html
84 lines (82 loc) · 3.47 KB
/
pimcp3008.html
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
<!DOCTYPE html>
<script type="text/x-red" data-template-name="pimcp3008">
<div class="form-row">
<label for="node-input-dev"><i class="fa fa-server"></i> Device</label>
<select type="text" id="node-input-dev" style="width:150px;">
<option value="3008">mcp3008</option>
<option value="3002">mcp3002</option>
<option value="3004">mcp3004</option>
<option value="3202">mcp3202</option>
<option value="3204">mcp3204</option>
<option value="3208">mcp3208</option>
<option value="3304">mcp3304</option>
</select>
</div>
<div class="form-row">
<label for="node-input-pin"><i class="fa fa-map-pin"></i> Input pin</label>
<select type="text" id="node-input-pin" style="width:150px;">
<option value=0>A0</option>
<option value=1>A1</option>
<option value=2>A2</option>
<option value=3>A3</option>
<option value=4>A4</option>
<option value=5>A5</option>
<option value=6>A6</option>
<option value=7>A7</option>
<option value="M">set by msg.payload</option>
</select>
</div>
<div class="form-row">
<label for="node-input-dnum"><i class="fa fa-toggle-on"></i> Device ID</label>
<select type="text" id="node-input-dnum" style="width:150px;">
<option value=0>CE0</option>
<option value=1>CE1</option>
</select>
</div>
<div class="form-row">
<label for="node-input-bus"><i class="fa fa-toggle-on"></i> SPI bus</label>
<select type="text" id="node-input-bus" style="width:150px;">
<option value=0>0</option>
<option value=1>1</option>
</select>
</div>
<div class="form-row">
<label for="node-input-name"><i class="fa fa-tag"></i> Name</label>
<input type="text" id="node-input-name" placeholder="Name"/>
</div>
</script>
<script type="text/x-red" data-help-name="pimcp3008">
<p>Reads from an MCP3xxx Series Analogue to Digital Converter (ADC) chip on the Pi SPI CE0 or CE1 connection,
such as the rasp.io/analogzero.</p>
<p>You can either set a channel in the edit dialogue, or you can set the <code>msg.payload</code>
to select the channel dynamically. If so then the expected payload must be a value from 0 to 7.</p>
<p>Outputs a numeric <code>msg.payload</code> with a range of 0 to 1023, representing 0V to 3.3V.</p>
<p><i>Hint</i>: use a <code>range</code> node to re-scale the values to ones you want.</p>
<p>Also sets <code>msg.topic</code> to <i>adc/{the pin number}</i></p>
<p><b>Warning</b>: Input voltages must not exceed 3.3V</p>
<p>The SPI bus must be enabled for this node to work. This can be achieved by using the
advanced menu (option 9 A5) of the <b>raspi-config</b> utility.</p>
</script>
<script type="text/javascript">
RED.nodes.registerType('pimcp3008',{
category: 'Raspberry Pi',
paletteLabel: 'A/D converter',
color: "#c6dbef",
defaults: {
name: {value:""},
dev: {value:"3008"},
pin: {value:0, required:true},
dnum: {value:0},
bus: {value:0}
},
inputs: 1,
outputs: 1,
icon: "rpi.png",
label: function() {
return this.name || "mcp"+this.dev+" "+((this.pin==="M")?"":this.pin);
},
labelStyle: function() {
return this.name?"node_label_italic":"";
}
});
</script>