Simple control for ST M5451 LED driver.
Sample usage
#include "mbed.h" #include "M5451.h" M5451 m5451(D8, D7); void toggleOneByOne(){ for(char i = 0; i < m5451.outputs(); i++){ m5451.toggleBit(i); m5451.update(); wait_ms(250); m5451.toggleBit(i); } } int main() { while(1) { m5451.setAllBits(0); toggleOneByOne(); m5451.setAllBits(1); toggleOneByOne(); } }
Diff: M5451.h
- Revision:
- 1:db1e69c22bc6
- Parent:
- 0:b21b3517a1d6
diff -r b21b3517a1d6 -r db1e69c22bc6 M5451.h --- a/M5451.h Sun Mar 01 10:20:26 2020 +0000 +++ b/M5451.h Sun Mar 01 11:41:57 2020 +0000 @@ -9,10 +9,11 @@ class M5451 { public: M5451(PinName dataPin, PinName clockPin); - int outputs(); + short outputs(); void setState(uint64_t state); - void setBit(char position, char value); - void setAllBits(char value); + void setBit(short position, short value); + void toggleBit(short position); + void setAllBits(short value); void update(); uint64_t getState(); @@ -20,7 +21,7 @@ DigitalOut _dataPin; DigitalOut _clockPin; uint64_t _state; - void _send(char bit); + void _send(short bit); }; #endif \ No newline at end of file