Chuyển tới nội dung
Home » Arduino Uno R3 Lcd | Module I2C Arduino

Arduino Uno R3 Lcd | Module I2C Arduino

Giao Tiếp I2C Với LCD 16x2 Bằng Arduino Uno R3 | Điện tử DAT

Schematic

Hello World Example

This example sketch prints

to the LCD and shows the time in seconds since the Arduino was reset.

Hello World!

1/*2 LiquidCrystal Library – Hello World34 Demonstrates the use a 16×2 LCD display. The LiquidCrystal5 library works with all LCD displays that are compatible with the6 Hitachi HD44780 driver. There are many of them out there, and you7 can usually tell them by the 16-pin interface.89 This sketch prints “Hello World!” to the LCD10 and shows the time.1112 The circuit:13 * LCD RS pin to digital pin 1214 * LCD Enable pin to digital pin 1115 * LCD D4 pin to digital pin 516 * LCD D5 pin to digital pin 417 * LCD D6 pin to digital pin 318 * LCD D7 pin to digital pin 219 * LCD R/W pin to ground20 * LCD VSS pin to ground21 * LCD VCC pin to 5V22 * 10K resistor:23 * ends to +5V and ground24 * wiper to LCD VO pin (pin 3)2526 Library originally added 18 Apr 200827 by David A. Mellis28 library modified 5 Jul 200929 by Limor Fried (http://www.ladyada.net)30 example added 9 Jul 200931 by Tom Igoe32 modified 22 Nov 201033 by Tom Igoe34 modified 7 Nov 201635 by Arturo Guadalupi3637 This example code is in the public domain.3839 https://docs.arduino.cc/learn/electronics/lcd-displays4041*/4243// include the library code:44#include 4546// initialize the library by associating any needed LCD interface pin47// with the arduino pin number it is connected to48const int rs = 12, en = 11, d4 = 5, d5 = 4, d6 = 3, d7 = 2;49LiquidCrystal lcd(rs, en, d4, d5, d6, d7);5051void setup() {52 // set up the LCD’s number of columns and rows:53 lcd.begin(16, 2);54 // Print a message to the LCD.55 lcd.print(“hello, world!”);56}5758void loop() {59 // set the cursor to column 0, line 160 // (note: line 1 is the second row, since counting begins with 0):61 lcd.setCursor(0, 1);62 // print the number of seconds since reset:63 lcd.print(millis() / 1000);64}

Autoscroll Example

This example sketch shows how to use the

and

autoscroll()

methods to move all the text on the display left or right.

noAutoscroll()

  • moves all the text one space to the left each time a letter is added


    autoscroll()

  • turns scrolling off


    noAutoscroll()

This sketch prints the characters

to

with autoscroll off, then moves the cursor to the bottom right, turns autoscroll on, and prints them again.

1/*23 LiquidCrystal Library – Autoscroll45 Demonstrates the use a 16×2 LCD display. The LiquidCrystal67 library works with all LCD displays that are compatible with the89 Hitachi HD44780 driver. There are many of them out there, and you1011 can usually tell them by the 16-pin interface.1213 This sketch demonstrates the use of the autoscroll()1415 and noAutoscroll() functions to make new text scroll or not.1617 The circuit:1819 * LCD RS pin to digital pin 122021 * LCD Enable pin to digital pin 112223 * LCD D4 pin to digital pin 52425 * LCD D5 pin to digital pin 42627 * LCD D6 pin to digital pin 32829 * LCD D7 pin to digital pin 23031 * LCD R/W pin to ground3233 * 10K resistor:3435 * ends to +5V and ground3637 * wiper to LCD VO pin (pin 3)3839 Library originally added 18 Apr 20084041 by David A. Mellis4243 library modified 5 Jul 20094445 by Limor Fried (http://www.ladyada.net)4647 example added 9 Jul 20094849 by Tom Igoe5051 modified 22 Nov 20105253 by Tom Igoe5455 modified 7 Nov 20165657 by Arturo Guadalupi5859 This example code is in the public domain.6061 http://www.arduino.cc/en/Tutorial/LiquidCrystalAutoscroll6263*/6465// include the library code:66#include 6768// initialize the library by associating any needed LCD interface pin69// with the arduino pin number it is connected to7071const int rs = 12, en = 11, d4 = 5, d5 = 4, d6 = 3, d7 = 2;7273LiquidCrystal lcd(rs, en, d4, d5, d6, d7);7475void setup() {7677 // set up the LCD’s number of columns and rows:7879 lcd.begin(16, 2);80}8182void loop() {8384 // set the cursor to (0,0):8586 lcd.setCursor(0, 0);8788 // print from 0 to 9:8990 for (int thisChar = 0; thisChar < 10; thisChar++) {9192 lcd.print(thisChar);9394 delay(500);9596 }9798 // set the cursor to (16,1):99100 lcd.setCursor(16, 1);101102 // set the display to automatically scroll:103104 lcd.autoscroll();105106 // print from 0 to 9:107108 for (int thisChar = 0; thisChar < 10; thisChar++) {109110 lcd.print(thisChar);111112 delay(500);113114 }115116 // turn off automatic scrolling117118 lcd.noAutoscroll();119120 // clear screen for the next loop:121122 lcd.clear();123}

Blink Example

This example sketch shows how to use the

and

blink()

methods to blink a block-style cursor.

noBlink()

1/*23 LiquidCrystal Library – Blink45 Demonstrates the use a 16×2 LCD display. The LiquidCrystal67 library works with all LCD displays that are compatible with the89 Hitachi HD44780 driver. There are many of them out there, and you1011 can usually tell them by the 16-pin interface.1213 This sketch prints “Hello World!” to the LCD and makes the1415 cursor block blink.1617 The circuit:1819 * LCD RS pin to digital pin 122021 * LCD Enable pin to digital pin 112223 * LCD D4 pin to digital pin 52425 * LCD D5 pin to digital pin 42627 * LCD D6 pin to digital pin 32829 * LCD D7 pin to digital pin 23031 * LCD R/W pin to ground3233 * 10K resistor:3435 * ends to +5V and ground3637 * wiper to LCD VO pin (pin 3)3839 Library originally added 18 Apr 20084041 by David A. Mellis4243 library modified 5 Jul 20094445 by Limor Fried (http://www.ladyada.net)4647 example added 9 Jul 20094849 by Tom Igoe5051 modified 22 Nov 20105253 by Tom Igoe5455 modified 7 Nov 20165657 by Arturo Guadalupi5859 This example code is in the public domain.6061 http://www.arduino.cc/en/Tutorial/LiquidCrystalBlink6263*/6465// include the library code:66#include 6768// initialize the library by associating any needed LCD interface pin69// with the arduino pin number it is connected to7071const int rs = 12, en = 11, d4 = 5, d5 = 4, d6 = 3, d7 = 2;7273LiquidCrystal lcd(rs, en, d4, d5, d6, d7);7475void setup() {7677 // set up the LCD’s number of columns and rows:7879 lcd.begin(16, 2);8081 // Print a message to the LCD.8283 lcd.print(“hello, world!”);84}8586void loop() {8788 // Turn off the blinking cursor:8990 lcd.noBlink();9192 delay(3000);9394 // Turn on the blinking cursor:9596 lcd.blink();9798 delay(3000);99}

Cursor

This example sketch shows how to use the

and

cursor()

methods to control an underscore-style cursor.

noCursor()

1/*23 LiquidCrystal Library – Cursor45 Demonstrates the use a 16×2 LCD display. The LiquidCrystal67 library works with all LCD displays that are compatible with the89 Hitachi HD44780 driver. There are many of them out there, and you1011 can usually tell them by the 16-pin interface.1213 This sketch prints “Hello World!” to the LCD and1415 uses the cursor() and noCursor() methods to turn1617 on and off the cursor.1819 The circuit:2021 * LCD RS pin to digital pin 122223 * LCD Enable pin to digital pin 112425 * LCD D4 pin to digital pin 52627 * LCD D5 pin to digital pin 42829 * LCD D6 pin to digital pin 33031 * LCD D7 pin to digital pin 23233 * LCD R/W pin to ground3435 * 10K resistor:3637 * ends to +5V and ground3839 * wiper to LCD VO pin (pin 3)4041 Library originally added 18 Apr 20084243 by David A. Mellis4445 library modified 5 Jul 20094647 by Limor Fried (http://www.ladyada.net)4849 example added 9 Jul 20095051 by Tom Igoe5253 modified 22 Nov 20105455 by Tom Igoe5657 modified 7 Nov 20165859 by Arturo Guadalupi6061 This example code is in the public domain.6263 http://www.arduino.cc/en/Tutorial/LiquidCrystalCursor6465*/6667// include the library code:68#include 6970// initialize the library by associating any needed LCD interface pin71// with the arduino pin number it is connected to7273const int rs = 12, en = 11, d4 = 5, d5 = 4, d6 = 3, d7 = 2;7475LiquidCrystal lcd(rs, en, d4, d5, d6, d7);7677void setup() {7879 // set up the LCD’s number of columns and rows:8081 lcd.begin(16, 2);8283 // Print a message to the LCD.8485 lcd.print(“hello, world!”);86}8788void loop() {8990 // Turn off the cursor:9192 lcd.noCursor();9394 delay(500);9596 // Turn on the cursor:9798 lcd.cursor();99100 delay(500);101}

Display Example

This example sketch shows how to use the

and

display()

methods to turn on and off the display. The text to be displayed will still be preserved when you use noDisplay() so it’s a quick way to blank the display without losing everything on it.

noDisplay()

1/*2 LiquidCrystal Library – display() and noDisplay()34 Demonstrates the use a 16×2 LCD display. The LiquidCrystal5 library works with all LCD displays that are compatible with the6 Hitachi HD44780 driver. There are many of them out there, and you7 can usually tell them by the 16-pin interface.89 This sketch prints “Hello World!” to the LCD and uses the10 display() and noDisplay() functions to turn on and off11 the display.1213 The circuit:14 * LCD RS pin to digital pin 1215 * LCD Enable pin to digital pin 1116 * LCD D4 pin to digital pin 517 * LCD D5 pin to digital pin 418 * LCD D6 pin to digital pin 319 * LCD D7 pin to digital pin 220 * LCD R/W pin to ground21 * 10K resistor:22 * ends to +5V and ground23 * wiper to LCD VO pin (pin 3)2425 Library originally added 18 Apr 200826 by David A. Mellis27 library modified 5 Jul 200928 by Limor Fried (http://www.ladyada.net)29 example added 9 Jul 200930 by Tom Igoe31 modified 22 Nov 201032 by Tom Igoe33 modified 7 Nov 201634 by Arturo Guadalupi3536 This example code is in the public domain.3738 http://www.arduino.cc/en/Tutorial/LiquidCrystalDisplay3940*/4142// include the library code:43#include 4445// initialize the library by associating any needed LCD interface pin46// with the arduino pin number it is connected to47const int rs = 12, en = 11, d4 = 5, d5 = 4, d6 = 3, d7 = 2;48LiquidCrystal lcd(rs, en, d4, d5, d6, d7);4950void setup() {51 // set up the LCD’s number of columns and rows:52 lcd.begin(16, 2);53 // Print a message to the LCD.54 lcd.print(“hello, world!”);55}5657void loop() {58 // Turn off the display:59 lcd.noDisplay();60 delay(500);61 // Turn on the display:62 lcd.display();63 delay(500);64}

Scroll Example

This example sketch shows how to use the

and

scrollDisplayLeft()

methods to reverse the direction the text is flowing. It prints “Hello World!”, scrolls it offscreen to the left, then offscreen to the right, then back to home.

scrollDisplayRight()

1/*2 LiquidCrystal Library – scrollDisplayLeft() and scrollDisplayRight()34 Demonstrates the use a 16×2 LCD display. The LiquidCrystal5 library works with all LCD displays that are compatible with the6 Hitachi HD44780 driver. There are many of them out there, and you7 can usually tell them by the 16-pin interface.89 This sketch prints “Hello World!” to the LCD and uses the10 scrollDisplayLeft() and scrollDisplayRight() methods to scroll11 the text.1213 The circuit:14 * LCD RS pin to digital pin 1215 * LCD Enable pin to digital pin 1116 * LCD D4 pin to digital pin 517 * LCD D5 pin to digital pin 418 * LCD D6 pin to digital pin 319 * LCD D7 pin to digital pin 220 * LCD R/W pin to ground21 * 10K resistor:22 * ends to +5V and ground23 * wiper to LCD VO pin (pin 3)2425 Library originally added 18 Apr 200826 by David A. Mellis27 library modified 5 Jul 200928 by Limor Fried (http://www.ladyada.net)29 example added 9 Jul 200930 by Tom Igoe31 modified 22 Nov 201032 by Tom Igoe33 modified 7 Nov 201634 by Arturo Guadalupi3536 This example code is in the public domain.3738 http://www.arduino.cc/en/Tutorial/LiquidCrystalScroll3940*/4142// include the library code:43#include 4445// initialize the library by associating any needed LCD interface pin46// with the arduino pin number it is connected to47const int rs = 12, en = 11, d4 = 5, d5 = 4, d6 = 3, d7 = 2;48LiquidCrystal lcd(rs, en, d4, d5, d6, d7);4950void setup() {51 // set up the LCD’s number of columns and rows:52 lcd.begin(16, 2);53 // Print a message to the LCD.54 lcd.print(“hello, world!”);55 delay(1000);56}5758void loop() {59 // scroll 13 positions (string length) to the left60 // to move it offscreen left:61 for (int positionCounter = 0; positionCounter < 13; positionCounter++) {62 // scroll one position left:63 lcd.scrollDisplayLeft();64 // wait a bit:65 delay(150);66 }6768 // scroll 29 positions (string length + display length) to the right69 // to move it offscreen right:70 for (int positionCounter = 0; positionCounter < 29; positionCounter++) {71 // scroll one position right:72 lcd.scrollDisplayRight();73 // wait a bit:74 delay(150);75 }7677 // scroll 16 positions (display length + string length) to the left78 // to move it back to center:79 for (int positionCounter = 0; positionCounter < 16; positionCounter++) {80 // scroll one position left:81 lcd.scrollDisplayLeft();82 // wait a bit:83 delay(150);84 }8586 // delay at the end of the full loop:87 delay(1000);8889}

Serial to Display Example

This example sketch accepts serial input from a host computer and displays it on the LCD. To use it, upload the sketch, then open the Serial Monitor and type some characters and click Send. The text will appear on your LCD.

1/*2 LiquidCrystal Library – Serial Input34 Demonstrates the use a 16×2 LCD display. The LiquidCrystal5 library works with all LCD displays that are compatible with the6 Hitachi HD44780 driver. There are many of them out there, and you7 can usually tell them by the 16-pin interface.89 This sketch displays text sent over the serial port10 (e.g. from the Serial Monitor) on an attached LCD.1112 The circuit:13 * LCD RS pin to digital pin 1214 * LCD Enable pin to digital pin 1115 * LCD D4 pin to digital pin 516 * LCD D5 pin to digital pin 417 * LCD D6 pin to digital pin 318 * LCD D7 pin to digital pin 219 * LCD R/W pin to ground20 * 10K resistor:21 * ends to +5V and ground22 * wiper to LCD VO pin (pin 3)2324 Library originally added 18 Apr 200825 by David A. Mellis26 library modified 5 Jul 200927 by Limor Fried (http://www.ladyada.net)28 example added 9 Jul 200929 by Tom Igoe30 modified 22 Nov 201031 by Tom Igoe32 modified 7 Nov 201633 by Arturo Guadalupi3435 This example code is in the public domain.3637 http://www.arduino.cc/en/Tutorial/LiquidCrystalSerialDisplay3839*/4041// include the library code:42#include 4344// initialize the library by associating any needed LCD interface pin45// with the arduino pin number it is connected to46const int rs = 12, en = 11, d4 = 5, d5 = 4, d6 = 3, d7 = 2;47LiquidCrystal lcd(rs, en, d4, d5, d6, d7);4849void setup() {50 // set up the LCD’s number of columns and rows:51 lcd.begin(16, 2);52 // initialize the serial communications:53 Serial.begin(9600);54}5556void loop() {57 // when characters arrive over the serial port…58 if (Serial.available()) {59 // wait a bit for the entire message to arrive60 delay(100);61 // clear the screen62 lcd.clear();63 // read all the available characters64 while (Serial.available() > 0) {65 // display each character to the LCD66 lcd.write(Serial.read());67 }68 }69}

Set Cursor Example

This example sketch shows how to use the

method to reposition the cursor. To move the cursor, just call

setCursor()

with a row and column position. For example, for a 2×16 display:

setCursor()

1lcd.setCursor(0, 0); // top left2lcd.setCursor(15, 0); // top right3lcd.setCursor(0, 1); // bottom left4lcd.setCursor(15, 1); // bottom right

Here is the full example:

1/*23 LiquidCrystal Library – setCursor45 Demonstrates the use a 16×2 LCD display. The LiquidCrystal67 library works with all LCD displays that are compatible with the89 Hitachi HD44780 driver. There are many of them out there, and you1011 can usually tell them by the 16-pin interface.1213 This sketch prints to all the positions of the LCD using the1415 setCursor() method:1617 The circuit:1819 * LCD RS pin to digital pin 122021 * LCD Enable pin to digital pin 112223 * LCD D4 pin to digital pin 52425 * LCD D5 pin to digital pin 42627 * LCD D6 pin to digital pin 32829 * LCD D7 pin to digital pin 23031 * LCD R/W pin to ground3233 * 10K resistor:3435 * ends to +5V and ground3637 * wiper to LCD VO pin (pin 3)3839 Library originally added 18 Apr 20084041 by David A. Mellis4243 library modified 5 Jul 20094445 by Limor Fried (http://www.ladyada.net)4647 example added 9 Jul 20094849 by Tom Igoe5051 modified 22 Nov 20105253 by Tom Igoe5455 modified 7 Nov 20165657 by Arturo Guadalupi5859 This example code is in the public domain.6061 http://www.arduino.cc/en/Tutorial/LiquidCrystalSetCursor6263*/6465// include the library code:66#include 6768// initialize the library by associating any needed LCD interface pin69// with the arduino pin number it is connected to7071const int rs = 12, en = 11, d4 = 5, d5 = 4, d6 = 3, d7 = 2;7273LiquidCrystal lcd(rs, en, d4, d5, d6, d7);7475// these constants won’t change. But you can change the size of76// your LCD using them:7778const int numRows = 2;7980const int numCols = 16;8182void setup() {8384 // set up the LCD’s number of columns and rows:8586 lcd.begin(numCols, numRows);87}8889void loop() {9091 // loop from ASCII ‘a’ to ASCII ‘z’:9293 for (int thisLetter = ‘a’; thisLetter <= ‘z’; thisLetter++) {9495 // loop over the columns:9697 for (int thisRow = 0; thisRow < numRows; thisRow++) {9899 // loop over the rows:100101 for (int thisCol = 0; thisCol < numCols; thisCol++) {102103 // set the cursor position:104105 lcd.setCursor(thisCol, thisRow);106107 // print the letter:108109 lcd.write(thisLetter);110111 delay(200);112113 }114115 }116117 }118}

Text Direction Example

This example sketch shows how to use the

and

leftToRight()

methods. These methods control which way text flows from the cursor.

rightToLeft()

  • causes text to flow to the left from the cursor, as if the display is right-justified.


    rightToLeft()

  • causes text to flow to the right from the cursor, as if the display is left-justified.


    leftToRight()

This sketch prints

through

right to left, then

through

left to right, then

through

right to left again.

1/*23 LiquidCrystal Library – TextDirection45 Demonstrates the use a 16×2 LCD display. The LiquidCrystal67 library works with all LCD displays that are compatible with the89 Hitachi HD44780 driver. There are many of them out there, and you1011 can usually tell them by the 16-pin interface.1213 This sketch demonstrates how to use leftToRight() and rightToLeft()1415 to move the cursor.1617 The circuit:1819 * LCD RS pin to digital pin 122021 * LCD Enable pin to digital pin 112223 * LCD D4 pin to digital pin 52425 * LCD D5 pin to digital pin 42627 * LCD D6 pin to digital pin 32829 * LCD D7 pin to digital pin 23031 * LCD R/W pin to ground3233 * 10K resistor:3435 * ends to +5V and ground3637 * wiper to LCD VO pin (pin 3)3839 Library originally added 18 Apr 20084041 by David A. Mellis4243 library modified 5 Jul 20094445 by Limor Fried (http://www.ladyada.net)4647 example added 9 Jul 20094849 by Tom Igoe5051 modified 22 Nov 20105253 by Tom Igoe5455 modified 7 Nov 20165657 by Arturo Guadalupi5859 This example code is in the public domain.6061 http://www.arduino.cc/en/Tutorial/LiquidCrystalTextDirection6263*/6465// include the library code:66#include 6768// initialize the library by associating any needed LCD interface pin69// with the arduino pin number it is connected to7071const int rs = 12, en = 11, d4 = 5, d5 = 4, d6 = 3, d7 = 2;7273LiquidCrystal lcd(rs, en, d4, d5, d6, d7);7475int thisChar = ‘a’;7677void setup() {7879 // set up the LCD’s number of columns and rows:8081 lcd.begin(16, 2);8283 // turn on the cursor:8485 lcd.cursor();86}8788void loop() {8990 // reverse directions at ‘m’:9192 if (thisChar == ‘m’) {9394 // go right for the next letter9596 lcd.rightToLeft();9798 }99100 // reverse again at ‘s’:101102 if (thisChar == ‘s’) {103104 // go left for the next letter105106 lcd.leftToRight();107108 }109110 // reset at ‘z’:111112 if (thisChar > ‘z’) {113114 // go to (0,0):115116 lcd.home();117118 // start again at 0119120 thisChar = ‘a’;121122 }123124 // print the character125126 lcd.write(thisChar);127128 // wait a second:129130 delay(1000);131132 // increment the letter:133134 thisChar++;135}

Custom Character

This example demonstrates how to add custom characters on an LCD display.

Note that this example requires an additional potentiometer:

  • Outer pins connected to 5V and GND.
  • Inner pin (wiper) connected to A0.

This potentiometer controls the

variable.

delayTime

1/*2 LiquidCrystal Library – Custom Characters34 Demonstrates how to add custom characters on an LCD display.5 The LiquidCrystal library works with all LCD displays that are6 compatible with the Hitachi HD44780 driver. There are many of7 them out there, and you can usually tell them by the 16-pin interface.89 This sketch prints “I

Arduino!” and a little dancing man10 to the LCD.1112 The circuit:13 * LCD RS pin to digital pin 1214 * LCD Enable pin to digital pin 1115 * LCD D4 pin to digital pin 516 * LCD D5 pin to digital pin 417 * LCD D6 pin to digital pin 318 * LCD D7 pin to digital pin 219 * LCD R/W pin to ground20 * 10K potentiometer:21 * ends to +5V and ground22 * wiper to LCD VO pin (pin 3)23 * 10K poterntiometer on pin A02425 created 21 Mar 201126 by Tom Igoe27 modified 11 Nov 201328 by Scott Fitzgerald29 modified 7 Nov 201630 by Arturo Guadalupi3132 Based on Adafruit’s example at33 https://github.com/adafruit/SPI_VFD/blob/master/examples/createChar/createChar.pde3435 This example code is in the public domain.36 https://docs.arduino.cc/learn/electronics/lcd-displays#custom-character3738 Also useful:39 http://icontexto.com/charactercreator/4041*/4243// include the library code:44#include 4546// initialize the library by associating any needed LCD interface pin47// with the arduino pin number it is connected to48const int rs = 12, en = 11, d4 = 5, d5 = 4, d6 = 3, d7 = 2;49LiquidCrystal lcd(rs, en, d4, d5, d6, d7);5051// make some custom characters:52byte heart[8] = {53 0b00000,54 0b01010,55 0b11111,56 0b11111,57 0b11111,58 0b01110,59 0b00100,60 0b0000061};6263byte smiley[8] = {64 0b00000,65 0b00000,66 0b01010,67 0b00000,68 0b00000,69 0b10001,70 0b01110,71 0b0000072};7374byte frownie[8] = {75 0b00000,76 0b00000,77 0b01010,78 0b00000,79 0b00000,80 0b00000,81 0b01110,82 0b1000183};8485byte armsDown[8] = {86 0b00100,87 0b01010,88 0b00100,89 0b00100,90 0b01110,91 0b10101,92 0b00100,93 0b0101094};9596byte armsUp[8] = {97 0b00100,98 0b01010,99 0b00100,100 0b10101,101 0b01110,102 0b00100,103 0b00100,104 0b01010105};106107void setup() {108 // initialize LCD and set up the number of columns and rows:109 lcd.begin(16, 2);110111 // create a new character112 lcd.createChar(0, heart);113 // create a new character114 lcd.createChar(1, smiley);115 // create a new character116 lcd.createChar(2, frownie);117 // create a new character118 lcd.createChar(3, armsDown);119 // create a new character120 lcd.createChar(4, armsUp);121122 // set the cursor to the top left123 lcd.setCursor(0, 0);124125 // Print a message to the lcd.126 lcd.print(“I “);127 lcd.write(byte(0)); // when calling lcd.write() ‘0’ must be cast as a byte128 lcd.print(” Arduino! “);129 lcd.write((byte)1);130131}132133void loop() {134 // read the potentiometer on A0:135 int sensorReading = analogRead(A0);136 // map the result to 200 – 1000:137 int delayTime = map(sensorReading, 0, 1023, 200, 1000);138 // set the cursor to the bottom row, 5th position:139 lcd.setCursor(4, 1);140 // draw the little man, arms down:141 lcd.write(3);142 delay(delayTime);143 lcd.setCursor(4, 1);144 // draw him arms up:145 lcd.write(4);146 delay(delayTime);147}

Suggested changes

The content on docs.arduino.cc is facilitated through a public GitHub repository. You can read more on how to contribute in the contribution policy.

License

The Arduino documentation is licensed under the Creative Commons Attribution-Share Alike 4.0 license.

Hướng dẫn kiểm tra màn hình LCD Arduino

Tiếp theo của bài viết mình sẽ hướng cho các bạn cách thực hiện bước kiểm tra màn hình LCD 16×2 với các bước sau:

Bước 1: Kết nối chân nguồn

  • Kết nối chân 5V của Arduino với đường nguồn dương (+) trên breadboard.
  • Kết nối chân GND của Arduino với đường nguồn âm (-) trên breadboard.
  • Cắm màn hình LCD vào breadboard.

Bước 2: Kết nối nguồn cho LCD

  • Kết nối chân 1 và 16 của LCD 16×2 với đường nguồn âm (-) trên breadboard.
  • Kết nối chân 2 và 15 của LCD 16×2 với đường nguồn dương (+) trên breadboard.

Bước 3: Thêm điện trở hạn dòng cho đèn nền (nếu cần)

  • Nếu màn hình LCD 1602 có điện trở hạn dòng cho đèn nền, hãy kiểm tra mặt sau của màn hình gần chân 15.
  • Nếu không có điện trở, hoặc các bạn không chắc chắn, hãy thêm một điện trở 220 ohm giữa chân 15 và đường nguồn dương (+).

Bước 4: Kết nối biến trở để điều chỉnh độ tương phản:

  • Kết nối một bên của biến trở 10K vào đường nguồn dương (+) trên breadboard.
  • Kết nối bên còn lại của biến trở vào đường nguồn âm (-) trên breadboard.
  • Kết nối nối giữa chân wiper của biến trở với chân 3 của màn hình LCD 16×2.

Bước 5: Bật Arduino và kiểm tra:

  • Bật Arduino để cấp nguồn cho màn hình LCD arduino.
  • Bạn sẽ thấy đèn nền của màn hình sáng lên.
  • Xoay núm biến trở, bạn sẽ thấy các hình chữ nhật đầu tiên xuất hiện.
  • Nếu bạn đã làm theo các bước trên và màn hình LCD hiển thị đúng, chúc mừng! Màn hình LCD 1602 của bạn hoạt động bình thường.
Giao Tiếp I2C Với LCD 16x2 Bằng Arduino Uno R3 | Điện tử DAT
Giao Tiếp I2C Với LCD 16×2 Bằng Arduino Uno R3 | Điện tử DAT

Giao tiếp I2C LCD Arduino

Module I2C LCD 16×2 Arduino UNO
GND GND
VCC 5V
SDA A4/SDA
SCL A5/SCL

Sơ đồ đấu nối

Các linh kiện cần thiết cho dự án:

Tên linh kiện Số lượng Shopee
Arduino UNO R3 Mua ngay
Dây cáp nạp Mua ngay
Màn hình LCD 16×2 Mua ngay
Module I2C LCD 16×2 Mua ngay
Dây cắm (Đực – Cái) Mua ngay

Bạn sẽ học được gì

  • Có kiến thức cơ bản về Robotics
  • Chế tạo Robot dò đường thông minh
  • Đánh thức nhà khoa học bên trong bạn
  • Tìm hiểu thêm về Robotics, các thuật toán Robot tự động
  • Kiến thức nền tảng để chế tạo các máy móc tự động phục vụ đời sống sinh hoạt, lao động sản xuất
  • Kiến thức để chế tạo sản phẩm, tham gia các cuộc thi khoa học công nghệ trong nước và quốc tế

Module I2C Arduino

LCD có quá nhiều nhiều chân gây khó khăn trong quá trình đấu nối và chiếm dụng nhiều chân trên vi điều khiển.

Module I2C LCD ra đời và giải quyết vấn để này cho bạn.

Thay vì phải mất 6 chân vi điều khiển để kết nối với LCD 16×2 (RS, EN, D7, D6, D5 và D4) thì module IC2 bạn chỉ cần tốn 2 chân (SCL, SDA) để kết nối.

Module I2C hỗ trợ các loại LCD sử dụng driver HD44780(LCD 16×2, LCD 20×4, …) và tương thích với hầu hết các vi điều khiển hiện nay.

Ưu điểm

  • Tiết kiệm chân cho vi điều khiển.
  • Dễ dàng kết nối với LCD.

Thông số kĩ thuật

  • Điện áp hoạt động: 2.5-6V DC.
  • Hỗ trợ màn hình: LCD1602,1604,2004 (driver HD44780).
  • Giao tiếp: I2C.
  • Địa chỉ mặc định: 0X27 (có thể điều chỉnh bằng ngắn mạch chân A0/A1/A2).
  • Tích hợp Jump chốt để cung cấp đèn cho LCD hoặc ngắt.
  • Tích hợp biến trở xoay điều chỉnh độ tương phản cho LCD.

Để sử dụng màn hình LCD giao tiếp I2C sử dụng Arduino thì ta cần cài đặt thư viện Liquidcrystal_I2C. Tại đây

How to Use I2C LCD with Arduino | Very Easy Arduino LCD I2C Tutorial | Arduino 16x2 LCD I2C Tutorial
How to Use I2C LCD with Arduino | Very Easy Arduino LCD I2C Tutorial | Arduino 16×2 LCD I2C Tutorial

Linh kiện cần thiết làm mạch hiển thị thông tin lên màn hình LCD1602 giao tiếp Arduino

1.1 Vi điều khiển Arduino trong mạch hiển thị thông tin lên màn hình LCD1602 giao tiếp Arduino

Giới thiệu LCD1602 giao tiếp Arduino

Arduino Uno R3 (Dip) có 14 chân digital dùng để đọc hoặc xuất tín hiệu. Chúng chỉ có 2 mức điện áp là 0V và 5V với dòng vào/ra tối đa trên mỗi chân là 40mA. Ở mỗi chân đều có các điện trở pull-up từ được cài đặt ngay trong vi điều khiển ATmega328 (mặc định thì các điện trở này không được kết nối).

Các chức năng khác

Arduino Uno R3 là một bảng mạch vi điều khiển nguồn mở dựa trên vi điều khiển Microchip ATmega328 được phát triển bởi Arduino.cc. Bảng mạch được trang bị các bộ chân đầu vào/ đầu ra Digital và Analog có thể giao tiếp với các bảng mạch mở rộng khác nhau. Mạch Arduino Uno thích hợp cho những bạn mới tiếp cận và đam mê về điện tử, lập trình…Dựa trên nền tảng mở do Arduino.cc cung cấp các bạn dễ dàng xây dựng cho mình một dự án nhanh nhất ( lập trình Robot, xe tự hành, điều khiển bật tắt led…).

Chức năng của Arduino R3:
  • 2 chân Serial: 0 (RX) và 1 (TX): dùng để gửi (transmit – TX) và nhận (receive – RX) dữ liệu TTL Serial. Arduino Uno có thể giao tiếp với thiết bị khác thông qua 2 chân này. Kết nối bluetooth thường thấy nói nôm na chính là kết nối Serial không dây. Nếu không cần giao tiếp Serial, bạn không nên sử dụng 2 chân này nếu không cần thiết
  • Chân PWM (~): 3, 5, 6, 9, 10, và 11: cho phép bạn xuất ra xung PWM với độ phân giải 8bit (giá trị từ 0 → 28-1 tương ứng với 0V → 5V) bằng hàm analogWrite(). Nói một cách đơn giản, bạn có thể điều chỉnh được điện áp ra ở chân này từ mức 0V đến 5V thay vì chỉ cố định ở mức 0V và 5V như những chân khác.
Các chức năng khác
  • Chân giao tiếp SPI: 10 (SS), 11 (MOSI), 12 (MISO), 13 (SCK). Ngoài các chức năng thông thường, 4 chân này còn dùng để truyền phát dữ liệu bằng giao thức SPI với các thiết bị khác.
  • LED 13: trên Arduino UNO có 1 đèn led màu cam (kí hiệu chữ L). Khi bấm nút Reset, bạn sẽ thấy đèn này nhấp nháy để báo hiệu. Nó được nối với chân số 13. Khi chân này được người dùng sử dụng, LED sẽ sáng.
  • Arduino Uno R3 có 6 chân analog (A0 → A5) cung cấp độ phân giải tín hiệu 10bit (0 → 210-1) để đọc giá trị điện áp trong khoảng 0V → 5V. Với chân AREF trên board, bạn có thể để đưa vào điện áp tham chiếu khi sử dụng các chân analog. Tức là nếu bạn cấp điện áp 2.5V vào chân này thì bạn có thể dùng các chân analog để đo điện áp trong khoảng từ 0V → 2.5V với độ phân giải vẫn là 10bit. Đặc biệt, Arduino UNO có 2 chân A4 (SDA) và A5 (SCL) hỗ trợ giao tiếp I2C/TWI với các thiết bị khác.
c.Thông số kỹ thuật Arduino Uno R3 (Dip)
Datasheets Atmega328
Standard Package 27
Category Integrated Circuits (ICs)
Family Embedded – Atmel
Series Atmega
Packaging Tube
Core Processor AVR
Core Size 8-Bit
Speed 16MHz
Connectivity I²C, SPI, UART / USART, USB
Peripherals Brown-out Detec t/ Reset, HLVD, POR, PWM, WDT
Number of I /O 14
Program Memory Size 32KB
Program Memory Type FLASH
EEPROM Size 1KB
RAM Size 2K
Voltage – Supply (Vcc/Vdd) 4.2 V ~ 5.5 V
Data Converters A/D 6 x 10bit
Oscillator Type Internal
Operating Temperature -40°C ~ 85°C
Package / Case 28-SOIC (0.295″, 7.50mm Width)
Other Names Atmega328
Power
  • LED: Có 1 LED được tích hợp trên bảng mạch và được nối vào chân D13. Khi chân có giá trị mức cao (HIGH) thì LED sẽ sáng và LED tắt khi ở mức thấp (LOW).
  • VIN: Chân này dùng để cấp nguồn ngoài (điện áp cấp từ 7-12VDC).
  • 5V: Điện áp ra 5V (dòng điện trên mỗi chân này tối đa là 500mA).
  • 3V3: Điện áp ra 3.3V (dòng điện trên mỗi chân này tối đa là 50mA).
  • GND: Là chân mang điện cực âm trên board.
  • IOREF: Điệp áp hoạt động của vi điều khiển trên Arduino UNO và có thể đọc điện áp trên chân IOREF. Chân IOREF không dùng để làm chân cấp nguồn.
e.Bộ nhớ

Vi điều khiển ATmega328:

  • 32 KB bộ nhớ Plash: trong đó bootloader chiếm 0.5KB.
  • 2 KB cho SRAM: (Static Random Access Menory): giá trị các biến khai báo sẽ được lưu ở đây. Khai báo càng nhiều biến thì càng tốn nhiều bộ nhớ RAM. Khi mất nguồn dữ liệu trên SRAM sẽ bị mất.
  • 1 KB cho EEPROM: (Electrically Eraseble Programmable Read Only Memory): Là nơi có thể đọc và ghi dữ liệu vào đây và không bị mất dữ liệu khi mất nguồn.
Các chân đầu vào và đầu ra

Trên Board Arduino Uno có 14 chân Digital được sử dụng để làm chân đầu vào và đầu ra và chúng sử dụng các hàm pinMode(), digitalWrite(), digitalRead(). Giá trị điện áp trên mỗi chân là 5V, dòng trên mỗi chân là 20mA và bên trong có điện trở kéo lên là 20-50 ohm. Dòng tối đa trên mỗi chân I/O không vượt quá 40mA để tránh trường hợp gây hỏng board mạch. Ngoài ra, một số chân Digital có chức năng đặt biệt:

  • Serial: 0 (RX) và 1 (TX): Được sử dụng để nhận dữ liệu (RX) và truyền dữ liệu (TX) TTL.
  • Ngắt ngoài: Chân 2 và 3.
  • PWM: 3, 5, 6, 9 và 11 Cung cấp đầu ra xung PWM với độ phân giải 8 bit bằng hàm analogWrite ().
  • SPI: 10 (SS), 11 (MOSI), 12 (MISO), 13 (SCK). Các chân này hỗ trợ giao tiếp SPI bằng thư viện SPI.
  • LED: Có 1 LED được tích hợp trên bảng mạch và được nối vào chân D13. Khi chân có giá trị mức cao (HIGH) thì LED sẽ sáng và LED tắt khi ở mức thấp (LOW).
  • TWI/I2C: A4 (SDA) và A5 (SCL) hỗ trợ giao tiếp I2C/TWI với các thiết bị khác.

1.2 LCD1602 cho đề tài mạch hiển thị thông tin lên màn hình LCD1602 giao tiếp Arduino

Giới thiệu
Thông số kỹ thuật
  • Điện áp hoạt động là 5 V.
  • Kích thước: 80 x 36 x 12.5 mm
  • Chữ đen, nền xanh lá
  • Khoảng cách giữa hai chân kết nối là 0.1 inch tiện dụng khi kết nối với Breadboard.
  • Tên các chân được ghi ở mặt sau của màn hình LCD hổ trợ việc kết nối, đi dây điện.
  • Có đèn led nền, có thể dùng biến trở hoặc PWM điều chình độ sáng để sử dụng ít điện năng hơn.
  • Có thể được điều khiển với 6 dây tín hiệu
  • Có bộ ký tự được xây dựng hổ trợ tiếng Anh và tiếng Nhật, xem thêm HD44780 datasheet để biết thêm chi tiết.
Sơ đồ chân LCD 16×2
Số chân Ký hiệu chân Mô tả chân
Vss Cấp điện 0v
Vcc Cấp điện 5v
V0 Chỉnh độ tương phản
RS Lựa chọn thanh ghi địa chỉ hay dữ liệu
RW Lựa chọn thanh ghi Đọc hay Viết
EN Cho phép xuất dữ liệu
D0 Đường truyền dữ liệu 0
D1 Đường truyền dữ liệu 1
D2 Đường truyền dữ liệu 2
10 D3 Đường truyền dữ liệu 3
11 D4 Đường truyền dữ liệu 4
12 D5 Đường truyền dữ liệu 5
13 D6 Đường truyền dữ liệu 6
14 D7 Đường truyền dữ liệu 7
15 Chân dương đèn màn hình
16 Chân âm đèn màn hình
  • Các chân cấp nguồn: Chân số 1 là chân nối mass (0V), chân thứ 2 là Vdd nối với nguồn+5V. Chân thứ 3 dùng để chỉnh contrast thường nối với biến trở.
  • Các chân điều khiển: Chân số 4 là chân RS dùng để điều khiển lựa chọn thanh ghi. ChânR/W dùng để điều khiển quá trình đọc và ghi. Chân E là chân cho phép dạng xung chốt.
  • Các chân dữ liệu D7÷D0: Chân số 7 đến chân số 14 là 8 chân dùng để trao đổi dữ liệu giữa thiết bị điều khiển và LCD.
Địa chỉ ba vùng nhớ
  • Bộ điều khiển LCD có ba vùng nhớ nội, mỗi vùng có chức năng riêng. Bộ điều khiển phải khởi động trước khi truy cập bất kỳ vùng nhớ nào. a. Bộ nhớ DDRAM
  • Bộ nhớ chứa dữ liệu để hiển thị (Display Data RAM: DDRAM) lưu trữ những mã ký tự để hiển thị lên màn hình. Mã ký tự lưu trữ trong vùng DDRAM sẽ tham chiếu với từng bitmap kí tự được lưu trữ trong CGROM đã được định nghĩa trước hoặc đặt trong vùng do người sử dụng định nghĩa. b. Bộ phát kí tự ROM – CGROM
  • Bộ phát kí tự ROM (Character Generator ROM: CGROM) chứa các kiểu bitmap cho mỗi kí tự được định nghĩa trước mà LCD có thể hiển thị, như được trình bày bảng mã ASCII. Mã kí tự lưu trong DDRAM cho mỗi vùng kí tự sẽ được tham chiếu đến một vị trí trong CGROM. Ví dụ: mã kí tự số hex 0x53 lưu trong DDRAM được chuyển sang dạng nhị phân 4 bit cao là DB[7:4] = “0101” và 4 bit thấp là DB[3:0] = “0011” chính là kí tự chữ ‘S’ sẽ hiển thị trên màn hình LCD. c. Bộ phát kí tự RAM – CGRAM
  • Bộ phát kí tự RAM (Character Generator RAM: CG RAM) cung cấp vùng nhớ để tạo ra 8 kí tự tùy ý. Mỗi kí tự gồm 5 cột và 8 hàng.
Các lệnh điều khiển của LCD
  • Lệnh thiết lập chức năng giao tiếp “Function set”:

    • Bit DL (data length) = 1 thì cho phép giao tiếp 8 đường data D7 ÷ D0, nếu bằng 0 thì cho phép giao tiếp 4 đường D7 ÷ D4.
    • Bit N (number of line) = 1 thì cho phép hiển thị 2 hàng, nếu bằng 0 thì cho phép hiển thị 1 hàng.
    • Bit F (font) = 1 thì cho phép hiển thị với ma trận 5×8, nếu bằng 0 thì cho phép hiển thị với ma trận 5×11.
    • Các bit cao còn lại là hằng số không đổi.
  • Lệnh xoá màn hình “Clear Display”: khi thực hiện lệnh này thì LCD sẽ bị xoá và bộ đếm địa chỉ được xoá về 0.
  • Lệnh di chuyển con trỏ về đầu màn hình “Cursor Home”: khi thực hiện lệnh này thì bộ đếm địa chỉ được xoá về 0, phần hiển thị trở về vị trí gốc đã bị dịch trước đó. Nội dung bộ nhớ RAM hiển thị DDRAM không bị thay đổi.
  • Lệnh thiết lập lối vào “Entry mode set”: lệnh này dùng để thiết lập lối vào cho các kí tự hiển thị,

    • Bit I/D = 1 thì con trỏ tự động tăng lên 1 mỗi khi có 1 byte dữ liệu ghi vào bộ hiển thị, khi I/D = 0 thì con trỏ sẽ tự động giảm đi 1 mỗi khi có 1 byte dữ liệu ghi vào bộ hiển thị.
    • Bit S = 1 thì cho phép dịch chuyển dữ liệu mỗi khi nhận 1 byte hiển thị.
  • Lệnh điều khiển con trỏ hiển thị “Display Control”:
    • Bit D: cho phép LCD hiển thị thì D = 1, không cho hiển thị thì bit D = 0.
    • Bit C: cho phép con trỏ hiển thị thì C= 1, không cho hiển thị con trỏ thì bit C = 0.
    • Bit B: cho phép con trỏ nhấp nháy thì B= 1, không cho con trỏ nhấp nháy thì bit B = 0.
    • Với các bit như trên thì để hiển thị phải cho D = 1, 2 bit còn lại thì tùy chọn, trong thư viện thì cho 2 bit đều bằng 0, không cho phép mở con trỏ và nhấp nháy, nếu bạn không thích thì hiệu chỉnh lại.
  • Lệnh di chuyển con trỏ “Cursor /Display Shift”: lệnh này dùng để điều khiển di chuyển con trỏ hiển thị dịch chuyển

    • Bit SC: SC = 1 cho phép dịch chuyển, SC = 0 thì không cho phép.
    • Bit RL xác định hướng dịch chuyển: RL = 1 thì dịch phải, RL = 0 thì dịch trái. Nội dung bộ nhớ DDRAM vẫn không đổi.
    • Vậy khi cho phép dịch thì có 2 tùy chọn: dịch trái và dịch phải.
  • Lệnh thiết lập địa chỉ cho bộ nhớ RAM phát kí tự “Set CGRAM Addr”: lệnh này dùng để thiết lập địa chỉ cho bộ nhớ RAM phát kí tự.
  • Lệnh thiết lập địa chỉ cho bộ nhớ RAM hiển thị “Set DDRAM Addr”: lệnh này dùng để thiết lập địa chỉ cho bộ nhớ RAM lưu trữ các dữ liệu hiển thị.
  • Hai lệnh cuối cùng là lệnh đọc và lệnh ghi dữ liệu LCD.
Bảng mã ASCII sử dụng cho LCD
Bảng địa chỉ cho LCD

Code mẫu

#include

#include LiquidCrystal_I2C lcd(0x3F,16,2); void setup() { lcd.init(); lcd.backlight(); lcd.setCursor(2,0); lcd.print(“Arduinokit.vn”); lcd.setCursor(0,1); lcd.print(“Xin chao cac ban”); } void loop() { }

Giải thích code

LiquidCrystal_I2C lcd(0x3F,16,2);

  • Đặt địa chỉ LCD là 0x3F cho màn hình LCD 16×2.
  • 16 là số cột của màn hình (nếu dùng loại màn hình 20×4) thì thay bằng 20.
  • 2 là số dòng của màn hình (nếu dùng loại màn hình 20×4) thì thay bằng 4.

lcd.init();

Khởi động màn hình LCD, bắt đầu cho phép Arduino sử dụng màn hình.

lcd.backlight();

Bật đèn nền LCD 16×2.

lcd.setCursor(2,0);

Đưa con trỏ tới hàng 1, cột 3.

Lưu ý: giá trị hàng và cột bắt đầu từ số 0 có nghĩa 0 là hàng(cột) 1.

lcd.print(“Arduinokit.vn”);

Xuất ra dòng chữ Arduinokit.vn tại vị trí con trỏ ở hàng 1, cột 3.

lcd.setCursor(0,1); lcd.print(“Xin chao cac ban”);

Đoạn code này thì tương tự như trên, xuất ra dòng chữ “Xin chao cac ban” tại vị trí con trỏ ở hàng 2, cột 1.

Bây giờ thì các bạn upload chương trình và xem kết quả nhé.

Cách Tạo Chế Độ Nghỉ Trên Màn Hình LCD 16X2 Với Arduino Uno R3 | Điện tử DAT
Cách Tạo Chế Độ Nghỉ Trên Màn Hình LCD 16X2 Với Arduino Uno R3 | Điện tử DAT

Code màn hình LCD 16×2 Arduino

// include the library code: #include // Creates an LCD object. Parameters: (rs, enable, d4, d5, d6, d7) LiquidCrystal lcd(12, 11, 5, 4, 3, 2); void setup() { // set up the LCD’s number of columns and rows: lcd.begin(16, 2); // Clears the LCD screen lcd.clear(); } void loop() { // Print a message to the LCD. lcd.print(” Hello world!”); // set the cursor to column 0, line 1 // (note: line 1 is the second row, since counting begins with 0): lcd.setCursor(0, 1); // Print a message to the LCD. lcd.print(” LCD Tutorial”); }

Giải thích code

// include the library code: #include

Khai báo để sử dụng thư viện LiquidCrystal, cho phép tương tác với màn hình LCD 16×2.

// Creates an LCD object. Parameters: (rs, enable, d4, d5, d6, d7) LiquidCrystal lcd(12, 11, 5, 4, 3, 2);


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

khởi tạo đối tượng lcd từ lớp LiquidCrystal. Các tham số truyền vào định nghĩa các chân kết nối giữa Arduino và màn hình LCD. Cụ thể, chân RS (Register Select) của LCD được kết nối với chân 12 của Arduino, chân Enable được kết nối với chân 11, các chân dữ liệu D4 đến D7 được kết nối tương ứng với chân 5, 4, 3, 2 của Arduino.

// set up the LCD’s number of columns and rows: lcd.begin(16, 2); // Clears the LCD screen lcd.clear();


lcd.begin(16, 2);

Thiết lập số cột và số hàng của màn hình LCD 16×2. Trong trường hợp này, màn hình LCD có 16 cột và 2 hàng.


lcd.clear();

Xóa nội dung trên màn hình LCD Arduino.

// Print a message to the LCD. lcd.print(” Hello world!”);


lcd.print(" Hello world!");

Hiển thị chuỗi “Hello world!” lên màn hình LCD 1602. Chuỗi này sẽ được hiển thị trên dòng 0 (hàng đầu tiên) và từ cột 0 trở đi.

// set the cursor to column 0, line 1 // (note: line 1 is the second row, since counting begins with 0): lcd.setCursor(0, 1);


lcd.setCursor(0, 1);

Đặt vị trí con trỏ của LCD 16×2 tới cột 0, dòng 1 (hàng thứ hai).

Cụ thể hoạt động của mạch hiển thị thông tin lên màn hình LCD1602 giao tiếp Arduino

Ngoài ra còn nhiều Phần và các môn khác

Đồ án điện tử, Lập trình vi điều khiển tổng hợp File đồ án – Phần 1 Mạch điện tử, Lập trình vi điều khiển tổng hợp File đồ án – Phần 2 Thiết kế mạch điện tử, Lập trình vi điều khiển tổng hợp File đồ án – Phần 3 Vi xử lý, Lập trình vi điều khiển Pic – 8051 – Avr – Phần 4 Tổng hợp File ĐỒ ÁN Điện tử cơ bản Tổng hợp File ĐỒ ÁN Viễn thông Tổng hợp File ĐỒ ÁN PLC Tổng hợp File ĐỒ ÁN Cung cấp điện

Chúc các bạn thành công…!!!

Tổng quan LCD 16×2 và giao tiếp I2C LCD sử dụng Arduino

Arduino | Hướng dẫn sử dụng chi tiết LCD
Arduino | Hướng dẫn sử dụng chi tiết LCD

Linh kiện cần thiết cho dự án

TÊN LINH KIỆN SỐ LƯỢNG NƠI BÁN
Arduino Uno R3 Shopee | Cytron
Màn hình LCD 16×2 Shopee | Cytron
Biến trở vuông 10K Shopee | Cytron
Điện trở 220R Shopee | Cytron
Dây cắm 10-20 Shopee | Cytron
Breadboard Shopee | Cytron

Circuit

Note that this circuit was originally designed for the Arduino UNO. As the Arduino is communicating with the display using SPI, pin 11 & 12 will change depending on what board you are using. For example, on a MKR WiFi 1010, the SPI bus is attached to pin 8 & 11.

Before wiring the LCD screen to your Arduino board we suggest to solder a pin header strip to the 14 (or 16) pin count connector of the LCD screen, as you can see in the image further up.

To wire your LCD screen to your board, connect the following pins:

  • LCD RS pin to digital pin 12
  • LCD Enable pin to digital pin 11
  • LCD D4 pin to digital pin 5
  • LCD D5 pin to digital pin 4
  • LCD D6 pin to digital pin 3
  • LCD D7 pin to digital pin 2
  • LCD R/W pin to GND
  • LCD VSS pin to GND
  • LCD VCC pin to 5V
  • LCD LED+ to 5V through a 220 ohm resistor
  • LCD LED- to GND

Additionally, wire a 10k potentiometer to +5V and GND, with it’s wiper (output) to LCD screens VO pin (pin3).

Connect an SPI TFT with Touchscreen to your Arduino - ILI9341 LCD with XPT2046 Touch screen
Connect an SPI TFT with Touchscreen to your Arduino – ILI9341 LCD with XPT2046 Touch screen

Các chức năng chính của thư viện LiquidCrystal

Dưới đây là một số chức năng hữu ích mà bạn có thể sử dụng với đối tượng LiquidCrystal:


  • lcd.home()

    : Định vị con trỏ ở góc trên bên trái của màn hình LCD 16×2 mà không xóa nội dung hiện tại trên màn hình.

  • lcd.blink()

    : Hiển thị một khối nhấp nháy 5×8 pixel tại vị trí mà ký tự tiếp theo sẽ được viết.

  • lcd.noBlink()

    : Tắt chế độ nhấp nháy của con trỏ trên LCD 1602.

  • lcd.cursor()

    : Hiển thị một dấu gạch dưới (dòng) tại vị trí mà ký tự tiếp theo sẽ được viết.

  • lcd.noCursor()

    : Ẩn con trỏ trên LCD Arduino.

  • lcd.scrollDisplayRight()

    : Cuộn nội dung của màn hình sang phải một khoảng trống. Nếu bạn muốn văn bản cuộn liên tục, bạn có thể sử dụng chức năng này trong một vòng lặp.

  • lcd.scrollDisplayLeft()

    : Cuộn nội dung của màn hình sang trái một khoảng trống. Tương tự như chức năng trên, bạn có thể sử dụng chức năng này trong một vòng lặp để cuộn liên tục.

  • lcd.noDisplay()

    : Tắt màn hình LCD 16×2 mà không làm mất nội dung hiện đang hiển thị trên đó.

  • lcd.display()

    : Bật màn hình LCD Arduino sau khi nó đã được tắt bằng noDisplay(). Thao tác này sẽ khôi phục hiển thị nội dung (và con trỏ) trên màn hình.
    • Tổng tiền thanh toán:
Code test cơ bản

#include

void loop()

Code Đếm số 0 đến 9 LCD 16×2 I2C

#include

void loop()

Code test cơ bản

#include

void loop()

Code Đếm số 0 đến 9 LCD 16×2 I2C

#include

void loop()

Tổng quan về màn hình LCD 16×2

Màn hình LCD 16×2 là một loại màn hình ký tự thông dụng trong các dự án điện tử. Nó có khả năng hiển thị 16 cột và 2 hàng của các ký tự.

Màn hình này sử dụng công nghệ hiển thị Liquid Crystal Display (LCD) để hiển thị thông tin. Nó có thể hiển thị các ký tự từ bảng mã ASCII và có thể hiển thị các ký tự chữ cái, chữ số, ký tự đặc biệt và các biểu tượng khác.

Màn hình LCD 16×2 có một lưới pixel 5×8 cho mỗi ký tự. Điều này có nghĩa là mỗi ký tự được hiển thị bằng một ma trận 5×8 điểm ảnh. Nó cũng có thể hiển thị các ký tự tiếng Việt nhưng có giới hạn một số ký tự đặc biệt.

Tutorial LCD 2x16 Arduino Lengkap
Tutorial LCD 2×16 Arduino Lengkap

Các lỗi thường gặp khi sử dụng I2C LCD

  • Hiển thị một dãy ô vuông.
  • Màn hình chỉ in ra một ký tự đầu.
  • Màn hình nhấp nháy.

Các lỗi này chủ yếu là do sai địa chỉ bus, để fix lỗi các bạn thay địa chỉ mặc định là “0x27” thành “0x3F.

Trong trường hợp vẫn không được các bạn fix lỗi bằng cách nạp code tìm địa chỉ bus của I2C.

Sau khi tìm xong các bạn thay địa chỉ vừa tìm được vào vị trí “0x27” là xong.

  • Các bạn có thể tải code tìm địa chỉ bus ở đây. Tải ngay.

Sơ đồ đấu nối màn hình LCD 16×2 với Arduino

Arduino Uno R3 LCD 16X2 Biến trở
5V 2, 15 Chân ngoài
GND 1, 16 Chân ngoài
D7
D6
D5
D4
11 EN
12 RS
Vo Chân giữa
🔴 Arduino #26 | Màn Hình LCD 16x2 Kết Hợp Module I2C Hiển Thị Thông Tin
🔴 Arduino #26 | Màn Hình LCD 16×2 Kết Hợp Module I2C Hiển Thị Thông Tin

Hướng dẫn sử dụng màn hình LCD 16×2 với Arduino

Trong hướng dẫn này, các bạn sẽ tìm hiểu cách sử dụng màn hình LCD 16×2 với Arduino, bằng cách sử dụng thư viện LiquidCrystal để điều khiển màn hình.

Qua đó sẽ khám phá các chức năng cơ bản của màn hình LCD 1602 như hiển thị văn bản, di chuyển con trỏ, xóa màn hình và điều chỉnh độ sáng. Bên cạnh đó, các bạn sẽ tìm hiểu cách tạo các ký tự tùy chỉnh trên màn hình LCD arduino.

Để tạo động lực cho Team Arduino KIT ra nhiều bài viết chất lượng hơn, các bạn có thể ủng hộ mình bằng cách Donate qua MoMo, Ngân hàng, Paypal…Nhấn vào link bên dưới nhé.

CHI TIẾT BÀI VIẾT

HƯỚNG DẪN CƠ BẢN ARDUINO UNO R3 KẾT NỐI I2C HIỂN THỊ THÔNG BÁO TRÊN LCD

1. Giới thiệu

Bài viết hướng dẫn các bạn cách kết nối board mạch Arduino Uno R3 kết nối với I2C và LCD và thực hiện lập trình trên Arduino để hiển thị thông báo trên màn hình LCD

2. Thiết bị phần cứng

  • Arduino Uno R3
  • Mạch điểu khiển LCD

Điện áp MAX : 7V

Điện áp MIN : – 0,3V

Hoạt động ổn định : 2.7-5.5V

Điện áp ra mức cao : > 2.4

Điện áp ra mức thấp : <0.4V

Dòng điện cấp nguồn : 350uA – 600uA

Nhiệt độ hoạt động : – 30 – 75 độ C

  • Module giao tiếp I2C

LCD có quá nhiều nhiều chân gây khó khăn trong quá trình đấu nối và chiếm dụng nhiều chân trên vi điều khiển.

Module I2C LCD ra đời và giải quyết vấn để này cho bạn.

Thay vì phải sử dụng 6 chân vi điều khiển để kết nối với LCD 16×2 (RS, EN, D7, D6, D5 và D4) thì module IC2 bạn chỉ cần tốn 2 chân (SCL, SDA) để kết nối.

Module I2C hỗ trợ các loại LCD sử dụng driver HD44780(LCD 16×2, LCD 20×4, …) và tương thích với hầu hết các vi điều khiển hiện nay.

3. Kết nối các thiết bị

4. Kết nối Arduino Uno R3 với máy tính

Kết nối cổng USB từ Arduino đến máy tính

Xác định Port Kết nối : Chuột phải vào My computer trên máy tính 🡪 manager 🡪 Device manager 🡪 check Port ( COM & LPT )

Cấu hình trên phần mềm Arduino 🡪 mở phần mềm Arduino 🡪 chọn tool 🡪 chọn Board

Ở đây mình sử Dụng Board Arduino Uno R3 🡪 chọn Arduino /Genuino Uno

Nhập code

#include

LiquidCrystal_I2C lcd(0x27,16,2);

void setup()

lcd.init();

lcd.backlight();

lcd.setCursor(4,0);

lcd.print(“ITSTARVN”);

lcd.setCursor(0,1);

lcd.print(“Xin chao cac ban”);

void loop()

Thực hiện upload code trên thiết bị Arduino

Kết quả hiển thị thông báo trên màn hình LCD

Thực hiện: Nguyễn Mạnh Cương

Table of Contents

2.4\
2.4\” TFT LCD TOUCH SCREEN SHIELD FOR ARDUINO. (Troubleshooting white screen and touch problems)

Hướng dẫn đồ án hiển thị thông tin lên màn hình LCD1602 giao tiếp Arduino

Phần này chưa được chia sẻ.

LIÊN HỆ thông tin ở TẠI ĐÂY để được hổ trợ tốt hơn.

Phần cứng

Cách 1: Hiển thị bằng cách nối trực tiếp vào Arduino
Cách 2: Hiển thị bằng cách nối qua module I2C LCD giúp tiết kiệm chân cho vi điều khiển

Phần mềm

  • Thư viện LiquidCrystal_I2C.h tải : https://github.com/HuanVo/LiquidCrystal_I2C
  • Các thư viện khác hổ trợ tải trên phần mềm Arduino IDE
Cách 1: Hiển thị bằng cách nối trực tiếp vào Arduino

Cách này có hai phương pháp là dùng : LCD1602 4bit hoặc LCD1602 8bit. Ở đây mình chỉ dùng 4bit sẽ tiết kiệm được chân IO của vi điều khiển. Bạn nào làm giao tiếp LCD1602 8bit thì liên hệ thông tin ở TẠI ĐÂY để được hổ trợ

#include // Initialize the library with 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); // Print a message to the LCD lcd.print(” Dientunhattung “); } void loop() { // set the cursor to column 0, line 1 // (line 1 is the second row, since counting begins with 0) lcd.setCursor(0, 1); // print the number of seconds since reset: lcd.print(millis()/1000); }

Cách 2: Hiển thị bằng cách nối qua module I2C LCD giúp tiết kiệm chân cho vi điều khiển

#include

#include LiquidCrystal_I2C lcd(0x3F,16,2); void setup() { lcd.init(); lcd.backlight(); lcd.setCursor(2,0); lcd.print(” Dientunhattung”); lcd.setCursor(0,1); lcd.print(“Huynh Nhat Tung “); } void loop() { }

Cách 3: Hiển thị bằng mở rộng bằng IC mở rộng chân như 74HC595, MBI5026…. giúp tiết kiệm chân cho vi điều khiển

Phần này Bạn nào làm giao tiếp mở rộng chân cho LCD thì liên hệ thông tin ở TẠI ĐÂY để được hổ trợ

Lời kết

Qua bài hôm nay các bạn biết cách làm thế nào để hiển thị các ký tự và chuỗi ký tự lên LCD 16×2 và biết cách giao tiếp I2C.

Để nhận được nhiều kiến thức mới các bạn Đăng ký để nhận được thông báo sớm nhất.

Tham gia Cộng đồng Arduino KIT để cùng nhau thảo luận và chia sẽ kiến thức về lập trình Arduino.

Nếu các bạn thấy bài viết bổ ích nhớ Like và Share cho mọi người cùng đọc nhé.

Chúc các bạn thành công.

Trân trọng.

Liquid Crystal Displays (LCD) with Arduino

Find out how to wire an LCD to an Arduino, and how to use the LiquidCrystal library through a set of useful examples.

This article was revised on 2021/11/18 by Karl Söderby.

The LiquidCrystal library allows you to control LCD displays that are compatible with the Hitachi HD44780 driver. There are many of them out there, and you can usually tell them by the 16-pin interface.

The LCDs have a parallel interface, meaning that the microcontroller has to manipulate several interface pins at once to control the display. The interface consists of the following pins:

  • A register select (RS) pin that controls where in the LCD’s memory you’re writing data to. You can select either the data register, which holds what goes on the screen, or an instruction register, which is where the LCD’s controller looks for instructions on what to do next.
  • A Read/Write (R/W) pin that selects reading mode or writing mode
  • An Enable pin that enables writing to the registers
  • 8 data pins (D0 -D7). The states of these pins (high or low) are the bits that you’re writing to a register when you write, or the values you’re reading when you read.

There’s also a display contrast pin (Vo), power supply pins (+5V and GND) and LED Backlight (Bklt+ and BKlt-) pins that you can use to power the LCD, control the display contrast, and turn on and off the LED backlight, respectively.

The process of controlling the display involves putting the data that form the image of what you want to display into the data registers, then putting instructions in the instruction register. The LiquidCrystal Library simplifies this for you so you don’t need to know the low-level instructions.

The Hitachi-compatible LCDs can be controlled in two modes: 4-bit or 8-bit. The 4-bit mode requires seven I/O pins from the Arduino, while the 8-bit mode requires 11 pins. For displaying text on the screen, you can do most everything in 4-bit mode, so example shows how to control a 16×2 LCD in 4-bit mode.

Đo Nhiệt Độ Độ Ẩm Bằng DHT11 Hiển Thị LCD Trên Arduino Uno R3| Điện tử DAT
Đo Nhiệt Độ Độ Ẩm Bằng DHT11 Hiển Thị LCD Trên Arduino Uno R3| Điện tử DAT

Giới thiệu LCD 16×2

Thông số kỹ thuật LCD 16×2

LCD 16×2 được sử dụng để hiển thị trạng thái hoặc các thông số.

  • LCD 16×2 có 16 chân trong đó 8 chân dữ liệu (D0 – D7) và 3 chân điều khiển (RS, RW, EN).
  • 5 chân còn lại dùng để cấp nguồn và đèn nền cho LCD 16×2.
  • Các chân điều khiển giúp ta dễ dàng cấu hình LCD ở chế độ lệnh hoặc chế độ dữ liệu.
  • Chúng còn giúp ta cấu hình ở chế độ đọc hoặc ghi.

LCD 16×2 có thể sử dụng ở chế độ 4 bit hoặc 8 bit tùy theo ứng dụng ta đang làm.

Keywords searched by users: arduino uno r3 lcd

Giao Tiếp Lcd 16X2 I2C Với Arduino Uno | Điện Tử Dat
Giao Tiếp Lcd 16X2 I2C Với Arduino Uno | Điện Tử Dat
Lcd 1602 With Arduino Uno R3 : 6 Steps - Instructables
Lcd 1602 With Arduino Uno R3 : 6 Steps – Instructables
Hướng Dẫn Cơ Bản Arduino Uno R3 Kết Nối I2C Hiển Thị Thông Báo Trên Lcd
Hướng Dẫn Cơ Bản Arduino Uno R3 Kết Nối I2C Hiển Thị Thông Báo Trên Lcd
Learn To Use Lcd 1602 (I2C & Parallel) With Arduino Uno 📺 - Hackster.Io
Learn To Use Lcd 1602 (I2C & Parallel) With Arduino Uno 📺 – Hackster.Io
Arduino Lcd 16X2 Interfacing With Arduino Uno | Arduino
Arduino Lcd 16X2 Interfacing With Arduino Uno | Arduino
Hướng Dẫn Cơ Bản Arduino Uno R3 Kết Nối I2C Hiển Thị Thông Báo Trên Lcd
Hướng Dẫn Cơ Bản Arduino Uno R3 Kết Nối I2C Hiển Thị Thông Báo Trên Lcd
Using Lcd Displays With Arduino - Youtube
Using Lcd Displays With Arduino – Youtube
Module Lcd1602 Keypad Shield Cho Arduino Uno R3 - S3H21 | Công Ty Cổ Phần  Linh Kiện Việt Nam
Module Lcd1602 Keypad Shield Cho Arduino Uno R3 – S3H21 | Công Ty Cổ Phần Linh Kiện Việt Nam
Màn Hình Lcd Xanh I2C 1602 Cho Arduino 1602 Lcd Uno R3 Mega2560 Lcd1602 +  Ic2 | Shopee Việt Nam
Màn Hình Lcd Xanh I2C 1602 Cho Arduino 1602 Lcd Uno R3 Mega2560 Lcd1602 + Ic2 | Shopee Việt Nam
Cách Tạo Chế Độ Nghỉ Trên Màn Hình Lcd 16X2 Với Arduino Uno R3 | Điện Tử  Dat - Youtube
Cách Tạo Chế Độ Nghỉ Trên Màn Hình Lcd 16X2 Với Arduino Uno R3 | Điện Tử Dat – Youtube
How To Use A Rtc With An Arduino Uno R3 To Create An Accurate Clock (Lcd  Screen And Nixie Tubes) - Tutorial Australia
How To Use A Rtc With An Arduino Uno R3 To Create An Accurate Clock (Lcd Screen And Nixie Tubes) – Tutorial Australia
Uno R3 Starter Kit The Rfid Lcd 1602 Upgraded With Arduino Philippines |  Circuitrocks – Circuitrocks
Uno R3 Starter Kit The Rfid Lcd 1602 Upgraded With Arduino Philippines | Circuitrocks – Circuitrocks
Free Shipping Upgraded Advanced Version Arduino Starter Kit The Rfid Learn  Suite Kit Lcd 1602 For Arduino Uno R3 - China Arduino Starter Kit, Starter  Kits | Made-In-China.Com
Free Shipping Upgraded Advanced Version Arduino Starter Kit The Rfid Learn Suite Kit Lcd 1602 For Arduino Uno R3 – China Arduino Starter Kit, Starter Kits | Made-In-China.Com
Màn Hình Lcd Iic / I2C 1602 Cho Arduino 1602 Lcd Uno R3 Mega2560 | Shopee  Việt Nam
Màn Hình Lcd Iic / I2C 1602 Cho Arduino 1602 Lcd Uno R3 Mega2560 | Shopee Việt Nam
R4 + Tft Lcd - Running Examples ? - Uno R4 Wifi - Arduino Forum
R4 + Tft Lcd – Running Examples ? – Uno R4 Wifi – Arduino Forum
Điều Khiển Lcd1602 Bằng Arduino Uno | Cộng Đồng Arduino Việt Nam
Điều Khiển Lcd1602 Bằng Arduino Uno | Cộng Đồng Arduino Việt Nam
Arduino Lcd 16X2 Interfacing With Arduino Uno | Arduino
Arduino Lcd 16X2 Interfacing With Arduino Uno | Arduino
Màn Hình Lcd Xanh I2C 1602 Cho Arduino 1602 Lcd Uno R3 Mega2560 Lcd1602 +  Ic2 | Shopee Việt Nam
Màn Hình Lcd Xanh I2C 1602 Cho Arduino 1602 Lcd Uno R3 Mega2560 Lcd1602 + Ic2 | Shopee Việt Nam
Cách Sử Dụng Cảm Biến Dht11 Và Lcd Bằng Arduino - Youtube
Cách Sử Dụng Cảm Biến Dht11 Và Lcd Bằng Arduino – Youtube
Điều Khiển Lcd1602 Bằng Arduino Uno | Cộng Đồng Arduino Việt Nam
Điều Khiển Lcd1602 Bằng Arduino Uno | Cộng Đồng Arduino Việt Nam
Trung Quốc Giá Thấp Lcd1602 Plus I2C Lcd 1602 Mô-Đun Màn Hình Xanh Lam/Xanh  Lục Pcf8574 Iic/I2C Lcd1602 Tấm Chuyển Đổi Cho Arduino Uno R3 Mega25 - Báo  Giá - Thành Phần
Trung Quốc Giá Thấp Lcd1602 Plus I2C Lcd 1602 Mô-Đun Màn Hình Xanh Lam/Xanh Lục Pcf8574 Iic/I2C Lcd1602 Tấm Chuyển Đổi Cho Arduino Uno R3 Mega25 – Báo Giá – Thành Phần
Iic/I2C/Twi 2004 Serial Blue Backlight Lcd Module For Arduino Uno R3  Mega2560 20 X 4 2004 Watty Electronics | Lazada.Vn
Iic/I2C/Twi 2004 Serial Blue Backlight Lcd Module For Arduino Uno R3 Mega2560 20 X 4 2004 Watty Electronics | Lazada.Vn
Lcd1602 Giao Tiếp Arduino, Hiển Thị Lên Màn Hình Lcd1602 + Arduino
Lcd1602 Giao Tiếp Arduino, Hiển Thị Lên Màn Hình Lcd1602 + Arduino
First Steps With The Arduino-Uno R3 And Nano | Maker, Makered, Coding | I2C  Lcd Temp./Humidity Displaying | Edu: Digital Citizenship, Cybersecurity,  Eskills, Modern Edu By Gust Mees
First Steps With The Arduino-Uno R3 And Nano | Maker, Makered, Coding | I2C Lcd Temp./Humidity Displaying | Edu: Digital Citizenship, Cybersecurity, Eskills, Modern Edu By Gust Mees
Hướng Dẫn Cơ Bản Arduino Uno R3 Kết Nối I2C Hiển Thị Thông Báo Trên Lcd
Hướng Dẫn Cơ Bản Arduino Uno R3 Kết Nối I2C Hiển Thị Thông Báo Trên Lcd
สอนใช้งาน Arduino แสดงข้อความ และ ค่า Sensor ต่างๆออกจอ Lcd 1602 แบบ I2C -  ขาย Arduino อุปกรณ์ Arduino คุณภาพดี ราคาถูก ส่งไว ส่งฟรี
สอนใช้งาน Arduino แสดงข้อความ และ ค่า Sensor ต่างๆออกจอ Lcd 1602 แบบ I2C – ขาย Arduino อุปกรณ์ Arduino คุณภาพดี ราคาถูก ส่งไว ส่งฟรี
Mô Đun Màn Hình Lcd Iic / I2C 1602 Cho Arduino 1602 Lcd Uno R3 Mega2560  Lcd1602 | Shopee Việt Nam
Mô Đun Màn Hình Lcd Iic / I2C 1602 Cho Arduino 1602 Lcd Uno R3 Mega2560 Lcd1602 | Shopee Việt Nam
Mua Adeept Project 1602 Lcd Starter Kit For Arduino Uno R3 Mega 2560 Servo  Pdf Tại Magideal | Tiki
Mua Adeept Project 1602 Lcd Starter Kit For Arduino Uno R3 Mega 2560 Servo Pdf Tại Magideal | Tiki
Giao Tiếp I2C Với LCD 16x2 Bằng Arduino Uno R3 | Điện tử DAT
Giao Tiếp I2C Với Lcd 16X2 Bằng Arduino Uno R3 | Điện Tử Dat – Youtube
Tổng Quan Lcd 16X2 Và Giao Tiếp I2C Lcd Sử Dụng Arduino | Arduino Kit
Tổng Quan Lcd 16X2 Và Giao Tiếp I2C Lcd Sử Dụng Arduino | Arduino Kit
Giao Tiếp I2C Với Lcd 16X2 Bằng Arduino Uno R3 | Điện Tử Dat - Youtube
Giao Tiếp I2C Với Lcd 16X2 Bằng Arduino Uno R3 | Điện Tử Dat – Youtube

See more here: kientrucannam.vn

Trả lời

Email của bạn sẽ không được hiển thị công khai. Các trường bắt buộc được đánh dấu *