NAME
Device::Chip::NoritakeGU_D - chip driver for Noritake GU-D display
modules
SYNOPSIS
use Device::Chip::NoritakeGU_D;
use Future::AsyncAwait;
my $chip = Device::Chip::NoritakeGU_D->new( interface => "UART" );
await $chip->mount( Device::Chip::Adapter::...->new );
await $chip->text( "Hello, world!" );
DESCRIPTION
This Device::Chip subclass provides communication to a display module
in the GU-D family by Noritake.
The reader is presumed to be familiar with the general operation of
this chip; the documentation here will not attempt to explain or define
chip-specific concepts or features, only the use of this module to
access them.
CONSTRUCTOR
new
$chip = Device::Chip::NoritakeGU_D->new(
interface => $iface,
...
)
Constructs a new driver instance for the given interface type. The type
must be one of UART, I2C or SPI.
METHODS
The following methods documented in an await expression return Future
instances.
text
await $chip->text( $str );
Draw text at the cursor position.
cursor_left
cursor_right
cursor_home
await $chip->cursor_left;
await $chip->cursor_right;
await $chip->cursor_linehome;
await $chip->cursor_home;
Move the cursor left or right one character position, to the beginning
of the line, or to the home position (top left corner).
cursor_goto
await $chip->cursor_goto( $x, $y );
Moves the cursor to the $x'th column of the $y'th line (zero-indexed).
linefeed
await $chip->linefeed;
Move the cursor down to the next line.
clear
$chip->clear
Clear the display.
select_window
await $chip->select_window( $win );
Select the main window (when $win is 0), or one of the four numbered
sub-windows.
initialise
$chip->initialise
Reset all settings to their default values.
set_cursor_visible
await $chip->set_cursor_visible( $bool );
Set whether the cursor is visible.
set_brightness
await $chip->set_brightness( $val );
Set the display brightness, from 1 to 8.
set_reverse
await $chip->set_reverse( $bool );
Sets whether subsequent text will be rendered in "reverse video" (clear
pixels on a set background) effect.
set_write_mixture_display_mode
await $chip->set_write_mixture_display_mode( $mode );
Set the combining mode for newly-added display content. $mode must be
one of
set or and xor
set_font_size
await $chip->set_font_size( $size );
Set the font size. $size must be one of
5x7 8x16
set_font_width
await $chip->set_font_width( $width );
Set the font width. $width must be one of
fixed fixed2 prop prop2
set_font_magnification
await $chip->set_font_magnification( $xscale, $yscale );
Set the font scaling factor. $xscale must be between 1 to 4, and
$yscale must be 1 or 2.
realtime_image_display_columns
await $chip->realtime_image_display_columns( @columns );
Sends a bitmapped image to the display, at the cursor position. The
cursor is not moved.
@columns should be a list of strings of equal length, containing bytes
of pixel data to represent each vertical column of the image content.
set_gpio_direction
await $chip->set_gpio_direction( $dir );
Configure the GPIO pins for input or output. $dir is bitmask of four
bits. Low bits correspond to input, high bits to output.
set_gpio_output
await $chip->set_gpio_output( $value );
Write the value to the GPIO pins.
read_gpio
$value = await $chip->read_gpio;
Returns the current state of the GPIO pins.
read_touchswitches
$switches = await $chip->read_touchswitches;
Reads the status of the panel touch switches. Returns a hash reference
whose keys are the names of the touch areas (SW1, SW2, ...) and values
are booleans indicating whether that area currently detects a touch.
AUTHOR
Paul Evans <
[email protected]>