temp

Committer:
BenRJG
Date:
Thu Dec 06 15:38:09 2018 +0000
Revision:
0:2a4af0cb6e8d
Imported Code from Kiel; Added button functionality; Added set DateTime Functionality

Who changed what in which revision?

UserRevisionLine numberNew contents of line
BenRJG 0:2a4af0cb6e8d 1 #ifndef _LCD_HPP
BenRJG 0:2a4af0cb6e8d 2 #define _LCD_HPP
BenRJG 0:2a4af0cb6e8d 3
BenRJG 0:2a4af0cb6e8d 4 #include "mbed.h"
BenRJG 0:2a4af0cb6e8d 5 #include "General.hpp"
BenRJG 0:2a4af0cb6e8d 6
BenRJG 0:2a4af0cb6e8d 7 #define CLEAR 0x01
BenRJG 0:2a4af0cb6e8d 8 #define RETURN 0x02
BenRJG 0:2a4af0cb6e8d 9
BenRJG 0:2a4af0cb6e8d 10 #define ENTRYMODE 0x04
BenRJG 0:2a4af0cb6e8d 11 #define I 0x02
BenRJG 0:2a4af0cb6e8d 12 #define shift 0x01
BenRJG 0:2a4af0cb6e8d 13
BenRJG 0:2a4af0cb6e8d 14 #define DISPLAY 0x08
BenRJG 0:2a4af0cb6e8d 15 #define on 0x04
BenRJG 0:2a4af0cb6e8d 16 #define cursor 0x02
BenRJG 0:2a4af0cb6e8d 17 #define blink 0x01
BenRJG 0:2a4af0cb6e8d 18
BenRJG 0:2a4af0cb6e8d 19 #define FUNC 0x20
BenRJG 0:2a4af0cb6e8d 20 #define bit8 0x10
BenRJG 0:2a4af0cb6e8d 21 #define lines2 0x08
BenRJG 0:2a4af0cb6e8d 22 #define dots11 0x04
BenRJG 0:2a4af0cb6e8d 23
BenRJG 0:2a4af0cb6e8d 24 #define control 0
BenRJG 0:2a4af0cb6e8d 25 #define text 1
BenRJG 0:2a4af0cb6e8d 26
BenRJG 0:2a4af0cb6e8d 27 #define write 0
BenRJG 0:2a4af0cb6e8d 28 #define read 1
BenRJG 0:2a4af0cb6e8d 29
BenRJG 0:2a4af0cb6e8d 30 #define LINE1 0x00
BenRJG 0:2a4af0cb6e8d 31 #define LINE2 0x40
BenRJG 0:2a4af0cb6e8d 32
BenRJG 0:2a4af0cb6e8d 33 class LCD{
BenRJG 0:2a4af0cb6e8d 34 public:
BenRJG 0:2a4af0cb6e8d 35 LCD(PinName rs, PinName e, PinName d4, PinName d5, PinName d6, PinName d7) : _LCD_RS(rs), _LCD_E(e), LCD_DDRAM(d4,d5,d6,d7) {}
BenRJG 0:2a4af0cb6e8d 36 void INIT();
BenRJG 0:2a4af0cb6e8d 37 void clear();
BenRJG 0:2a4af0cb6e8d 38 void display(BYTE* str, UINT_16 location=NULL);
BenRJG 0:2a4af0cb6e8d 39 void putt(U_BYTE c);
BenRJG 0:2a4af0cb6e8d 40 void pos(UINT_16 location);
BenRJG 0:2a4af0cb6e8d 41
BenRJG 0:2a4af0cb6e8d 42 void enableCursor();
BenRJG 0:2a4af0cb6e8d 43 void disableCursor();
BenRJG 0:2a4af0cb6e8d 44 private:
BenRJG 0:2a4af0cb6e8d 45 DigitalOut _LCD_RS;
BenRJG 0:2a4af0cb6e8d 46 DigitalOut _LCD_E;
BenRJG 0:2a4af0cb6e8d 47 BusOut LCD_DDRAM;
BenRJG 0:2a4af0cb6e8d 48 private:
BenRJG 0:2a4af0cb6e8d 49 void cmdLCD(U_BYTE cmd);
BenRJG 0:2a4af0cb6e8d 50 void LCD_strobe(void);
BenRJG 0:2a4af0cb6e8d 51 void set_LCD_data(U_BYTE d);
BenRJG 0:2a4af0cb6e8d 52 UINT_32 findSpace(U_BYTE* str);
BenRJG 0:2a4af0cb6e8d 53 };
BenRJG 0:2a4af0cb6e8d 54 #endif
BenRJG 0:2a4af0cb6e8d 55