public class BrickletIndustrialDigitalIn4 extends Device
Modifier and Type | Class and Description |
---|---|
class |
BrickletIndustrialDigitalIn4.EdgeCountConfig |
static interface |
BrickletIndustrialDigitalIn4.InterruptListener
This listener is triggered whenever a change of the voltage level is detected
on pins where the interrupt was activated with
setInterrupt(int) . |
Device.Identity
Modifier and Type | Field and Description |
---|---|
static java.lang.String |
DEVICE_DISPLAY_NAME |
static int |
DEVICE_IDENTIFIER |
static short |
EDGE_TYPE_BOTH |
static short |
EDGE_TYPE_FALLING |
static short |
EDGE_TYPE_RISING |
static byte |
FUNCTION_GET_AVAILABLE_FOR_GROUP |
static byte |
FUNCTION_GET_DEBOUNCE_PERIOD |
static byte |
FUNCTION_GET_EDGE_COUNT |
static byte |
FUNCTION_GET_EDGE_COUNT_CONFIG |
static byte |
FUNCTION_GET_GROUP |
static byte |
FUNCTION_GET_IDENTITY |
static byte |
FUNCTION_GET_INTERRUPT |
static byte |
FUNCTION_GET_VALUE |
static byte |
FUNCTION_SET_DEBOUNCE_PERIOD |
static byte |
FUNCTION_SET_EDGE_COUNT_CONFIG |
static byte |
FUNCTION_SET_GROUP |
static byte |
FUNCTION_SET_INTERRUPT |
Constructor and Description |
---|
BrickletIndustrialDigitalIn4(java.lang.String uid,
IPConnection ipcon)
Creates an object with the unique device ID \c uid.
|
Modifier and Type | Method and Description |
---|---|
void |
addInterruptListener(BrickletIndustrialDigitalIn4.InterruptListener listener)
Adds a Interrupt listener.
|
short |
getAvailableForGroup()
Returns a bitmask of ports that are available for grouping.
|
long |
getDebouncePeriod()
Returns the debounce period as set by
setDebouncePeriod(long) . |
long |
getEdgeCount(short pin,
boolean resetCounter)
Returns the current value of the edge counter for the selected pin.
|
BrickletIndustrialDigitalIn4.EdgeCountConfig |
getEdgeCountConfig(short pin)
Returns the edge type and debounce time for the selected pin as set by
setEdgeCountConfig(int, short, short) . |
char[] |
getGroup()
Returns the group as set by
setGroup(char[]) |
Device.Identity |
getIdentity()
Returns the UID, the UID where the Bricklet is connected to,
the position, the hardware and firmware version as well as the
device identifier.
|
int |
getInterrupt()
Returns the interrupt bitmask as set by
setInterrupt(int) . |
int |
getValue()
Returns the input value with a bitmask.
|
void |
removeInterruptListener(BrickletIndustrialDigitalIn4.InterruptListener listener)
Removes a Interrupt listener.
|
void |
setDebouncePeriod(long debounce)
Sets the debounce period of the
BrickletIndustrialDigitalIn4.InterruptListener listener. |
void |
setEdgeCountConfig(int selectionMask,
short edgeType,
short debounce)
Configures the edge counter for the selected pins.
|
void |
setGroup(char[] group)
Sets a group of Digital In 4 Bricklets that should work together.
|
void |
setInterrupt(int interruptMask)
Sets the pins on which an interrupt is activated with a bitmask.
|
getAPIVersion, getResponseExpected, setResponseExpected, setResponseExpectedAll
public static final int DEVICE_IDENTIFIER
public static final java.lang.String DEVICE_DISPLAY_NAME
public static final byte FUNCTION_GET_VALUE
public static final byte FUNCTION_SET_GROUP
public static final byte FUNCTION_GET_GROUP
public static final byte FUNCTION_GET_AVAILABLE_FOR_GROUP
public static final byte FUNCTION_SET_DEBOUNCE_PERIOD
public static final byte FUNCTION_GET_DEBOUNCE_PERIOD
public static final byte FUNCTION_SET_INTERRUPT
public static final byte FUNCTION_GET_INTERRUPT
public static final byte FUNCTION_GET_EDGE_COUNT
public static final byte FUNCTION_SET_EDGE_COUNT_CONFIG
public static final byte FUNCTION_GET_EDGE_COUNT_CONFIG
public static final byte FUNCTION_GET_IDENTITY
public static final short EDGE_TYPE_RISING
public static final short EDGE_TYPE_FALLING
public static final short EDGE_TYPE_BOTH
public BrickletIndustrialDigitalIn4(java.lang.String uid, IPConnection ipcon)
public int getValue() throws TinkerforgeException
setGroup(char[])
), the pins correspond to the
markings on the IndustrialDigital In 4 Bricklet.
If groups are used, the pins correspond to the element in the group.
Element 1 in the group will get pins 0-3, element 2 pins 4-7, element 3
pins 8-11 and element 4 pins 12-15.TinkerforgeException
public void setGroup(char[] group) throws TinkerforgeException
getAvailableForGroup()
.
The group consists of 4 elements. Element 1 in the group will get pins 0-3,
element 2 pins 4-7, element 3 pins 8-11 and element 4 pins 12-15.
Each element can either be one of the ports ('a' to 'd') or 'n' if it should
not be used.
For example: If you have two Digital In 4 Bricklets connected to port A and
port B respectively, you could call with ``['a', 'b', 'n', 'n']``.
Now the pins on the Digital In 4 on port A are assigned to 0-3 and the
pins on the Digital In 4 on port B are assigned to 4-7. It is now possible
to call getValue()
and read out two Bricklets at the same time.
Changing the group configuration resets all edge counter configurations
and values.TinkerforgeException
public char[] getGroup() throws TinkerforgeException
setGroup(char[])
TinkerforgeException
public short getAvailableForGroup() throws TinkerforgeException
TinkerforgeException
public void setDebouncePeriod(long debounce) throws TinkerforgeException
BrickletIndustrialDigitalIn4.InterruptListener
listener.
For example: If you set this value to 100, you will get the interrupt
maximal every 100ms. This is necessary if something that bounces is
connected to the Digital In 4 Bricklet, such as a button.TinkerforgeException
public long getDebouncePeriod() throws TinkerforgeException
setDebouncePeriod(long)
.TinkerforgeException
public void setInterrupt(int interruptMask) throws TinkerforgeException
setGroup(char[])
.
The interrupt is delivered with the BrickletIndustrialDigitalIn4.InterruptListener
listener.TinkerforgeException
public int getInterrupt() throws TinkerforgeException
setInterrupt(int)
.TinkerforgeException
public long getEdgeCount(short pin, boolean resetCounter) throws TinkerforgeException
setEdgeCountConfig(int, short, short)
.
If you set the reset counter to *true*, the count is set back to 0
directly after it is read.
The edge counters use the grouping as set by setGroup(char[])
.
.. versionadded:: 2.0.1$nbsp;(Plugin)TinkerforgeException
public void setEdgeCountConfig(int selectionMask, short edgeType, short debounce) throws TinkerforgeException
setGroup(char[])
.
.. versionadded:: 2.0.1$nbsp;(Plugin)TinkerforgeException
public BrickletIndustrialDigitalIn4.EdgeCountConfig getEdgeCountConfig(short pin) throws TinkerforgeException
setEdgeCountConfig(int, short, short)
.
.. versionadded:: 2.0.1$nbsp;(Plugin)TinkerforgeException
public Device.Identity getIdentity() throws TinkerforgeException
getIdentity
in class Device
TinkerforgeException
public void addInterruptListener(BrickletIndustrialDigitalIn4.InterruptListener listener)
public void removeInterruptListener(BrickletIndustrialDigitalIn4.InterruptListener listener)
Copyright © 2021 Tinkerforge GmbH. All rights reserved.