วิธีการใช้งาน จอ LCD Nokia 5110 กับ บอร์ด Arduino Uno

Arduino Uno R3
จอ LCD Nokia 5110
โฟโต้บอร์ด

แสดงตำแหน่งขา ของจอ LCD Nokia 5110

  1. RST pin resets
  2. CE(Chip Enable)
  3. D/C(Data/Command) 
  4. DIN is a serial data
  5. CLK is a serial clock
  6. VCC pin supplies power
  7. BL(Backlight) 
  8. GND 

การใช้งาน จอ LCD Nokia 5110 เราจะต้องใช้ Library 2 ตัว ของ Adafruit

  1. Adafruit PCD8544 Nokia 5110 LCD Library
  2. Adafruit GFX Library

วิธีเพิ่ม Library

ไปที่แถบเมนู Sketch > Include Library > Manage Libraries…

ตรงช่องค้นหาให้พิมพ์ คำว่า nokia แล้วมองหา Adafruit PCD8544 Nokia 5110 LCD library แล้วกด Install

ตรงช่องค้นหาให้พิมพ์ คำว่า adafruit gfx มองหา Adafruit GFX Library

แล้ว Install

Code ตัวอย่าง

#include <SPI.h>
#include <Adafruit_GFX.h>
#include <Adafruit_PCD8544.h>

// Declare LCD object for software SPI
// Adafruit_PCD8544(CLK,DIN,D/C,CE,RST);
Adafruit_PCD8544 display = Adafruit_PCD8544(7, 6, 5, 4, 3);

int rotatetext = 1;

void setup()   {
	Serial.begin(9600);

	//Initialize Display
	display.begin();

	// you can change the contrast around to adapt the display for the best viewing!
	display.setContrast(57);

	// Clear the buffer.
	display.clearDisplay();

	// Display Text
	display.setTextSize(1);
	display.setTextColor(BLACK);
	display.setCursor(0,0);
	display.println("Hello world!");
	display.display();
	delay(2000);
	display.clearDisplay();


	// Display Inverted Text
	display.setTextColor(WHITE, BLACK); // 'inverted' text
	display.setCursor(0,0);
	display.println("Hello world!");
	display.display();
	delay(2000);
	display.clearDisplay();

	// Scaling Font Size
	display.setTextColor(BLACK);
	display.setCursor(0,0);
	display.setTextSize(2);
	display.println("Hello!");
	display.display();
	delay(2000);
	display.clearDisplay();

	// Display Numbers
	display.setTextSize(1);
	display.setCursor(0,0);
	display.println(123456789);
	display.display();
	delay(2000);
	display.clearDisplay();

	// Specifying Base For Numbers
	display.setCursor(0,0);
	display.print("0x"); display.print(0xFF, HEX); 
	display.print("(HEX) = ");
	display.print(0xFF, DEC);
	display.println("(DEC)"); 
	display.display();
	delay(2000);
	display.clearDisplay();

	// Display ASCII Characters
	display.setCursor(0,0);
	display.setTextSize(2);
	display.write(3);
	display.display();
	delay(2000);
	display.clearDisplay();

	// Text Rotation
	while(1)
	{
	display.clearDisplay();
	display.setRotation(rotatetext);  // rotate 90 degrees counter clockwise, can also use values of 2 and 3 to go further.
	display.setTextSize(1);
	display.setTextColor(BLACK);
	display.setCursor(0,0);
	display.println("Text Rotation");
	display.display();
	delay(1000);
	display.clearDisplay();
	rotatetext++;
	}
}

void loop() {}

Leave a Reply

Your email address will not be published. Required fields are marked *