bucaneer 0.1.0 → 0.1.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -30,22 +30,21 @@ module Bucaneer
30
30
  raise "no mode specified" unless mode
31
31
 
32
32
  serial_port = SerialPort.new(dev, baud)
33
+ bus_pirate = Bucaneer::BusPirate.new(serial_port, mode, options)
33
34
 
34
- begin
35
- bus_pirate = Bucaneer::BusPirate.new(serial_port, mode, options)
36
- yield bus_pirate.protocol if block_given?
37
- ensure
35
+ if block_given?
38
36
  begin
39
- if bus_pirate
40
- bus_pirate.exit_bitbang_mode
41
- bus_pirate.reset
37
+ yield bus_pirate.protocol
38
+ ensure
39
+ begin
40
+ bus_pirate.close
41
+ rescue
42
+ # Do nothing.
42
43
  end
43
-
44
- serial_port.close
45
- rescue
46
- # Do nothing.
47
44
  end
48
45
  end
46
+
47
+ bus_pirate
49
48
  end
50
49
 
51
50
  def initialize(serial_port, mode, options)
@@ -53,6 +52,12 @@ module Bucaneer
53
52
  set_mode(mode.to_sym, options)
54
53
  end
55
54
 
55
+ def close
56
+ enter_bitbang_mode
57
+ reset
58
+ @serial_port.close
59
+ end
60
+
56
61
  def tx(byte, expected = SUCCESS)
57
62
  @serial_port.putc byte
58
63
  sleep TIMEOUT
@@ -72,10 +77,6 @@ module Bucaneer
72
77
  end until response == "BBIO1"
73
78
  end
74
79
 
75
- def exit_bitbang_mode
76
- tx(BITBANG_MODE)
77
- end
78
-
79
80
  def reset
80
81
  tx(RESET)
81
82
  end
@@ -92,6 +93,7 @@ module Bucaneer
92
93
  end
93
94
 
94
95
  private
96
+
95
97
  # Set the BusPirate to the given mode.
96
98
  def set_mode(mode, options)
97
99
  enter_bitbang_mode
@@ -41,6 +41,7 @@ module Bucaneer::Protocol
41
41
  end
42
42
 
43
43
  private
44
+
44
45
  def start_bulk_write(length)
45
46
  @controller.tx(BULK_WRITE | (length - 1))
46
47
  end
@@ -41,6 +41,7 @@ module Bucaneer::Protocol
41
41
  end
42
42
 
43
43
  private
44
+
44
45
  def set_cs(enable)
45
46
  mask = SET_CS
46
47
  mask |= ENABLE if enable
@@ -1,3 +1,3 @@
1
1
  module Bucaneer
2
- VERSION = "0.1.0" unless defined?(Bucaneer::VERSION)
2
+ VERSION = "0.1.1" unless defined?(Bucaneer::VERSION)
3
3
  end
metadata CHANGED
@@ -1,13 +1,13 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: bucaneer
3
3
  version: !ruby/object:Gem::Version
4
- hash: 27
4
+ hash: 25
5
5
  prerelease: false
6
6
  segments:
7
7
  - 0
8
8
  - 1
9
- - 0
10
- version: 0.1.0
9
+ - 1
10
+ version: 0.1.1
11
11
  platform: ruby
12
12
  authors:
13
13
  - Josh Bassett
@@ -15,7 +15,7 @@ autorequire:
15
15
  bindir: bin
16
16
  cert_chain: []
17
17
 
18
- date: 2010-09-22 00:00:00 +10:00
18
+ date: 2010-09-27 00:00:00 +10:00
19
19
  default_executable:
20
20
  dependencies:
21
21
  - !ruby/object:Gem::Dependency