temp

Revision:
0:2a4af0cb6e8d
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/LCD.hpp	Thu Dec 06 15:38:09 2018 +0000
@@ -0,0 +1,55 @@
+#ifndef _LCD_HPP
+#define _LCD_HPP
+    
+    #include "mbed.h"
+    #include "General.hpp"
+    
+    #define CLEAR   0x01
+    #define RETURN  0x02
+    
+    #define ENTRYMODE 0x04
+    #define I 0x02
+    #define shift 0x01    
+    
+    #define DISPLAY 0x08
+    #define on 0x04
+    #define cursor  0x02
+    #define blink   0x01    
+    
+    #define FUNC 0x20
+    #define bit8  0x10
+    #define lines2 0x08
+    #define dots11 0x04
+    
+    #define control 0
+    #define text 1
+    
+    #define write 0
+    #define read 1
+    
+    #define LINE1 0x00
+    #define LINE2 0x40
+    
+    class LCD{
+        public:
+            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) {} 
+            void INIT();
+            void clear();
+            void display(BYTE* str, UINT_16 location=NULL);
+            void putt(U_BYTE c);
+            void pos(UINT_16 location);
+            
+            void enableCursor();
+            void disableCursor();
+        private:
+            DigitalOut _LCD_RS;
+            DigitalOut _LCD_E;
+            BusOut LCD_DDRAM;   
+        private:
+            void cmdLCD(U_BYTE cmd);
+            void LCD_strobe(void);
+            void set_LCD_data(U_BYTE d);
+            UINT_32 findSpace(U_BYTE* str);
+    };
+#endif
+