public class Ads1115 extends Service implements I2CControl, PinArrayControl
Modifier and Type | Class and Description |
---|---|
class |
Ads1115.Publisher
Publisher - Publishes pin data at a regular interval
|
Modifier and Type | Field and Description |
---|---|
int |
adc0 |
int |
adc1 |
int |
adc2 |
int |
adc3 |
I2CController |
controller |
java.lang.String |
controllerName |
java.util.List<java.lang.String> |
controllers |
java.lang.String |
deviceAddress |
java.util.List<java.lang.String> |
deviceAddressList |
java.lang.String |
deviceBus |
java.util.List<java.lang.String> |
deviceBusList |
boolean |
isAttached |
static org.slf4j.Logger |
log |
double |
voltage0 |
double |
voltage1 |
double |
voltage2 |
double |
voltage3 |
cfgDir, dnaPool, MESSAGE_RECORDING_FORMAT_BINARY, MESSAGE_RECORDING_FORMAT_XML
Constructor and Description |
---|
Ads1115(java.lang.String n) |
Modifier and Type | Method and Description |
---|---|
void |
attach(Attachable service)
This attach when overriden "routes" to the appropriately typed parameterized
attach within a service.
|
void |
attach(I2CController controller,
java.lang.String deviceBus,
java.lang.String deviceAddress) |
void |
attach(PinArrayListener listener) |
void |
attach(PinListener listener,
java.lang.Integer pinAddress) |
void |
attach(java.lang.String service)
Attachable.attach(serviceName) - routes to reference parameter
Attachable.attach(Attachable)
|
void |
attach(java.lang.String listener,
int pinAddress) |
void |
attach(java.lang.String controllerName,
java.lang.String deviceBus,
java.lang.String deviceAddress) |
void |
attachI2CController(I2CController controller) |
java.util.Map<java.lang.String,PinDefinition> |
createPinList() |
void |
detach(Attachable service)
This detach when overriden "routes" to the appropriately typed parameterized
detach within a service.
|
void |
detach(java.lang.String service)
Attachable.detach(serviceName) - routes to reference parameter
Attachable.detach(Attachable)
|
void |
detachI2CController(I2CController controller) |
void |
disablePin(java.lang.Integer address) |
void |
disablePins() |
void |
enablePin(java.lang.Integer address) |
void |
enablePin(java.lang.Integer address,
java.lang.Integer rate) |
java.util.Set<java.lang.String> |
getAttached()
Returns all the currently attached services
|
I2CController |
getController() |
java.lang.String |
getControllerName() |
java.lang.String |
getDeviceAddress() |
java.lang.String |
getDeviceBus() |
int |
getGain() |
int |
getLastConversionResults() |
static ServiceType |
getMetaData()
This static method returns all the details of the class without it having
to be constructed.
|
PinDefinition |
getPin(java.lang.Integer address) |
PinDefinition |
getPin(java.lang.String pinName) |
java.util.List<PinDefinition> |
getPinList() |
void |
init_ADS1015()
This method initiates the ADS1015
|
void |
init_ADS1115()
This method initiates the ADS1115
|
boolean |
isAttached(Attachable instance)
the "routing" isAttached - when overridden by a service this
"routes" to the appropriate typed isAttached
|
boolean |
isAttached(java.lang.String name)
GOOD DESIGN - this method is the same pretty much for all Services could be
a Java 8 default implementation to the interface
|
static void |
main(java.lang.String[] args) |
void |
onRegistered(ServiceInterface s) |
void |
pinMode(java.lang.Integer address,
java.lang.String mode) |
java.lang.Integer |
pinNameToAddress(java.lang.String pinName) |
PinData |
publishPin(PinData pinData) |
PinData[] |
publishPinArray(PinData[] pinData)
publish all read pin data in one array at once
|
PinDefinition |
publishPinDefinition(PinDefinition pinDef) |
int |
read(java.lang.Integer address) |
int |
read(java.lang.String pinName) |
int |
readADC_Differential_0_1() |
int |
readADC_Differential_2_3() |
int |
readADC_SingleEnded(int channel) |
void |
refresh()
This method reads all four A/D pins
|
java.util.List<java.lang.String> |
refreshControllers() |
void |
setDeviceAddress(java.lang.String deviceAddress) |
void |
setDeviceBus(java.lang.String deviceBus) |
void |
setGain(int gain) |
double |
setSampleRate(double rate) |
void |
startComparator_SingleEnded(int channel,
int threshold) |
void |
write(java.lang.Integer address,
java.lang.Integer value) |
addListener, addListener, addTask, addTask, addTask, addTaskOneShot, allowDisplay, allowDisplay, broadcastState, buildDna, buildDna, buildDnaKeys, buildDnaNames, clearLastError, close, containsTask, copyShallowFrom, createPeer, createPeer, createRootReserved, detach, echoHeartbeat, error, error, error, getCfgDir, getComm, getDeclaredMethodNames, getDeclaredMethods, getDescription, getDna, getDnaString, getHostName, getInbox, getInstanceId, getIntanceName, getInterfaceSet, getLastError, getMessageSet, getMetaData, getMethodMap, getMethodNames, getMethods, getMethodToolTip, getMsg, getName, getNotifyList, getNotifyListKeySet, getOutbox, getPeerKey, getPeerName, getServiceResourceFile, getSimpleName, getTasks, getThisThread, getType, hasError, hasPeers, help, help, in, info, info, invoke, invoke, invoke, invokeOn, isLocal, isReady, isRunning, isRuntime, isVirtual, load, load, logTimeEnable, mergeDna, mergeDna, mergePeerDna, movePeerDna, out, out, preProcessHook, preRoutingHook, publishError, publishQueueStats, publishState, publishStats, publishStatus, purgeTask, purgeTasks, releasePeers, releaseService, removeAllListeners, removeListener, requiresSecurity, reserve, reserve, reserveRoot, reserveRoot, reserveRootAs, run, save, save, save, send, send, send, send, sendBlocking, sendBlocking, sendBlocking, sendBlocking, sendPeer, setInstanceId, setName, setPeer, setSecurityProvider, setState, setThisThread, setVirtual, sleep, stackToString, startHeartbeat, startPeer, startPeer, startRecording, startService, stopHeartbeat, stopMsgRecording, stopService, subscribe, subscribe, subscribe, toString, unsubscribe, unsubscribe, unsubscribe, updateStats, warn, warn
equals, getClass, hashCode, notify, notifyAll, wait, wait, wait
detach, isLocal
getName
public static final org.slf4j.Logger log
public transient I2CController controller
public java.util.List<java.lang.String> deviceAddressList
public java.lang.String deviceAddress
public java.util.List<java.lang.String> deviceBusList
public java.lang.String deviceBus
public int adc0
public int adc1
public int adc2
public int adc3
public double voltage0
public double voltage1
public double voltage2
public double voltage3
public java.util.List<java.lang.String> controllers
public java.lang.String controllerName
public boolean isAttached
public static void main(java.lang.String[] args)
public void onRegistered(ServiceInterface s)
public java.util.List<java.lang.String> refreshControllers()
public I2CController getController()
public java.lang.String getControllerName()
public void setDeviceBus(java.lang.String deviceBus)
setDeviceBus
in interface I2CControl
public void setDeviceAddress(java.lang.String deviceAddress)
setDeviceAddress
in interface I2CControl
public void refresh()
public void init_ADS1015()
public void init_ADS1115()
public void setGain(int gain)
public int getGain()
public int readADC_SingleEnded(int channel)
public int readADC_Differential_0_1()
public int readADC_Differential_2_3()
public void startComparator_SingleEnded(int channel, int threshold)
public int getLastConversionResults()
public boolean isAttached(java.lang.String name)
isAttached
in interface Attachable
isAttached
in class Service
name
- - name of servicepublic java.util.List<PinDefinition> getPinList()
getPinList
in interface PinArrayControl
public int read(java.lang.Integer address)
read
in interface PinArrayControl
public int read(java.lang.String pinName)
read
in interface PinArrayControl
public void pinMode(java.lang.Integer address, java.lang.String mode)
pinMode
in interface PinArrayControl
public void write(java.lang.Integer address, java.lang.Integer value)
write
in interface PinArrayControl
public PinData publishPin(PinData pinData)
publishPin
in interface PinArrayControl
public PinData[] publishPinArray(PinData[] pinData)
publishPinArray
in interface PinArrayControl
public void attach(java.lang.String listener, int pinAddress)
public void attach(PinListener listener, java.lang.Integer pinAddress)
attach
in interface PinArrayControl
public void attach(PinArrayListener listener)
attach
in interface PinArrayControl
public void enablePin(java.lang.Integer address)
enablePin
in interface PinArrayControl
public void disablePin(java.lang.Integer address)
disablePin
in interface PinArrayControl
public void disablePins()
disablePins
in interface PinArrayControl
public java.util.Map<java.lang.String,PinDefinition> createPinList()
public java.lang.Integer pinNameToAddress(java.lang.String pinName)
public double setSampleRate(double rate)
public PinDefinition publishPinDefinition(PinDefinition pinDef)
public static ServiceType getMetaData()
public void enablePin(java.lang.Integer address, java.lang.Integer rate)
enablePin
in interface PinArrayControl
public void attach(java.lang.String service) throws java.lang.Exception
Service
attach
in interface Attachable
attach
in class Service
service
- - service namejava.lang.Exception
- - thrown if errorpublic void attach(Attachable service) throws java.lang.Exception
Service
public void attach(Attachable service) { if (ServoControl.class.isAssignableFrom(service.getClass())) { attachServoControl((ServoControl) service); return; } ... route to more attach functions .... error("%s doesn't know how to attach a %s", getClass().getSimpleName(), service.getClass().getSimpleName()); } And within attachServoControl : public void attachServoControl(ServoControl service) { // guard if (!isAttached(service)){ return; } ... attach logic .... // call to attaching service service.attach(this); }
attach
in interface Attachable
attach
in class Service
service
- - the service to attach from this servicejava.lang.Exception
- - throws on error and cannot attachpublic void attach(java.lang.String controllerName, java.lang.String deviceBus, java.lang.String deviceAddress)
attach
in interface I2CControl
public void attach(I2CController controller, java.lang.String deviceBus, java.lang.String deviceAddress)
attach
in interface I2CControl
public void attachI2CController(I2CController controller)
attachI2CController
in interface I2CControl
public void detach(java.lang.String service)
Service
detach
in interface Attachable
detach
in class Service
service
- - name of servicepublic void detach(Attachable service)
Service
public void detach(Attachable service) { if (ServoControl.class.isAssignableFrom(service.getClass())) { detachServoControl((ServoControl) service); return; } ... route to more detach functions .... error("%s doesn't know how to detach a %s", getClass().getSimpleName(), service.getClass().getSimpleName()); } And within detachServoControl : public void detachServoControl(ServoControl service) { // guard if (!isAttached(service)){ return; } ... detach logic .... // call to detaching service service.detach(this); }
detach
in interface Attachable
detach
in class Service
service
- - the service to detach from this servicepublic void detachI2CController(I2CController controller)
detachI2CController
in interface I2CControl
public java.util.Set<java.lang.String> getAttached()
getAttached
in interface Attachable
getAttached
in class Service
public java.lang.String getDeviceBus()
getDeviceBus
in interface I2CControl
public java.lang.String getDeviceAddress()
getDeviceAddress
in interface I2CControl
public boolean isAttached(Attachable instance)
Service
isAttached
in interface Attachable
isAttached
in class Service
instance
- - referenced service to testpublic PinDefinition getPin(java.lang.String pinName)
getPin
in interface PinArrayControl
public PinDefinition getPin(java.lang.Integer address)
getPin
in interface PinArrayControl