A simple library for Holtek's HT1621 segment LCD driver
HT1621.h@0:3001ada71ba5, 2013-12-21 (annotated)
- Committer:
- kayekss
- Date:
- Sat Dec 21 13:29:11 2013 +0000
- Revision:
- 0:3001ada71ba5
First release
Who changed what in which revision?
User | Revision | Line number | New contents of line |
---|---|---|---|
kayekss | 0:3001ada71ba5 | 1 | #ifndef HT1621_H_ |
kayekss | 0:3001ada71ba5 | 2 | #define HT1621_H_ |
kayekss | 0:3001ada71ba5 | 3 | |
kayekss | 0:3001ada71ba5 | 4 | class HT1621 { |
kayekss | 0:3001ada71ba5 | 5 | private: |
kayekss | 0:3001ada71ba5 | 6 | DigitalOut wr; |
kayekss | 0:3001ada71ba5 | 7 | DigitalOut data; |
kayekss | 0:3001ada71ba5 | 8 | DigitalOut cs; |
kayekss | 0:3001ada71ba5 | 9 | |
kayekss | 0:3001ada71ba5 | 10 | public: |
kayekss | 0:3001ada71ba5 | 11 | // Commands |
kayekss | 0:3001ada71ba5 | 12 | const static uint8_t SYS_DIS = 0x00; |
kayekss | 0:3001ada71ba5 | 13 | const static uint8_t SYS_EN = 0x01; |
kayekss | 0:3001ada71ba5 | 14 | const static uint8_t LCD_OFF = 0x02; |
kayekss | 0:3001ada71ba5 | 15 | const static uint8_t LCD_ON = 0x03; |
kayekss | 0:3001ada71ba5 | 16 | const static uint8_t TIMER_DIS = 0x04; |
kayekss | 0:3001ada71ba5 | 17 | const static uint8_t WDT_DIS = 0x05; |
kayekss | 0:3001ada71ba5 | 18 | const static uint8_t TIMER_EN = 0x06; |
kayekss | 0:3001ada71ba5 | 19 | const static uint8_t WDT_EN = 0x07; |
kayekss | 0:3001ada71ba5 | 20 | const static uint8_t TONE_OFF = 0x08; |
kayekss | 0:3001ada71ba5 | 21 | const static uint8_t TONE_ON = 0x09; |
kayekss | 0:3001ada71ba5 | 22 | const static uint8_t CLR_TIMER = 0xc0; |
kayekss | 0:3001ada71ba5 | 23 | const static uint8_t CLR_WDT = 0xe0; |
kayekss | 0:3001ada71ba5 | 24 | const static uint8_t XTAL_32K = 0x14; |
kayekss | 0:3001ada71ba5 | 25 | const static uint8_t RC_256K = 0x18; |
kayekss | 0:3001ada71ba5 | 26 | const static uint8_t EXT_256K = 0x1c; |
kayekss | 0:3001ada71ba5 | 27 | const static uint8_t BIAS2_COM2 = 0x20; |
kayekss | 0:3001ada71ba5 | 28 | const static uint8_t BIAS3_COM2 = 0x21; |
kayekss | 0:3001ada71ba5 | 29 | const static uint8_t BIAS2_COM3 = 0x24; |
kayekss | 0:3001ada71ba5 | 30 | const static uint8_t BIAS3_COM3 = 0x25; |
kayekss | 0:3001ada71ba5 | 31 | const static uint8_t BIAS2_COM4 = 0x28; |
kayekss | 0:3001ada71ba5 | 32 | const static uint8_t BIAS3_COM4 = 0x29; |
kayekss | 0:3001ada71ba5 | 33 | const static uint8_t TONE_4K = 0x40; |
kayekss | 0:3001ada71ba5 | 34 | const static uint8_t TONE_2K = 0x60; |
kayekss | 0:3001ada71ba5 | 35 | const static uint8_t IRQ_DIS = 0x80; |
kayekss | 0:3001ada71ba5 | 36 | const static uint8_t IRQ_EN = 0x88; |
kayekss | 0:3001ada71ba5 | 37 | const static uint8_t F1 = 0xa0; |
kayekss | 0:3001ada71ba5 | 38 | const static uint8_t F2 = 0xa1; |
kayekss | 0:3001ada71ba5 | 39 | const static uint8_t F4 = 0xa2; |
kayekss | 0:3001ada71ba5 | 40 | const static uint8_t F8 = 0xa3; |
kayekss | 0:3001ada71ba5 | 41 | const static uint8_t F16 = 0xa4; |
kayekss | 0:3001ada71ba5 | 42 | const static uint8_t F32 = 0xa5; |
kayekss | 0:3001ada71ba5 | 43 | const static uint8_t F64 = 0xa6; |
kayekss | 0:3001ada71ba5 | 44 | const static uint8_t F128 = 0xa7; |
kayekss | 0:3001ada71ba5 | 45 | const static uint8_t TEST = 0xe0; |
kayekss | 0:3001ada71ba5 | 46 | const static uint8_t NORMAL = 0xe3; |
kayekss | 0:3001ada71ba5 | 47 | |
kayekss | 0:3001ada71ba5 | 48 | HT1621(PinName wrPin, PinName dataPin, PinName csPin); |
kayekss | 0:3001ada71ba5 | 49 | ~HT1621(); |
kayekss | 0:3001ada71ba5 | 50 | |
kayekss | 0:3001ada71ba5 | 51 | void write(uint8_t addr, uint8_t b); |
kayekss | 0:3001ada71ba5 | 52 | void command(uint8_t b); |
kayekss | 0:3001ada71ba5 | 53 | }; |
kayekss | 0:3001ada71ba5 | 54 | |
kayekss | 0:3001ada71ba5 | 55 | #endif |