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
455 456 457 458 |
# File 'lib/beaglebone/uart.rb', line 455 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.
613 614 615 |
# File 'lib/beaglebone/uart.rb', line 613 def disable UART::disable(@uart) end |
#each_char(&block) ⇒ Object
Read a character from a UART device and pass it to the specified block
532 533 534 |
# File 'lib/beaglebone/uart.rb', line 532 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
542 543 544 |
# File 'lib/beaglebone/uart.rb', line 542 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
550 551 552 |
# File 'lib/beaglebone/uart.rb', line 550 def each_line(&block) UART::each_line(@uart, &block) end |
#readchar ⇒ Object
Read one character from a UART device
502 503 504 |
# File 'lib/beaglebone/uart.rb', line 502 def readchar UART::readchar(@uart) end |
#readchars(bytes) ⇒ Object
Read characters from a UART device
514 515 516 |
# File 'lib/beaglebone/uart.rb', line 514 def readchars(bytes) UART::readchars(@uart, bytes) end |
#readline ⇒ Object
Read a line from a UART device
524 525 526 |
# File 'lib/beaglebone/uart.rb', line 524 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
601 602 603 |
# File 'lib/beaglebone/uart.rb', line 601 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
583 584 585 |
# File 'lib/beaglebone/uart.rb', line 583 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
563 564 565 |
# File 'lib/beaglebone/uart.rb', line 563 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
589 590 591 |
# File 'lib/beaglebone/uart.rb', line 589 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
595 596 597 |
# File 'lib/beaglebone/uart.rb', line 595 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
569 570 571 |
# File 'lib/beaglebone/uart.rb', line 569 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
466 467 468 |
# File 'lib/beaglebone/uart.rb', line 466 def set_speed(speed) UART::set_speed(@uart, speed) end |
#stop_read_wait ⇒ Object
Stops any threads waiting for data on the specified UART
606 607 608 |
# File 'lib/beaglebone/uart.rb', line 606 def stop_read_wait UART::stop_read_wait(@uart) end |