Class: Beaglebone::UARTDevice
- Inherits:
-
Object
- Object
- Beaglebone::UARTDevice
- Defined in:
- lib/beaglebone/uart.rb
Overview
Object Oriented UART Implementation. This treats the UART device as an object.
Instance Method Summary collapse
-
#disable ⇒ Object
Disable a UART device.
-
#each_char(&block) ⇒ Object
Read a character from a UART device and pass it to the specified block.
-
#each_chars(chars, &block) ⇒ Object
Read characters from a UART device and pass them to the specified block.
-
#each_line(&block) ⇒ Object
Read lines from a UART device and pass them to the specified block.
-
#initialize(uart, speed = 9600) ⇒ UARTDevice
constructor
Initialize a UART device.
-
#readchar ⇒ Object
Read one character from a UART device.
-
#readchars(bytes) ⇒ Object
Read characters from a UART device.
-
#readline ⇒ Object
Read a line from a UART device.
-
#run_on_each_char(callback, repeats = nil) ⇒ Object
Convenience method for run_on_each_chars with chars set to 1.
-
#run_on_each_chars(callback, chars = 1, repeats = nil) ⇒ Object
Runs a callback after receiving data from a UART device This creates a new thread that runs in the background.
-
#run_on_each_line(callback, repeats = nil) ⇒ Object
Runs a callback after receiving a line of data from a UART device This creates a new thread that runs in the background.
-
#run_once_on_each_char(callback) ⇒ Object
Convenience method for run_on_each_chars with chars and repeats set to 1.
-
#run_once_on_each_chars(callback, chars = 1) ⇒ Object
Convenience method for run_on_each_chars with chars and repeats set to 1.
-
#run_once_on_each_line(callback) ⇒ Object
Convenience method for run_on_each_line with repeats set to 1.
-
#set_speed(speed) ⇒ Object
Set the speed of the UART.
-
#stop_read_wait ⇒ Object
Stops any threads waiting for data on the specified UART.
-
#write(data) ⇒ Object
Write data to a UART device.
-
#writeln(data) ⇒ Object
Write a line data to a UART device.
Constructor Details
#initialize(uart, speed = 9600) ⇒ UARTDevice
Initialize a UART device. Returns a UARTDevice object
530 531 532 533 |
# File 'lib/beaglebone/uart.rb', line 530 def initialize(uart, speed=9600) @uart = uart UART::setup(@uart, speed) end |
Instance Method Details
#disable ⇒ Object
device trees cannot be unloaded at this time without kernel panic.
Disable a UART device.
688 689 690 |
# File 'lib/beaglebone/uart.rb', line 688 def disable UART::disable(@uart) end |
#each_char(&block) ⇒ Object
Read a character from a UART device and pass it to the specified block
607 608 609 |
# File 'lib/beaglebone/uart.rb', line 607 def each_char(&block) UART::each_char(@uart, &block) end |
#each_chars(chars, &block) ⇒ Object
Read characters from a UART device and pass them to the specified block
617 618 619 |
# File 'lib/beaglebone/uart.rb', line 617 def each_chars(chars, &block) UART::each_chars(@uart, chars, &block) end |
#each_line(&block) ⇒ Object
Read lines from a UART device and pass them to the specified block
625 626 627 |
# File 'lib/beaglebone/uart.rb', line 625 def each_line(&block) UART::each_line(@uart, &block) end |
#readchar ⇒ Object
Read one character from a UART device
577 578 579 |
# File 'lib/beaglebone/uart.rb', line 577 def readchar UART::readchar(@uart) end |
#readchars(bytes) ⇒ Object
Read characters from a UART device
589 590 591 |
# File 'lib/beaglebone/uart.rb', line 589 def readchars(bytes) UART::readchars(@uart, bytes) end |
#readline ⇒ Object
Read a line from a UART device
599 600 601 |
# File 'lib/beaglebone/uart.rb', line 599 def readline UART::readline(@uart) end |
#run_on_each_char(callback, repeats = nil) ⇒ Object
Convenience method for run_on_each_chars with chars set to 1
676 677 678 |
# File 'lib/beaglebone/uart.rb', line 676 def run_on_each_char(callback, repeats=nil) UART::run_on_each_char(callback, @uart, repeats) end |
#run_on_each_chars(callback, chars = 1, repeats = nil) ⇒ Object
Runs a callback after receiving data from a UART device This creates a new thread that runs in the background
658 659 660 |
# File 'lib/beaglebone/uart.rb', line 658 def run_on_each_chars(callback, chars=1, repeats=nil) UART::run_on_each_chars(callback, @uart, chars, repeats) end |
#run_on_each_line(callback, repeats = nil) ⇒ Object
Runs a callback after receiving a line of data from a UART device This creates a new thread that runs in the background
638 639 640 |
# File 'lib/beaglebone/uart.rb', line 638 def run_on_each_line(callback, repeats=nil) UART::run_on_each_line(callback, @uart, repeats) end |
#run_once_on_each_char(callback) ⇒ Object
Convenience method for run_on_each_chars with chars and repeats set to 1
664 665 666 |
# File 'lib/beaglebone/uart.rb', line 664 def run_once_on_each_char(callback) UART::run_once_on_each_char(callback, @uart) end |
#run_once_on_each_chars(callback, chars = 1) ⇒ Object
Convenience method for run_on_each_chars with chars and repeats set to 1
670 671 672 |
# File 'lib/beaglebone/uart.rb', line 670 def run_once_on_each_chars(callback, chars=1) UART::run_once_on_each_chars(callback, @uart, chars) end |
#run_once_on_each_line(callback) ⇒ Object
Convenience method for run_on_each_line with repeats set to 1
644 645 646 |
# File 'lib/beaglebone/uart.rb', line 644 def run_once_on_each_line(callback) UART::run_once_on_each_line(callback, @uart) end |
#set_speed(speed) ⇒ Object
Set the speed of the UART
541 542 543 |
# File 'lib/beaglebone/uart.rb', line 541 def set_speed(speed) UART::set_speed(@uart, speed) end |
#stop_read_wait ⇒ Object
Stops any threads waiting for data on the specified UART
681 682 683 |
# File 'lib/beaglebone/uart.rb', line 681 def stop_read_wait UART::stop_read_wait(@uart) end |