> Month: December 2013

Kết nối LCD với Arduino
trong 6 giây

Mình vừa nhận được một đống linh kiện được gửi từ [Silicon Straits Saigon], trong đó có cái LCD16x2. Có một cái LCD trong tay rất là tiện lợi, khi mà bạn có thể hiển trị trực tiếp các thông số debug trên màn hình. Có điều, mỗi lần nối LCD vào mạch, phải cắm đến 12 dây và tốn 6 chân trên Arduino thì nghe có vẻ hơi khổ…

Vậy nên, để tiết kiệm công sức mỗi khi ráp mạch, mình dùng một board sử dụng 74HC595, và như vậy chỉ cần dùng 3 chân trên Arduino, vừa đỡ mất công cắm dây, vừa tiết kiệm được chân trên Arduino để làm những việc khác.

Schematic:

  • Các chân DataPin (chân 14), LatchPin (chân 12) và ShiftPin (chân 11) của 74HC595 nối với Arduino
  • Chân 1->4 của 74HC595 nối với chân D4, D5, D6, D7 của LCD.
  • Chân 15 của 74HC595 nối với chân Enable của LCD
  • Chân 7 của 74HC595 nối với chân RS của LCD
  • Chân V0 của LCD được nối với biến trở để điều chỉnh độ tương phản

Hiện tại mình đã vẽ schematic và layout cho driver. Tuy nhiên do hơi lười nên mình xài tạm board đục lỗ để làm driver.

Sua khi đã hàn xong mạch, chỉ việc cắm LCD và nối 3 dây vào Arduino, thế là xong, quá khỏe m/

Code:

Để có thể dùng LCD với 74HC595, bạn dùng thư viện “LiquidCrystal595”, credit thuộc về [rowansimms].

Các bạn có thể tải về tại trang Github: LiquidCrystal595 on Github

Thư viên này dựa trên thư viện gốc “LiquidCrystal”, nên bạn chỉ cần sửa lại một chút ở phần khai báo.

đây là phần code test

Kết quả:

Bạn thấy đó, rất nhanh và gọn gàng m/

Github

LiquidCrystal595 on Github

Changelog

20/09/2015 – Chỉnh sửa schematic và thêm file layout