NAME
RPi::Const - Constant variables for embedded programming, including the RPi:: family of modules
SYNOPSIS
use RPi::Const (:all);
# or...
use RPi::Const (:pinmode);
# etc
DESCRIPTION
This module optionally exports selections or all constant variables used within the RPi::WiringPi
suite.
CONSTANT EXPORT TAGS
These are the individual grouping of export tags. The :all
tag includes all of the below.
:mode
Setup modes. This is what determines which pin numbering scheme you're using. See wiringPi setup modes for details.
RPI_MODE_WPI => 0, # wiringPi scheme
RPI_MODE_GPIO => 1, # GPIO scheme
RPI_MODE_GPIO_SYS => 2, # GPIO scheme in SYS mode
RPI_MODE_PHYS => 3, # physical pin layout scheme
RPI_MODE_UNINIT => -1, # setup not yet run
:pinmode
Pin modes.
INPUT => 0,
OUTPUT => 1,
PWM_OUT => 2,
GPIO_CLOCK => 3,
SOFT_PWM_OUTPUT => 4, # reserved
SOFT_TONE_OUTPUT => 5, # reserved
PWM_TONE_OUTPUT => 6, # reserved
:altmode
Pin ALT modes.
ALT0 => 4,
ALT1 => 5,
ALT2 => 6,
ALT3 => 7,
ALT4 => 3,
ALT5 => 2,
:pull
Internal pin pull up/down resistor state.
PUD_OFF => 0,
PUD_DOWN => 1,
PUD_UP => 2,
:state
HIGH => 1,
LOW => 0,
ON => 1,
OFF => 0,
:pwm_mode
The modes the PWM can be set to.
PWM_MODE_MS => 0,
PWM_MODE_BAL => 1,
:pwm_defaults
Hardware defaults for PWM settings.
PWM_DEFAULT_MODE => 1, # balanced mode
PWM_DEFAULT_CLOCK => 32,
PWM_DEFAULT_RANGE => 1023
:interrupt
Edge detection states for interrupts.
EDGE_SETUP => 0, # reserved
EDGE_FALLING => 1,
EDGE_RISING => 2,
EDGE_BOTH => 3,
:mcp23017_registers
Hardware register locations and related info for the MCP23107 GPIO Expander
MCP23017_IODIRA => 0x00,
MCP23017_IODIRB => 0x01,
MCP23017_IPOLA => 0x02,
MCP23017_IPOLB => 0x03,
MCP23017_GPINTENA => 0x04,
MCP23017_GPINTENB => 0x05,
MCP23017_DEFVALA => 0x06,
MCP23017_DEFVALB => 0x07,
MCP23017_INTCONA => 0x08,
MCP23017_INTCONB => 0x09,
MCP23017_IOCONA => 0x0A,
MCP23017_IOCONB => 0x0B,
MCP23017_GPPUA => 0x0C,
MCP23017_GPPUB => 0x0D,
MCP23017_INTFA => 0x0E,
MCP23017_INTFB => 0x0F,
MCP23017_INTCAPA => 0x10,
MCP23017_INTCAPB => 0x11,
MCP23017_GPIOA => 0x12,
MCP23017_GPIOB => 0x13,
MCP23017_OLATA => 0x14,
MCP23017_OLATB => 0x15,
MCP23017_INPUT => 1,
MCP23017_OUTPUT => 0
AUTHOR
Steve Bertrand, <steveb@cpan.org>
COPYRIGHT AND LICENSE
Copyright (C) 2016 by Steve Bertrand
This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself, either Perl version 5.18.2 or, at your option, any later version of Perl 5 you may have available.