Sha256: 40330bf19f233efd61e5e3ee75e5b50b6958a0ee5c5e203712f23a0b08ed8eb6

Contents?: true

Size: 994 Bytes

Versions: 8

Compression:

Stored size: 994 Bytes

Contents

module Denko
  class Board
    # CMD = 12
    def uart_bb_start(tx, rx, baud, listening=true)
      config  = 0b01000000
      config |= 0b10000000 if listening

      self.write Message.encode command:      12,
                                pin:          tx,
                                value:        rx,
                                aux_message:  pack(:uint32, baud) + pack(:uint8, config)
    end

    # CMD = 12
    def uart_bb_stop
      config = 0b00000000
      self.write Message.encode command:      12,
                                aux_message:  pack(:uint32, [0]) + pack(:uint8, config)
    end

    # CMD = 13
    def uart_bb_write(data)
      if data.class == Array
        data = pack(:uint8, data)
      elsif data.class == String
      else
        raise ArgumentError, "data to write to UART should be Array of bytes or String. Given: #{data.inspect}"
      end

      self.write Message.encode(command: 13, value: data.length, aux_message: data)
    end
  end
end

Version data entries

8 entries across 8 versions & 1 rubygems

Version Path
denko-0.14.0 lib/denko/board/uart_bit_bang.rb
denko-0.13.6 lib/denko/board/uart_bit_bang.rb
denko-0.13.5 lib/denko/board/uart_bit_bang.rb
denko-0.13.4 lib/denko/board/uart_bit_bang.rb
denko-0.13.3 lib/denko/board/uart_bit_bang.rb
denko-0.13.2 lib/denko/board/uart_bit_bang.rb
denko-0.13.1 lib/denko/board/uart_bit_bang.rb
denko-0.13.0 lib/denko/board/uart_bit_bang.rb