Show Posts
Pages: 1 ... 24 25 [26]
376  Community / Exhibition / Gallery / LCD 16x2 character art (posting all my char art here) on: March 05, 2011, 07:48:05 am
Ok So I'll make one topic in which I will show all my Character art. Maybe someone can use a piece.

Here goes Thumbs Up

Code:
/*
Demonstrates the use a 16x2 LCD display.  The LiquidCrystal
library works with all LCD displays that are compatible with the Hitachi HD44780 driver.

This sketch is used for testing the lcd.createChar function.

TITLE: Thumbs Up

Demo by JO3RI

www.JO3RI.be/arduino
*/

// include the library code:
#include  <LiquidCrystal.h>

// initialize the library with the numbers of the interface pins:
LiquidCrystal lcd(12, 11, 5, 4, 3, 2);

void setup() {
// set up the LCD's number of columns and rows:
lcd.begin(16,2);
// clear the LCD screen:
lcd.clear();
}


void loop() {
// start the Thumbs Up part:
thumbsup();
}    

void thumbsup() {
  byte thumb1[8] = {B00100,B00011,B00100,B00011,B00100,B00011,B00010,B00001};
  byte thumb2[8] = {B00000,B00000,B00000,B00000,B00000,B00000,B00000,B00011};
  byte thumb3[8] = {B00000,B00000,B00000,B00000,B00000,B00000,B00001,B11110};
  byte thumb4[8] = {B00000,B01100,B10010,B10010,B10001,B01000,B11110,B00000};
  byte thumb5[8] = {B00010,B00010,B00010,B00010,B00010,B01110,B10000,B00000};
  byte thumb6[8] = {B00000,B00000,B00000,B00000,B00000,B10000,B01000,B00110};
  lcd.createChar(0, thumb1);
  lcd.createChar(1, thumb2);
  lcd.createChar(2, thumb3);
  lcd.createChar(3, thumb4);
  lcd.createChar(4, thumb5);
  lcd.createChar(5, thumb6);
  lcd.setCursor(4,1);
  lcd.write(0);
  lcd.setCursor(4,0);
  lcd.write(1);
  lcd.setCursor(5,1);
  lcd.write(2);
  lcd.setCursor(5,0);
  lcd.write(3);
  lcd.setCursor(6,1);
  lcd.write(4);
  lcd.setCursor(6,0);
  lcd.write(5);
}

and the picture:

377  Community / Exhibition / Gallery / Re: My first LCD 16x2 animation demo on: March 05, 2011, 07:35:10 am
Yeah, you're right. Damn, changing all the code all over again   smiley-mr-green
378  Using Arduino / Displays / Re: ARDUINO logo on a 16x2 LCD on: March 05, 2011, 06:20:16 am
Ok, and because someone probably would ask, here is a video

379  Community / Exhibition / Gallery / Re: My first LCD 16x2 animation demo on: March 05, 2011, 05:46:28 am
Ok, got over the youtube stuff.

You can watch a small video on my project page under media (the link should jump to the media part itself)

http://www.jo3ri.be/arduino/arduino-projects/lcd-16x2-demo#TOC-Media

380  Using Arduino / Displays / Re: ARDUINO logo on a 16x2 LCD on: March 05, 2011, 05:36:00 am


Unlocked it just to put an image for reference, and I'll leave it open for a bit longer  smiley
381  Community / Exhibition / Gallery / Re: My first LCD 16x2 animation demo on: March 05, 2011, 04:28:23 am
Yep, I'll do that. But it seems like you can not connect a google apps mailbox to YouTube and you can't connect 2 YouTube accounts to 1 gmail mailbox, so I'll have to make a new one ( kind of stupid).

Nevertheless, I know video says more than code ;-)
382  Community / Exhibition / Gallery / Re: My first LCD 16x2 animation demo on: March 04, 2011, 01:17:24 pm
Thanks, I have changed the link.
383  Using Arduino / Displays / Re: ARDUINO logo on a 16x2 LCD on: March 04, 2011, 01:15:49 pm
Ok, so we have an answer. I'll lock this topic, Thanks
384  Using Arduino / Displays / ARDUINO logo on a 16x2 LCD on: March 03, 2011, 02:29:19 pm
made the arduino logo in little bits, but then it struck me, you can only have 8 character sets at 1 time. So for now i'm shifting upperpart en lowerpart.

Is there a way around this, because for now you'll get a flickering logo.

the code:
Code:
/*
Demonstrates the use a 16x2 LCD display.  The LiquidCrystal
library works with all LCD displays that are compatible with the Hitachi HD44780 driver.

This sketch is used for testing the lcd.createChar function.

Demo by JO3RI


*/

// include the library code:
#include  <LiquidCrystal.h>

// initialize the library with the numbers of the interface pins:
LiquidCrystal lcd(12, 11, 5, 4, 3, 2);
// set speed for shift upper - lower part:
int x=25;

void setup() {
// set up the LCD's number of columns and rows:
lcd.begin(16,2);
// clear the LCD screen:
lcd.clear();
}


void loop() {
// start the arduinologo part:
arduinologo();
}     

//the arduinologo logo itself
void arduinologo(){
upperpart();
        lcd.setCursor(4,0);
lcd.write(0);
lcd.setCursor(5,0);
lcd.write(1);
lcd.setCursor(6,0);
lcd.write(2);
lcd.setCursor(7,0);
lcd.write(3);
lcd.setCursor(8,0);
lcd.write(4);
lcd.setCursor(9,0);
lcd.write(5);
lcd.setCursor(10,0);
lcd.write(6);
lcd.setCursor(11,0);
lcd.write(7);
        delay(x);
        lcd.clear();
        lowerpart();
        lcd.setCursor(4,1);
lcd.write(0);
lcd.setCursor(5,1);
lcd.write(1);
lcd.setCursor(6,1);
lcd.write(2);
lcd.setCursor(7,1);
lcd.write(3);
lcd.setCursor(8,1);
lcd.write(4);
lcd.setCursor(9,1);
lcd.write(5);
lcd.setCursor(10,1);
lcd.write(6);
lcd.setCursor(11,1);
lcd.write(7);
        delay(x);
        lcd.clear();
}

void upperpart(){
        byte logoARD1a[8] = {B00000,B00000,B00001,B00011,B00111,B00111,B01110,B01110};
        byte logoARD2a[8] = {B00111,B11111,B11111,B11000,B10000,B00000,B00000,B00111};
        byte logoARD3a[8] = {B11100,B11111,B11111,B00011,B00000,B00000,B00000,B11100};
        byte logoARD4a[8] = {B00000,B00000,B11000,B11100,B11110,B01111,B01111,B00111};
        byte logoARD5a[8] = {B00000,B00000,B00011,B00111,B01111,B11110,B11110,B11100};
        byte logoARD6a[8] = {B00111,B11111,B11111,B11000,B00000,B00001,B00001,B00111};
        byte logoARD7a[8] = {B11100,B11111,B11111,B00011,B00001,B10000,B10000,B11100};
        byte logoARD8a[8] = {B00000,B00000,B10000,B11000,B11100,B11100,B01110,B01110};
lcd.createChar(0, logoARD1a);
lcd.createChar(1, logoARD2a);
lcd.createChar(2, logoARD3a);
lcd.createChar(3, logoARD4a);
lcd.createChar(4, logoARD5a);
lcd.createChar(5, logoARD6a);
lcd.createChar(6, logoARD7a);
lcd.createChar(7, logoARD8a);
}

void lowerpart(){
        byte logoARD9a[8] = {B01110,B01110,B00111,B00111,B00011,B00001,B00000,B00000};
        byte logoARD10a[8] = {B00111,B00000,B00000,B10000,B11000,B11111,B11111,B00111};
        byte logoARD11a[8] = {B11100,B00000,B00000,B00000,B00011,B11111,B11111,B11100};
        byte logoARD12a[8] = {B00111,B01111,B01111,B11110,B11100,B11000,B00000,B00000};
        byte logoARD13a[8] = {B11100,B11110,B11110,B01111,B00111,B00011,B00000,B00000};
        byte logoARD14a[8] = {B00111,B00001,B00001,B00000,B11000,B11111,B11111,B00111};
        byte logoARD15a[8] = {B11100,B10000,B10000,B00000,B00011,B11111,B11111,B11100};
        byte logoARD16a[8] = {B01110,B01110,B11100,B11100,B11000,B10000,B00000,B00000};
lcd.createChar(0, logoARD9a);
lcd.createChar(1, logoARD10a);
lcd.createChar(2, logoARD11a);
lcd.createChar(3, logoARD12a);
lcd.createChar(4, logoARD13a);
lcd.createChar(5, logoARD14a);
lcd.createChar(6, logoARD15a);
lcd.createChar(7, logoARD16a);
}
385  Community / Exhibition / Gallery / My first LCD 16x2 animation demo on: March 03, 2011, 10:39:09 am
Got my very first ARDUINO sketch working. It is a LCD 16x2 DEMO in which first some text is shown and than a Space Invader crawls over the LCD screen. It is not jumping but really moving pixel by pixel. For this I had to draw every pixel-state for the animation in bit code.

Maybe somebody can do this with less code?

link to my project page:

http://www.jo3ri.be/arduino/arduino-projects/lcd-16x2-demo

the code itself

Code:
/*
Demonstrates the use a 16x2 LCD display.  The LiquidCrystal
library works with all LCD displays that are compatible with the Hitachi HD44780 driver.

This sketch is used for testing the lcd.createChar function. It first shows some text
and than scrolls a space-invader pixel by pixel.

Demo by JO3RI

http://www.JO3RI.be/arduino/arduino-projects/lcd-16x2-demo

*/

// include the library code:
#include  <LiquidCrystal.h>

// initialize the library with the numbers of the interface pins:
LiquidCrystal lcd(12, 11, 5, 4, 3, 2);

// set for space invader animation speed:
int y=250;

// drawing the pixels for each 8x5 part of the LCD (SPACE INVADER)
// --START SPACE INVADER--
// --EMPTY START--
byte charSP0[8] = {
 B00000,
 B00000,
 B00000,
 B00000,
 B00000,
 B00000,
 B00000,
 B00000
};
// --EMPTY END--

// --MOVE STEP A START--
byte charSP1a[8] = {
 B00000,
 B00000,
 B00000,
 B10000,
 B10000,
 B00000,
 B00000,
 B10000
};

byte charSP2a[8] = {
 B00000,
 B00000,
 B10000,
 B11000,
 B11000,
 B00000,
 B10000,
 B01000
};

byte charSP3a[8] = {
 B00000,
 B10000,
 B11000,
 B01100,
 B11100,
 B10000,
 B01000,
 B10100
};

byte charSP4a[8] = {
 B10000,
 B11000,
 B11100,
 B10110,
 B11110,
 B01000,
 B10100,
 B01010
};

byte charSP5a[8] = {
 B11000,
 B11100,
 B11110,
 B11011,
 B11111,
 B00100,
 B11010,
 B00101
};

byte charSP6a[8] = {
 B01100,
 B11110,
 B11111,
 B01101,
 B11111,
 B10010,
 B01101,
 B10010
};


byte charSP7a[8] = {
 B00110,
 B01111,
 B11111,
 B10110,
 B11111,
 B01001,
 B10110,
 B01001
};

byte charSP8a[8] = {
 B00011,
 B00111,
 B01111,
 B11011,
 B11111,
 B00100,
 B01011,
 B10100
};

byte charSP9a[8] = {
 B00001,
 B00011,
 B00111,
 B01101,
 B01111,
 B00001,
 B00010,
 B00101
};

byte charSP10a[8] = {
 B00000,
 B00001,
 B00011,
 B00110,
 B00111,
 B00001,
 B00010,
 B00101
};

byte charSP11a[8] = {
 B00000,
 B00000,
 B00001,
 B00011,
 B00011,
 B00000,
 B00001,
 B00010
};

byte charSP12a[8] = {
 B00000,
 B00000,
 B00000,
 B00001,
 B00001,
 B00000,
 B00000,
 B00001
};
// --MOVE STEP A END--

// --MOVE STEP B START--
byte charSP1b[8] = {
 B00000,
 B00000,
 B00000,
 B10000,
 B10000,
 B00000,
 B10000,
 B00000
};

byte charSP2b[8] = {
 B00000,
 B00000,
 B10000,
 B11000,
 B11000,
 B10000,
 B01000,
 B10000
};

byte charSP3b[8] = {
 B00000,
 B10000,
 B11000,
 B01100,
 B11100,
 B01000,
 B00100,
 B01000
};

byte charSP4b[8] = {
 B10000,
 B11000,
 B11100,
 B10110,
 B11110,
 B10100,
 B00010,
 B00100
};

byte charSP5b[8] = {
 B11000,
 B11100,
 B11110,
 B11011,
 B11111,
 B11010,
 B00001,
 B00010
};

byte charSP6b[8] = {
 B01100,
 B11110,
 B11111,
 B01101,
 B11111,
 B01101,
 B00000,
 B00001
};

byte charSP7b[8] = {
 B00110,
 B01111,
 B11111,
 B10110,
 B11111,
 B10110,
 B00000,
 B10000
};

byte charSP8b[8] = {
 B00011,
 B00111,
 B01111,
 B11011,
 B11111,
 B01011,
 B10000,
 B01000
};

byte charSP9b[8] = {
 B00001,
 B00011,
 B00111,
 B01101,
 B01111,
 B00101,
 B01000,
 B00100
};

byte charSP10b[8] = {
 B00000,
 B00001,
 B00011,
 B00110,
 B00111,
 B00010,
 B00100,
 B00010
};

byte charSP11b[8] = {
 B00000,
 B00000,
 B00001,
 B00011,
 B00011,
 B00001,
 B00010,
 B00001
};

byte charSP12b[8] = {
 B00000,
 B00000,
 B00000,
 B00001,
 B00001,
 B00000,
 B00001,
 B00000
};
// --MOVE STEP B END--
// --END SPACE INVADER--


void setup() {
 // set up the LCD's number of columns and rows:
 lcd.begin(16,2);
 // clear the LCD screen:
 lcd.clear();
}


void loop() {
 // start the welcome part:
 welcome();
 // start the space invader part:
 space01();
}

//set up the welcome part
void welcome(){
   lcd.clear();
 lcd.setCursor(0,0);
 lcd.print("ARDUINO LCD DEMO");
 lcd.setCursor(1,1);
 lcd.print("ANIMATION v1.0");
 delay(3000);
 lcd.clear();
 lcd.setCursor(2,0);
 lcd.print("PLEASE VISIT");
 lcd.setCursor(2,1);
 lcd.print("www.JO3RI.be");
 delay(3000);
}        

//set up the space invader animation and make it move
void space01(){
 for (int a=0; a<13;a+=2)
 {
 int b=a+1;
 int c=a+2;
 int d=a+3;
 int e=a+4;
 lcd.clear();
 lcd.setCursor(1,1);
 lcd.print("SPACE INVADERS");
 lcd.createChar(0, charSP12a);
 lcd.createChar(1, charSP7a);
 lcd.createChar(2, charSP2a);
 lcd.createChar(3, charSP0);
 lcd.setCursor(a,0);
 lcd.write(0);
 lcd.setCursor(b,0);
 lcd.write(1);
 lcd.setCursor(c,0);
 lcd.write(2);
 lcd.setCursor(d,0);
 lcd.write(3);
 lcd.setCursor(e,0);
 lcd.write(3);
 delay(y);
 lcd.createChar(0, charSP0);
 lcd.createChar(1, charSP8b);
 lcd.createChar(2, charSP3b);
 lcd.createChar(3, charSP0);
 lcd.setCursor(a,0);
 lcd.write(0);
 lcd.setCursor(b,0);
 lcd.write(1);
 lcd.setCursor(c,0);
 lcd.write(2);
 lcd.setCursor(d,0);
 lcd.write(3);
 lcd.setCursor(e,0);
 lcd.write(3);
 delay(y);
 lcd.createChar(0, charSP0);
 lcd.createChar(1, charSP9a);
 lcd.createChar(2, charSP4a);
 lcd.setCursor(a,0);
 lcd.write(0);
 lcd.setCursor(b,0);
 lcd.write(1);
 lcd.setCursor(c,0);
 lcd.write(2);
 lcd.setCursor(d,0);
 lcd.write(0);
 lcd.setCursor(e,0);
 lcd.write(0);
 delay(y);
 lcd.createChar(0, charSP0);
 lcd.createChar(1, charSP10b);
 lcd.createChar(2, charSP5b);
 lcd.setCursor(a,0);
 lcd.write(0);
 lcd.setCursor(b,0);
 lcd.write(1);
 lcd.setCursor(c,0);
 lcd.write(2);
 lcd.setCursor(d,0);
 lcd.write(0);
 lcd.setCursor(e,0);
 lcd.write(0);
 delay(y);
 lcd.createChar(0, charSP0);
 lcd.createChar(1, charSP11a);
 lcd.createChar(2, charSP6a);
 lcd.createChar(3, charSP1a);
 lcd.setCursor(a,0);
 lcd.write(0);
 lcd.setCursor(b,0);
 lcd.write(1);
 lcd.setCursor(c,0);
 lcd.write(2);
 lcd.setCursor(d,0);
 lcd.write(3);
 lcd.setCursor(e,0);
 lcd.write(0);
 delay(y);
 lcd.createChar(0, charSP0);
 lcd.createChar(1, charSP12b);
 lcd.createChar(2, charSP7b);
 lcd.createChar(3, charSP2b);
 lcd.setCursor(a,0);
 lcd.write(0);
 lcd.setCursor(b,0);
 lcd.write(1);
 lcd.setCursor(c,0);
 lcd.write(2);
 lcd.setCursor(d,0);
 lcd.write(3);
 lcd.setCursor(e,0);
 lcd.write(0);
 delay(y);
 lcd.createChar(0, charSP0);
 lcd.createChar(1, charSP0);
 lcd.createChar(2, charSP8a);
 lcd.createChar(3, charSP3a);
 lcd.setCursor(a,0);
 lcd.write(0);
 lcd.setCursor(b,0);
 lcd.write(1);
 lcd.setCursor(c,0);
 lcd.write(2);
 lcd.setCursor(d,0);
 lcd.write(3);
 lcd.setCursor(e,0);
 lcd.write(0);
 delay(y);
 lcd.createChar(0, charSP0);
 lcd.createChar(2, charSP9b);
 lcd.createChar(3, charSP4b);
 lcd.setCursor(a,0);
 lcd.write(0);
 lcd.setCursor(b,0);
 lcd.write(0);
 lcd.setCursor(c,0);
 lcd.write(2);
 lcd.setCursor(d,0);
 lcd.write(3);
 lcd.setCursor(e,0);
 lcd.write(0);
 delay(y);
 lcd.createChar(0, charSP0);
 lcd.createChar(2, charSP10a);
 lcd.createChar(3, charSP5a);
 lcd.setCursor(a,0);
 lcd.write(0);
 lcd.setCursor(b,0);
 lcd.write(0);
 lcd.setCursor(c,0);
 lcd.write(2);
 lcd.setCursor(d,0);
 lcd.write(3);
 lcd.setCursor(e,0);
 lcd.write(0);
 delay(y);
 lcd.createChar(0, charSP0);
 lcd.createChar(2, charSP11b);
 lcd.createChar(3, charSP6b);
 lcd.createChar(4, charSP1b);
 lcd.setCursor(a,0);
 lcd.write(0);
 lcd.setCursor(b,0);
 lcd.write(0);
 lcd.setCursor(c,0);
 lcd.write(2);
 lcd.setCursor(d,0);
 lcd.write(3);
 lcd.setCursor(e,0);
 lcd.write(4);
 delay(y);
 }
}
Pages: 1 ... 24 25 [26]