mirror of
https://github.com/DCC-EX/CommandStation-EX.git
synced 2024-12-23 21:01:25 +01:00
Make LCD Display I2C calls synchronous.
This commit is contained in:
parent
d0fed2dd38
commit
80fc9e8a68
@ -200,7 +200,7 @@ void LiquidCrystal_I2C::send(uint8_t value, uint8_t mode) {
|
||||
outputBuffer[len++] = highnib;
|
||||
outputBuffer[len++] = lownib|En;
|
||||
outputBuffer[len++] = lownib;
|
||||
I2CManager.write(_Addr, outputBuffer, len);
|
||||
I2CManager.write(_Addr, outputBuffer, len); // Write command synchronously
|
||||
}
|
||||
|
||||
// write 4 data bits to the HD44780 LCD controller.
|
||||
@ -214,7 +214,7 @@ void LiquidCrystal_I2C::write4bits(uint8_t value) {
|
||||
uint8_t len = 0;
|
||||
outputBuffer[len++] = _data|En;
|
||||
outputBuffer[len++] = _data;
|
||||
I2CManager.write(_Addr, outputBuffer, len);
|
||||
I2CManager.write(_Addr, outputBuffer, len); // Write command synchronously
|
||||
}
|
||||
|
||||
// write a byte to the PCF8574 I2C interface. We don't need to set
|
||||
@ -223,5 +223,5 @@ void LiquidCrystal_I2C::expanderWrite(uint8_t value) {
|
||||
// Wait for previous request to complete before writing to outputbuffer.
|
||||
requestBlock.wait();
|
||||
outputBuffer[0] = value | _backlightval;
|
||||
I2CManager.write(_Addr, outputBuffer, 1);
|
||||
I2CManager.write(_Addr, outputBuffer, 1); // Write command synchronously
|
||||
}
|
@ -90,7 +90,8 @@ private:
|
||||
|
||||
I2CRB requestBlock;
|
||||
uint8_t outputBuffer[4];
|
||||
bool isBusy() { return requestBlock.isBusy(); }
|
||||
// I/O is synchronous, so if this is called we're not busy!
|
||||
bool isBusy() { return false; }
|
||||
};
|
||||
|
||||
#endif
|
||||
|
Loading…
Reference in New Issue
Block a user