123456789101112131415161718192021222324252627282930313233 |
- #include "LED_ShiftRegs.h"
-
- /* constructor
- */
- LED_ShiftRegs::LED_ShiftRegs(const uint8_t slaveSelect, const uint8_t pin)
- :slaveSelect(slaveSelect), pin(pin)
- {
- pinMode(slaveSelect, OUTPUT);
- }
-
- /* begin() should be called once from sketch setup().
- Initializes shift register's shift/load pin.
- */
- void LED_ShiftRegs::begin()
- {
- SPI.begin();
- digitalWrite(slaveSelect, HIGH);
- }
-
- //todo preserve other LED values, similar to Port_PCA9655E outputVal
- void LED_ShiftRegs::on()
- {
- digitalWrite(slaveSelect, LOW);
- SPI.transfer(pin);
- digitalWrite (slaveSelect, HIGH);
- }
-
- void LED_ShiftRegs::off()
- {
- digitalWrite(slaveSelect, LOW);
- SPI.transfer(0);
- digitalWrite (slaveSelect, HIGH);
- }
|