LCD display

Dependents:   LAB05_Oppgave4

Fork of LCDLib by Rune Langoy

Revision:
16:ca413e232eaa
Parent:
15:dc4f024fd1aa
Child:
17:5ffb16966db2
--- a/TextLCD.cpp	Sun Sep 20 17:15:01 2015 +0000
+++ b/TextLCD.cpp	Mon Sep 21 09:25:53 2015 +0000
@@ -56,10 +56,13 @@
 //Enable 4 bit mode  From KS0066U Documentation
 void TextLCD::init_4BitMode2LinesDisplayOn()
 {
+
     //Start by selecting configuration mode
     CLEAR_RS();
     CLEAR_RW();
 
+    wait(.015);        // Wait 150ms to ensure powered up
+
     // send "Display Settings" 3 times (Only top nibble of 0x30 as we've got 4-bit bus)
     writeLcdBitD4toD7(0x3);
     pulseEn();
@@ -72,16 +75,23 @@
     wait_ms(2);
 
     //Enable 4 bit mode  From KS0066U Documentation
-    writeLcdBitD4toD7(0x2);//(0b0010);   // Select 4- bit start
-    pulseEn();	//LCD exec function
+    writeLcdBitD4toD7(0x2);// (0b0010)  4- bit start / 4-bit mode
     wait_us(100);
-
+    writeLcdBitD4toD7(0x2);
+    pulseEn();
+    wait_us(100);
     writeLcdBitD4toD7(0x2);////(0b0010);   // Select 4- bit start  (Already on the out port no need to write once more )
     pulseEn();	//LCD exec function
-    wait_us(100);
+    wait_us(50);
 
     writeLcdBitD4toD7(0xC);//(0b1100);   // 2 Lines + Disp On
     pulseEn();	//LCD exec function
+
+    lcdComand(0x01);  // Clear Display
+    wait_ms(3);
+    lcdComand(0x28);  // Function set 001 BW N F - -    
+    lcdComand(0x06);  // Cursor Direction and Display Shift : 0000 01 CD S (CD 0-left, 1-right S(hift) 0-no, 1-yes    
+    lcdComand(0x0C);  // Dispon + Hide cursor
     wait_us(100);
 }