rpi_led_bargraph 0.1.0 → 0.2.0

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: daee57871dc6a4e5e45a256f2d9205d84e0e45b3
4
- data.tar.gz: fcaf8a25dd0effb9936698d706f01ebd23095019
3
+ metadata.gz: 10daac76501cc7eba2e8777017a99f553d0bb4f8
4
+ data.tar.gz: 95a1f1561c05003a38fcd4011fe79249953d58b2
5
5
  SHA512:
6
- metadata.gz: 255dcca94e857f77e56cc235e628b9cbea0cb986edc87fcd749aed3415837a19611c494cc0ebcce0898e517ce165d7a3cbf655eb4070651469f848e0f718a060
7
- data.tar.gz: d080fe99c150ebe2c74dd90d909f180a490dda1f6f50f412892dbfda451e6bfcf78c1d18a2cb38cc2ee1611d8c94accb46bd4fd461d94c097d35c342968f92bc
6
+ metadata.gz: 3244c3a0908571204058f72da10411862b5cd0bbfa6cba71bf57a8f499d8f30b1a31bf4e71776813d0adc0b12bcc78d54415b5652991e88cb4cd0fe729978dff
7
+ data.tar.gz: a92793041ca423dbe60cea6fe4b44280640f87b8c8fb21a060e91bde5479337d2ecafd700005113ebf7011b056170a8cd51643e9d6a9de41f69ba30a670d49a3
checksums.yaml.gz.sig CHANGED
Binary file
data.tar.gz.sig CHANGED
Binary file
@@ -2,25 +2,37 @@
2
2
 
3
3
  # file: rpi_led_bargraph.rb
4
4
 
5
- require 'rpi'
5
+ require 'rpi_led'
6
6
 
7
7
 
8
- class RPiLedBarGraph < RPi
8
+ class RPiLedBarGraph
9
+
10
+ attr_accessor :brightness
9
11
 
10
12
  def initialize(pins, wait: 0.1, dir: :ltr, invert: false)
11
- super pins
13
+
14
+ @pins = pins.map {|x| RPiLed.new x, smooth: false}
12
15
  @wait, @dir, @invert = wait, dir, invert
16
+ @level, @brightness, @blink = 100, 100, false
17
+
18
+ end
19
+
20
+ def brightness=(val)
21
+ @brightness = val
22
+ level(@level, blink: @blink)
13
23
  end
14
24
 
15
25
  def on
16
- a = @dir == :ltr ? pins : pins.reverse
26
+ a = @dir == :ltr ? @pins : @pins.reverse
17
27
  a.each {|x| x.on; sleep @wait}
28
+ @old_level = 100
18
29
  :on
19
30
  end
20
31
 
21
32
  def off
22
- a = @dir == :ltr ? pins.reverse : pins
33
+ a = @dir == :ltr ? @pins.reverse : @pins
23
34
  a.each {|x| x.off; sleep @wait}
35
+ @old_level = 0
24
36
  :off
25
37
  end
26
38
 
@@ -30,22 +42,41 @@ class RPiLedBarGraph < RPi
30
42
 
31
43
  # input % from 0-100
32
44
  #
33
- def level(n, state=nil, blink: false)
45
+ def level(n, blink: false)
34
46
 
35
- blink = state if state == :blink
47
+ @blink = blink
36
48
 
37
- upper = pins.length / (100.0 / n) - 1
38
- upper = pins.length - upper - 1 if @invert
49
+ upper = (@pins.length / (100.0 / n) - 1).round
50
+ upper = @pins.length - upper - 1 if @invert
51
+
52
+ a = @dir == :ltr ? @pins : @pins.reverse
53
+
39
54
 
40
- a = @dir == :ltr ? pins : pins.reverse
41
55
  a.each(&:off)
42
- sleep 0.3 if blink
43
- a[0..(upper).to_i].each(&:on)
56
+ a[0..(upper - 1).to_i].each {|x| x.on; x.brightness = @brightness}
57
+
58
+ if @blink then
59
+ sleep 0.3
60
+ a[upper].brightness = @brightness
61
+ a[upper].blink
62
+ else
63
+ a[upper].off
64
+ sleep 0.3
65
+ a[upper].brightness = @brightness
66
+ end
44
67
 
45
- a[upper].blink if blink
46
-
68
+ @level = n
69
+
47
70
  end
48
71
 
49
72
  alias progress level
73
+
50
74
 
51
75
  end
76
+
77
+ if __FILE__ == $0 then
78
+
79
+
80
+ g = RPiLedBarGraph.new(%w(26 19 13 6 5 11 20 16 4 12), wait: 0.1)
81
+ g.on; sleep 0.2; g.off
82
+
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: rpi_led_bargraph
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.0
4
+ version: 0.2.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - James Robertson
@@ -31,28 +31,28 @@ cert_chain:
31
31
  4ry38pQMrbNookqpiCpOBwQKZxzlSEt5e4L6yn9WL5PIPG9MDUnTNI7QU9vTJQIR
32
32
  VPsfAKArOaooXw==
33
33
  -----END CERTIFICATE-----
34
- date: 2016-02-28 00:00:00.000000000 Z
34
+ date: 2016-04-10 00:00:00.000000000 Z
35
35
  dependencies:
36
36
  - !ruby/object:Gem::Dependency
37
- name: rpi
37
+ name: rpi_led
38
38
  requirement: !ruby/object:Gem::Requirement
39
39
  requirements:
40
40
  - - "~>"
41
41
  - !ruby/object:Gem::Version
42
- version: '0.4'
42
+ version: '0.1'
43
43
  - - ">="
44
44
  - !ruby/object:Gem::Version
45
- version: 0.4.7
45
+ version: 0.1.1
46
46
  type: :runtime
47
47
  prerelease: false
48
48
  version_requirements: !ruby/object:Gem::Requirement
49
49
  requirements:
50
50
  - - "~>"
51
51
  - !ruby/object:Gem::Version
52
- version: '0.4'
52
+ version: '0.1'
53
53
  - - ">="
54
54
  - !ruby/object:Gem::Version
55
- version: 0.4.7
55
+ version: 0.1.1
56
56
  description:
57
57
  email: james@r0bertson.co.uk
58
58
  executables: []
metadata.gz.sig CHANGED
Binary file