TextLCD library for controlling various LCD panels based on the HD44780 4-bit interface (does not contain blocking code)

Fork of TextLCD by Simon Ford

Revision:
9:057d7d076a35
Parent:
7:44f34c09bd37
--- a/TextLCD.cpp	Thu Jan 02 21:07:01 2014 +0000
+++ b/TextLCD.cpp	Mon Nov 02 17:52:25 2015 +0000
@@ -31,15 +31,15 @@
     _e  = 1;
     _rs = 0;            // command mode
 
-    wait(0.015);        // Wait 15ms to ensure powered up
+    for(int z=0;z<240000;z++);        // Wait 15ms to ensure powered up
 
     // send "Display Settings" 3 times (Only top nibble of 0x30 as we've got 4-bit bus)
     for (int i=0; i<3; i++) {
         writeByte(0x3);
-        wait(0.00164);  // this command takes 1.64ms, so wait for it
+        for(int z=0;z<78720;z++);  // this command takes 1.64ms, so wait for it
     }
     writeByte(0x2);     // 4-bit mode
-    wait(0.000040f);    // most instructions take 40us
+    for(int z=0;z<1920;z++);    // most instructions take 40us
 
     writeCommand(0x28); // Function set 001 BW N F - -
     writeCommand(0x0C);
@@ -55,7 +55,7 @@
 
 void TextLCD::cls() {
     writeCommand(0x01); // cls, and set cursor to 0
-    wait(0.00164f);     // This command takes 1.64 ms
+    for(int z=0;z<78720;z++);     // This command takes 1.64 ms
     locate(0, 0);
 }
 
@@ -91,14 +91,14 @@
 
 void TextLCD::writeByte(int value) {
     _d = value >> 4;
-    wait(0.000040f); // most instructions take 40us
+    for(int z=0;z<1920;z++); // most instructions take 40us
     _e = 0;
-    wait(0.000040f);
+    for(int z=0;z<1920;z++);
     _e = 1;
     _d = value >> 0;
-    wait(0.000040f);
+    for(int z=0;z<1920;z++);
     _e = 0;
-    wait(0.000040f);  // most instructions take 40us
+    for(int z=0;z<1920;z++);  // most instructions take 40us
     _e = 1;
 }