A simple library for Holtek's HT1621 segment LCD driver

Committer:
kayekss
Date:
Sat Dec 21 13:29:11 2013 +0000
Revision:
0:3001ada71ba5
First release

Who changed what in which revision?

UserRevisionLine numberNew 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