Do you want to Play with my Digital Dog ?🐕🦺
An LCD Dog Friend🐕🦺
Components and supplies
1
Breadboard (generic)
1
Alphanumeric LCD, 16 x 2
1
Resistor 330 ohm
1
Jumper wires (generic)
1
Single Turn Potentiometer- 10k ohms
1
Pushbutton Switch, Push-Pull
1
Arduino UNO
Apps and platforms
1
Arduino IDE
Project description
Code
Arduino code
arduino
1 2#include <LiquidCrystal.h> 3LiquidCrystal lcd(8, 9, 10, 11, 12, 13); // RS, E, D4, D5, D6, D7 4void setup() { 5lcd.begin(16, 2); 6image(); 7} 8void loop() {} 9 10void image() { 11lcd.clear(); 12 13byte image09[8] = {B00000, B00000, B00000, B00010, B00101, B10101, B01101, B00001}; 14byte image08[8] = {B01000, B10100, B00100, B10010, B00001, B01000, B10000, B00000}; 15byte image07[8] = {B00100, B01011, B01000, B01010, B10001, B10101, B10011, B10000}; 16byte image23[8] = {B10000, B10000, B10000, B10000, B01001, B01010, B00100, B00000}; 17byte image24[8] = {B00000, B00000, B00000, B01110, B01010, B01010, B10001, B00000}; 18byte image25[8] = {B00001, B00001, B00001, B00010, B11010, B11010, B00100, B00000}; 19 20 21lcd.createChar(0, image09); 22lcd.createChar(1, image08); 23lcd.createChar(2, image07); 24lcd.createChar(3, image23); 25lcd.createChar(4, image24); 26lcd.createChar(5, image25); 27 28 29lcd.setCursor(8, 0); 30lcd.write(byte(0)); 31lcd.setCursor(7, 0); 32lcd.write(byte(1)); 33lcd.setCursor(6, 0); 34lcd.write(byte(2)); 35lcd.setCursor(6, 1); 36lcd.write(byte(3)); 37lcd.setCursor(7, 1); 38lcd.write(byte(4)); 39lcd.setCursor(8, 1); 40lcd.write(byte(5)); 41 42delay(1000); 43 44lcd.clear(); 45 46byte image06[8] = {B00000, B00000, B00000, B00010, B00101, B10101, B01101, B00001}; 47byte image22[8] = {B00001, B00001, B00001, B11010, B11010, B01010, B00100, B00000}; 48byte image21[8] = {B00000, B00000, B00000, B01110, B01010, B01010, B10001, B00000}; 49byte image05[8] = {B01000, B10100, B00100, B10010, B00001, B01000, B10000, B00000}; 50byte image04[8] = {B00100, B01011, B01000, B01010, B10001, B10101, B10011, B10000}; 51byte image20[8] = {B10000, B10000, B10000, B10000, B01001, B01010, B00100, B00000}; 52 53 54lcd.createChar(0, image06); 55lcd.createChar(1, image22); 56lcd.createChar(2, image21); 57lcd.createChar(3, image05); 58lcd.createChar(4, image04); 59lcd.createChar(5, image20); 60 61 62lcd.setCursor(5, 0); 63lcd.write(byte(0)); 64lcd.setCursor(5, 1); 65lcd.write(byte(1)); 66lcd.setCursor(4, 1); 67lcd.write(byte(2)); 68lcd.setCursor(4, 0); 69lcd.write(byte(3)); 70lcd.setCursor(3, 0); 71lcd.write(byte(4)); 72lcd.setCursor(3, 1); 73lcd.write(byte(5)); 74delay(1000); 75 76lcd.clear(); 77 78byte image03[8] = {B00000, B00000, B00000, B00010, B00101, B10101, B01101, B00001}; 79byte image19[8] = {B00001, B00001, B00001, B11010, B11010, B01010, B00100, B00000}; 80byte image02[8] = {B01000, B10100, B00100, B10010, B00001, B01000, B10000, B00000}; 81byte image01[8] = {B00100, B01011, B01000, B01010, B10001, B10101, B10011, B10000}; 82byte image18[8] = {B00000, B00000, B00000, B01110, B01010, B01010, B10001, B00000}; 83byte image17[8] = {B10000, B10000, B10000, B10000, B01001, B01010, B00100, B00000}; 84 85 86lcd.createChar(0, image03); 87lcd.createChar(1, image19); 88lcd.createChar(2, image02); 89lcd.createChar(3, image01); 90lcd.createChar(4, image18); 91lcd.createChar(5, image17); 92 93 94lcd.setCursor(2, 0); 95lcd.write(byte(0)); 96lcd.setCursor(2, 1); 97lcd.write(byte(1)); 98lcd.setCursor(1, 0); 99lcd.write(byte(2)); 100lcd.setCursor(0, 0); 101lcd.write(byte(3)); 102lcd.setCursor(1, 1); 103lcd.write(byte(4)); 104lcd.setCursor(0, 1); 105lcd.write(byte(5)); 106delay(1000); 107 108lcd.clear(); 109 110byte image32[8] = {B00001, B00001, B00001, B11010, B11010, B01010, B00100, B00000}; 111byte image16[8] = {B00000, B00000, B00000, B00010, B00101, B10101, B01101, B00001}; 112byte image15[8] = {B01000, B10100, B00100, B10010, B00001, B01000, B10000, B00000}; 113byte image14[8] = {B00100, B01011, B01000, B01010, B10001, B10101, B10011, B10000}; 114byte image30[8] = {B10000, B10000, B10000, B10000, B01001, B01010, B00100, B00000}; 115byte image31[8] = {B00000, B00000, B00000, B01110, B01010, B01010, B10001, B00000}; 116 117 118lcd.createChar(0, image32); 119lcd.createChar(1, image16); 120lcd.createChar(2, image15); 121lcd.createChar(3, image14); 122lcd.createChar(4, image30); 123lcd.createChar(5, image31); 124 125 126lcd.setCursor(15, 1); 127lcd.write(byte(0)); 128lcd.setCursor(15, 0); 129lcd.write(byte(1)); 130lcd.setCursor(14, 0); 131lcd.write(byte(2)); 132lcd.setCursor(13, 0); 133lcd.write(byte(3)); 134lcd.setCursor(13, 1); 135lcd.write(byte(4)); 136lcd.setCursor(14, 1); 137lcd.write(byte(5)); 138delay(1000); 139 140lcd.clear(); 141 142byte image29[8] = {B00001, B00001, B00001, B11010, B11010, B01010, B00100, B00000}; 143byte image28[8] = {B00000, B00000, B00000, B01110, B01010, B01010, B10001, B00000}; 144byte image27[8] = {B10000, B10000, B10000, B10000, B01001, B01010, B00100, B00000}; 145byte image13[8] = {B00000, B00000, B00000, B00010, B00101, B10101, B01101, B00001}; 146byte image12[8] = {B01000, B10100, B00100, B10010, B00001, B01000, B10000, B00000}; 147byte image11[8] = {B00100, B01011, B01000, B01010, B10001, B10101, B10011, B10000}; 148 149 150lcd.createChar(0, image29); 151lcd.createChar(1, image28); 152lcd.createChar(2, image27); 153lcd.createChar(3, image13); 154lcd.createChar(4, image12); 155lcd.createChar(5, image11); 156 157 158lcd.setCursor(12, 1); 159lcd.write(byte(0)); 160lcd.setCursor(11, 1); 161lcd.write(byte(1)); 162lcd.setCursor(10, 1); 163lcd.write(byte(2)); 164lcd.setCursor(12, 0); 165lcd.write(byte(3)); 166lcd.setCursor(11, 0); 167lcd.write(byte(4)); 168lcd.setCursor(10, 0); 169lcd.write(byte(5)); 170delay(1000); 171 172lcd.clear(); 173 174byte image40[8] = {B00100, B01011, B01000, B01010, B10001, B10101, B10011, B10000}; 175byte image10[8] = {B01000, B10100, B00100, B10010, B00001, B01000, B10000, B00000}; 176byte image41[8] = {B00000, B00000, B00000, B00010, B00101, B10101, B01101, B00001}; 177byte image35[8] = {B10000, B10000, B10000, B10000, B01001, B01010, B00100, B00000}; 178byte image26[8] = {B00000, B00000, B00000, B01110, B01010, B01010, B10001, B00000}; 179byte image44[8] = {B00001, B00001, B00001, B11010, B11010, B01010, B00100, B00000}; 180 181 182lcd.createChar(0, image40); 183lcd.createChar(1, image10); 184lcd.createChar(2, image41); 185lcd.createChar(3, image35); 186lcd.createChar(4, image26); 187lcd.createChar(5, image44); 188 189 190lcd.setCursor(8, 0); 191lcd.write(byte(0)); 192lcd.setCursor(9, 0); 193lcd.write(byte(1)); 194lcd.setCursor(10, 0); 195lcd.write(byte(2)); 196lcd.setCursor(8, 1); 197lcd.write(byte(3)); 198lcd.setCursor(9, 1); 199lcd.write(byte(4)); 200lcd.setCursor(10, 1); 201lcd.write(byte(5)); 202//Here is where the original code used to end. HERE! 203delay(1000); 204lcd.begin(16, 2); 205lcd.print("Hello!"); 206byte image50[8] = {B00001, B00001, B00001, B11010, B11010, B01010, B00100, B00000}; 207byte image52[8] = {B00000, B00000, B00000, B01110, B01010, B01010, B10001, B00000}; 208byte image57[8] = {B10000, B10000, B10000, B10000, B01001, B01010, B00100, B00000}; 209byte image53[8] = {B00000, B00000, B00000, B00010, B00101, B10101, B01101, B00001}; 210byte image58[8] = {B01000, B10100, B00100, B10010, B00001, B01000, B10000, B00000}; 211byte image51[8] = {B00100, B01011, B01000, B01010, B10001, B10101, B10011, B10000}; 212 213 214lcd.createChar(0, image50); 215lcd.createChar(1, image52); 216lcd.createChar(2, image57); 217lcd.createChar(3, image53); 218lcd.createChar(4, image58); 219lcd.createChar(5, image51); 220 221 222lcd.setCursor(12, 1); 223lcd.write(byte(0)); 224lcd.setCursor(11, 1); 225lcd.write(byte(1)); 226lcd.setCursor(10, 1); 227lcd.write(byte(2)); 228lcd.setCursor(12, 0); 229lcd.write(byte(3)); 230lcd.setCursor(11, 0); 231lcd.write(byte(4)); 232lcd.setCursor(10, 0); 233lcd.write(byte(5)); 234delay(5000); 235lcd.begin(16, 2); 236lcd.print("What's on"); 237delay(2000); 238lcd.begin(16, 2); 239lcd.print("your mind today?"); 240delay(2000); 241 242lcd.clear(); 243lcd.begin(16, 2); 244lcd.print("Woof,Woof!"); 245byte image67[8] = {B01100, B10000, B10000, B10010, B10010, B10010, B01010, B00110}; 246byte image61[8] = {B00000, B00000, B00000, B00000, B00000, B00000, B00000, B00011}; 247byte image62[8] = {B00000, B00000, B00000, B00000, B00000, B00000, B11000, B00100}; 248byte image68[8] = {B00001, B01001, B01000, B00000, B00000, B00001, B00110, B00100}; 249byte image69[8] = {B00000, B11000, B11000, B11000, B01000, B10000, B00000, B00000}; 250 251 252lcd.createChar(0, image67); 253lcd.createChar(1, image61); 254lcd.createChar(2, image62); 255lcd.createChar(3, image68); 256lcd.createChar(4, image69); 257 258 259lcd.setCursor(10, 1); 260lcd.write(byte(0)); 261lcd.setCursor(10, 0); 262lcd.write(byte(1)); 263lcd.setCursor(11, 0); 264lcd.write(byte(2)); 265lcd.setCursor(11, 1); 266lcd.write(byte(3)); 267lcd.setCursor(12, 1); 268lcd.write(byte(4)); 269delay(3000); 270lcd.begin(16, 2); 271lcd.print("Uh oh!"); 272byte image77[8] = {B01100, B10000, B10000, B10010, B10010, B10010, B01010, B00110}; 273byte image71[8] = {B00000, B00000, B00000, B00000, B00000, B00000, B00000, B00011}; 274byte image72[8] = {B00000, B00000, B00000, B00000, B00000, B00000, B11000, B00100}; 275byte image78[8] = {B00001, B01001, B01000, B00000, B00000, B00001, B00110, B00100}; 276byte image79[8] = {B00000, B11000, B11000, B11000, B01000, B10000, B00000, B00000}; 277 278 279lcd.createChar(0, image77); 280lcd.createChar(1, image71); 281lcd.createChar(2, image72); 282lcd.createChar(3, image78); 283lcd.createChar(4, image79); 284 285 286lcd.setCursor(10, 1); 287lcd.write(byte(0)); 288lcd.setCursor(10, 0); 289lcd.write(byte(1)); 290lcd.setCursor(11, 0); 291lcd.write(byte(2)); 292lcd.setCursor(11, 1); 293lcd.write(byte(3)); 294lcd.setCursor(12, 1); 295lcd.write(byte(4)); 296delay(2000); 297lcd.begin(16, 2); 298lcd.print("I think I need"); 299delay(1500); 300lcd.begin(16, 2); 301lcd.print("To go to the"); 302delay(1500); 303lcd.begin(16, 2); 304lcd.print("BATHROOM!"); 305delay(2000); 306lcd.begin(16, 2); 307lcd.print("Give me one"); 308delay(1500); 309lcd.begin(16, 2); 310lcd.print("Second please."); 311delay(4000); 312lcd.begin(16, 2); 313lcd.print("OHH..."); 314 315byte image80[8] = {B00001, B00010, B00111, B00100, B01001, B01110, B10000, B01111}; 316byte image81[8] = {B10000, B11000, B00100, B01100, B10010, B00110, B11001, B11110}; 317byte image85[8] = {B00000, B00000, B00000, B00000, B00000, B01000, B10000, B10000}; 318 319 320lcd.createChar(0, image80); 321lcd.createChar(1, image81); 322lcd.createChar(2, image85); 323 324 325lcd.setCursor(13, 1); 326lcd.write(byte(0)); 327lcd.setCursor(14, 1); 328lcd.write(byte(1)); 329lcd.setCursor(14, 0); 330lcd.write(byte(2)); 331delay(2000); 332lcd.begin(16, 2); 333lcd.print("Looks like I"); 334delay(1500); 335lcd.begin(16, 2); 336lcd.print("I left a little"); 337delay(1500); 338lcd.begin(16, 2); 339lcd.print("Stinky suprise!"); 340delay(2000); 341lcd.begin(16, 2); 342lcd.print("Well..."); 343 344byte image82[8] = {B01000, B01000, B00100, B01100, B10100, B00010, B00001, B00000}; 345byte image83[8] = {B00000, B00000, B00000, B10001, B01110, B00000, B00001, B11110}; 346byte image84[8] = {B00100, B00100, B01010, B01001, B01000, B10000, B00000, B00000}; 347byte image86[8] = {B00000, B00000, B00000, B11110, B10001, B10000, B01000, B00100}; 348byte image87[8] = {B00000, B00000, B00000, B01111, B10001, B00010, B00100, B01000}; 349byte image88[8] = {B00000, B00000, B00000, B11111, B00000, B00000, B10001, B10001}; 350 351 352lcd.createChar(0, image82); 353lcd.createChar(1, image83); 354lcd.createChar(2, image84); 355lcd.createChar(3, image86); 356lcd.createChar(4, image87); 357lcd.createChar(5, image88); 358 359 360lcd.setCursor(12, 1); 361lcd.write(byte(0)); 362lcd.setCursor(13, 1); 363lcd.write(byte(1)); 364lcd.setCursor(14, 1); 365lcd.write(byte(2)); 366lcd.setCursor(14, 0); 367lcd.write(byte(3)); 368lcd.setCursor(12, 0); 369lcd.write(byte(4)); 370lcd.setCursor(13, 0); 371lcd.write(byte(5)); 372delay(2000); 373lcd.begin(16, 2); 374lcd.print("we'll pick"); 375 376byte image91[8] = {B01000, B01000, B00100, B01100, B10100, B00010, B00001, B00000}; 377byte image92[8] = {B00000, B00000, B00000, B10001, B01110, B00000, B00001, B11110}; 378byte image93[8] = {B00100, B00100, B01010, B01001, B01000, B10000, B00000, B00000}; 379byte image94[8] = {B00000, B00000, B00000, B11110, B10001, B10000, B01000, B00100}; 380byte image95[8] = {B00000, B00000, B00000, B01111, B10001, B00010, B00100, B01000}; 381byte image96[8] = {B00000, B00000, B00000, B11111, B00000, B00000, B00000, B11011}; 382 383 384lcd.createChar(0, image91); 385lcd.createChar(1, image92); 386lcd.createChar(2, image93); 387lcd.createChar(3, image94); 388lcd.createChar(4, image95); 389lcd.createChar(5, image96); 390 391 392lcd.setCursor(12, 1); 393lcd.write(byte(0)); 394lcd.setCursor(13, 1); 395lcd.write(byte(1)); 396lcd.setCursor(14, 1); 397lcd.write(byte(2)); 398lcd.setCursor(14, 0); 399lcd.write(byte(3)); 400lcd.setCursor(12, 0); 401lcd.write(byte(4)); 402lcd.setCursor(13, 0); 403lcd.write(byte(5)); 404 405delay(1000); 406lcd.begin(16, 2); 407lcd.print("It up later!"); 408 409byte image97[8] = {B01000, B01000, B00100, B01100, B10100, B00010, B00001, B00000}; 410byte image98[8] = {B00000, B00000, B00000, B10001, B01110, B00000, B00001, B11110}; 411byte image99[8] = {B00100, B00100, B01010, B01001, B01000, B10000, B00000, B00000}; 412byte image100[8] = {B00000, B00000, B00000, B11110, B10001, B10000, B01000, B00100}; 413byte image101[8] = {B00000, B00000, B00000, B01111, B10001, B00010, B00100, B01000}; 414byte image102[8] = {B00000, B00000, B00000, B11111, B00000, B00000, B00000, B11011}; 415 416 417lcd.createChar(0, image97); 418lcd.createChar(1, image98); 419lcd.createChar(2, image99); 420lcd.createChar(3, image100); 421lcd.createChar(4, image101); 422lcd.createChar(5, image102); 423 424 425lcd.setCursor(12, 1); 426lcd.write(byte(0)); 427lcd.setCursor(13, 1); 428lcd.write(byte(1)); 429lcd.setCursor(14, 1); 430lcd.write(byte(2)); 431lcd.setCursor(14, 0); 432lcd.write(byte(3)); 433lcd.setCursor(12, 0); 434lcd.write(byte(4)); 435lcd.setCursor(13, 0); 436lcd.write(byte(5)); 437delay(3000); 438lcd.begin(16, 2); 439lcd.print("Oh, so you want"); 440delay(1200); 441lcd.begin(16, 2); 442lcd.print("to play more?"); 443delay(1000); 444lcd.begin(16, 2); 445lcd.print("That's an idea."); 446delay(2000); 447lcd.begin(16, 2); 448lcd.print("But I'm tired"); 449 450 451byte image103[8] = {B01111, B00010, B00100, B01000, B01111, B00000, B00000, B00000}; 452byte image104[8] = {B00100, B00010, B11111, B01000, B00100, B00000, B00000, B00000}; 453byte image105[8] = {B00000, B00000, B00100, B00010, B00001, B11111, B01000, B00100}; 454 455 456lcd.createChar(0, image103); 457lcd.createChar(1, image104); 458lcd.createChar(2, image105); 459 460 461lcd.setCursor(13, 1); 462lcd.write(byte(0)); 463lcd.setCursor(15, 0); 464lcd.write(byte(1)); 465lcd.setCursor(14, 0); 466lcd.write(byte(2)); 467delay(2000); 468lcd.begin(16, 2); 469lcd.print("So, if you want"); 470delay(2000); 471lcd.begin(16, 2); 472lcd.print("to play again"); 473delay(1500); 474lcd.begin(16, 2); 475lcd.print("press the"); 476delay(1500); 477lcd.begin(16, 2); 478lcd.print("RESET button"); 479delay(2000); 480lcd.begin(16, 2); 481lcd.print("So, bye bye!"); 482delay(1500); 483lcd.begin(16, 2); 484lcd.print("see ya later! (:"); 485 486}
Downloadable files
Circuit Diagram
Circuit Diagram

Comments
Only logged in users can leave comments