Write in Arabic in Arduino Uno

Introduction: Write in Arabic in Arduino Uno

About: Master degree in Electronic & Communication Engineering

Requirements

1-Arduino UNO

2-LCD 2X16

3-VARIABLES RESISTANCE

4-Connection wires and breadboard

then upload the code

Step 1:

Share

    Recommendations

    • Metalworking Contest

      Metalworking Contest
    • Tiny Home Contest

      Tiny Home Contest
    • Water Contest

      Water Contest

    3 Discussions

    #include <LiquidCrystal.h>

    // initialize the library with the numbers of the interface pins

    LiquidCrystal lcd(12, 11, 5, 4, 3, 2);

    byte l[]={

    B01111,

    B01111,

    B01111,

    B01111,

    B01111,

    B01111,

    B01111,

    B01111

    };

    byte l1[]={

    B01111,

    B01111,

    B01111,

    B01111,

    B01111,

    B01111,

    B01111,

    B01111

    };

    byte l2[]={

    B00111,

    B00111,

    B00111,

    B00111,

    B00111,

    B11111,

    B11111,

    B11111

    };

    byte l3[]={

    B00000,

    B00000,

    B00000,

    B00000,

    B00000,

    B11111,

    B11111,

    B11111

    };

    byte l4[]={

    B00011,

    B00011,

    B00011,

    B01100,

    B11000,

    B11111,

    B11111,

    B11111

    };

    byte l5[]={

    B11111,

    B11111,

    B11111,

    B00111,

    B00111,

    B11111,

    B11111,

    B11111

    };

    void setup() {

    lcd.createChar(0,l);

    lcd.createChar(1,l1);

    lcd.createChar(2,l2);

    lcd.createChar(3,l3);

    lcd.createChar(4,l4);

    lcd.createChar(5,l5);

    lcd.begin(16, 2);

    lcd.clear();

    lcd.setCursor(15,0);

    lcd.write(byte(0));

    lcd.setCursor(14,0);

    lcd.write(byte(1));

    lcd.setCursor(12,0);

    lcd.write(byte(1));

    lcd.setCursor(10,0);

    lcd.write(byte(1));

    lcd.setCursor(15,1);

    lcd.write(byte(0));

    lcd.setCursor(14,1);

    lcd.write(byte(2));

    lcd.setCursor(12,1);

    lcd.write(byte(2));

    lcd.setCursor(10,1);

    lcd.write(byte(5));

    lcd.setCursor(13,1);

    lcd.write(byte(3));

    lcd.setCursor(11,1);

    lcd.write(byte(3));

    lcd.setCursor(9,1);

    lcd.write(byte(4));

    }

    void loop() {

    // scroll 13 positions (string length) to the left

    // to move it offscreen left:

    for (int positionCounter = 0; positionCounter < 13; positionCounter++) {

    // scroll one position left:

    lcd.scrollDisplayLeft();

    // wait a bit:

    delay(1000);

    }

    // scroll 29 positions (string length + display length) to the right

    // to move it offscreen right:

    for (int positionCounter = 0; positionCounter < 29; positionCounter++) {

    // scroll one position right:

    lcd.scrollDisplayRight();

    // wait a bit:

    delay(1000);

    }

    // scroll 16 positions (display length + string length) to the left

    // to move it back to center:

    for (int positionCounter = 0; positionCounter < 16; positionCounter++) {

    // scroll one position left:

    lcd.scrollDisplayLeft();

    // wait a bit:

    delay(1000);

    }

    // delay at the end of the full loop:

    delay(1000);

    }