Merge pull request #514 from penfold42/master

add configuratble latch time for ws2801

Former-commit-id: cd226d63ebf4d158ce72cb88d49887d8e19a185c
This commit is contained in:
brindosch 2016-03-08 22:53:29 +01:00
commit 14fc1d9bb6
3 changed files with 13 additions and 1 deletions

View File

@ -129,8 +129,9 @@ LedDevice * LedDeviceFactory::construct(const Json::Value & deviceConfig)
{ {
const std::string output = deviceConfig["output"].asString(); const std::string output = deviceConfig["output"].asString();
const unsigned rate = deviceConfig["rate"].asInt(); const unsigned rate = deviceConfig["rate"].asInt();
const unsigned latchtime = deviceConfig.get("latchtime",500000).asInt();
LedDeviceWs2801* deviceWs2801 = new LedDeviceWs2801(output, rate); LedDeviceWs2801* deviceWs2801 = new LedDeviceWs2801(output, rate, latchtime);
deviceWs2801->open(); deviceWs2801->open();
device = deviceWs2801; device = deviceWs2801;

View File

@ -18,6 +18,13 @@ LedDeviceWs2801::LedDeviceWs2801(const std::string& outputDevice, const unsigned
// empty // empty
} }
LedDeviceWs2801::LedDeviceWs2801(const std::string& outputDevice, const unsigned baudrate, const unsigned latchTime) :
LedSpiDevice(outputDevice, baudrate, latchTime),
mLedCount(0)
{
// empty
}
int LedDeviceWs2801::write(const std::vector<ColorRgb> &ledValues) int LedDeviceWs2801::write(const std::vector<ColorRgb> &ledValues)
{ {
mLedCount = ledValues.size(); mLedCount = ledValues.size();

View File

@ -21,6 +21,10 @@ public:
LedDeviceWs2801(const std::string& outputDevice, LedDeviceWs2801(const std::string& outputDevice,
const unsigned baudrate); const unsigned baudrate);
LedDeviceWs2801(const std::string& outputDevice,
const unsigned baudrate,
const unsigned latchTime);
/// ///
/// Writes the led color values to the led-device /// Writes the led color values to the led-device
/// ///