Lập trình LCD 1602 với chip 74HC595

I. Giới thiệu

Xin chào các bạn! Các bạn đã làm quen với LCD 1602 ở bài viết "Điều khiển LCD bằng Arduino UNO". Mình xin chia sẻ với các bạn một cách khác để kết nối LCD này với board arduino, đó là sử dụng chip 74HC595. Để kết nối màn hình qua cách này chúng ta phải tốn 3 chân của arduino (nhiều hơn 1 chân so với dùng mạch I2C) nhưng chip 595 lại có giá thấp hơn module I2C 5-10 lần (chỉ khoảng 1-2k VNĐ).devil

II. Phần cứng

  1. Arduino bất kì (mình dùng UNO).
  2. LCD 1602 trên nền HD44780.
  3. Chip 74HC595 (hoặc tương tự).
  4. 1 biến trở 5-10KOhm.
  5. Breadboard
  6. Dây cắm breadboard

III. Lắp mạch

Các bạn lắp mạch như hình.

IV. Lập trình

Các bạn cần cập nhập thư viện LiquidCrystal tại đây.

Chúng ta kiểm tra khả năng làm việc của mạch bằng code đơn giản sau.

//595 pin 11 -> D13
//595 pin 12 -> D10
//595 pin 14 -> D11 // đóng góp sửa lỗi của bạn @Nhân Trí
#include <SPI.h>
#include <LiquidCrystal.h>
LiquidCrystal lcd(10);
     
void setup(){
  lcd.begin(16, 2);
  lcd.print("Xin chao!");
}
 
void loop(){
  int s = millis()/1000;
  lcd.setCursor(0,1);
  lcd.print(s);
}

V. Kết luận

Mọi thứ thật đơn giản phải không các bạn? Chúng các bạn có nhiều dự án hay!

Nếu muốn giảm độ sáng màn hình (nhằm tiết kiệm pin) các bạn gắn thêm 1 con trở 100-470Ohm vào trước chân số 15 hoặc 16 (A hoặc K) trên mạch LCD. Nếu muốn thay đổi độ sáng các bạn có thể gắn thêm 1 biến trở 1KOhm.

 

lên
5 thành viên đã đánh giá bài viết này hữu ích.
Hướng dẫn sử dụng các loại module

Nếu bạn đang muốn thực hiện hóa ý tưởng của mình mà không biết dùng loại module nào? Hãy tham khảo các module trong danh sách sau

Các dự án được truyền cảm hứng

Select any filter and click on Apply to see results

Các bài viết cùng tác giả

Lập trình, nạp bootloader cho chip atmega8

Xin chào các bạn! Chắc chắn các bạn đã từng có những dự án nhỏ (ví dụ: làm đèn led trái tim, máy đo nhiệt độ với DHT11, đồng hồ với module RTC ...) yêu cầu không quá lớn về phần cứng và tiết kiệm chi phí. Có một cách rất hiệu quả đó là sử dụng các chip dòng attiny để thay thế cho mạch arduino đắt tiền. Tuy nhiên, đôi lúc bạn sẽ gặp nhiều khó khăn do hạn chế về số chân, dung lượng bộ nhớ, và arduino IDE không hỗ trợ đầy đủ các loại giao tiếp (SPI, I2C, ...) cho các chip attiny. Trong hoàn cảnh đó, chúng ta có thể nghĩ tới con chip rẻ tiền nhất trong dòng atmega đó là chip atmega8.

lên
14 thành viên đã đánh giá bài viết này hữu ích.

Servo tester với attiny85 - Mạch kiểm tra lỗi servo

Servo là một loại động cơ thường được sử dụng trong robot hay trong các đồ chơi mô hình. Trên Cộng đồng Arduino Việt Nam đã có rất nhiều bài viết giới thiệu về servo và cách lập trình, sử dụng. Có nhiều cách để kiểm tra xem servo có còn làm việc hay không, trong bài viết này mình xin giới thiệu với các bạn mạch servo tester sử dụng AVR attiny85 để tạo xung.

lên
11 thành viên đã đánh giá bài viết này hữu ích.