mirror of
https://github.com/DCC-EX/CommandStation-EX.git
synced 2024-12-24 05:11:24 +01:00
Add digital write
This commit is contained in:
parent
c8fea3a4a7
commit
943494385f
@ -125,6 +125,14 @@ private:
|
|||||||
return _analogueValues[pin];
|
return _analogueValues[pin];
|
||||||
}
|
}
|
||||||
|
|
||||||
|
void _write(VPIN vpin, int value) override {
|
||||||
|
int pin = vpin - _firstVpin;
|
||||||
|
_digitalWriteBuffer[0] = EXIOWRD;
|
||||||
|
_digitalWriteBuffer[1] = pin;
|
||||||
|
_digitalWriteBuffer[2] = value;
|
||||||
|
I2CManager.write(_i2cAddress, _digitalWriteBuffer, 3, &_i2crb);
|
||||||
|
}
|
||||||
|
|
||||||
void _display() override {
|
void _display() override {
|
||||||
DIAG(F("EX-IOExpander I2C:x%x Configured on Vpins:%d-%d %S"), _i2cAddress, _firstVpin, _firstVpin+_nPins-1,
|
DIAG(F("EX-IOExpander I2C:x%x Configured on Vpins:%d-%d %S"), _i2cAddress, _firstVpin, _firstVpin+_nPins-1,
|
||||||
_deviceState == DEVSTATE_FAILED ? F("OFFLINE") : F(""));
|
_deviceState == DEVSTATE_FAILED ? F("OFFLINE") : F(""));
|
||||||
@ -140,6 +148,7 @@ private:
|
|||||||
byte * _digitalInBuffer = NULL;
|
byte * _digitalInBuffer = NULL;
|
||||||
byte _analogueInBuffer[2];
|
byte _analogueInBuffer[2];
|
||||||
byte _analogueOutBuffer[2];
|
byte _analogueOutBuffer[2];
|
||||||
|
byte _digitalWriteBuffer[3];
|
||||||
uint16_t * _analogueValues = NULL;
|
uint16_t * _analogueValues = NULL;
|
||||||
uint8_t _currentAPin; // Current analogue pin to read
|
uint8_t _currentAPin; // Current analogue pin to read
|
||||||
uint8_t _activity;
|
uint8_t _activity;
|
||||||
@ -152,6 +161,7 @@ private:
|
|||||||
EXIODPUP = 0xE3, // Flag we're sending digital pin pullup configuration
|
EXIODPUP = 0xE3, // Flag we're sending digital pin pullup configuration
|
||||||
EXIOOP = 0xE4, // Flag to say we're operating normally
|
EXIOOP = 0xE4, // Flag to say we're operating normally
|
||||||
EXIORDAN = 0xE5, // Flag to read an analogue input
|
EXIORDAN = 0xE5, // Flag to read an analogue input
|
||||||
|
EXIOWRD = 0xE6, // Flag for digital write
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user