Nhấp nháy lcd1602, Đếm sản phẩm + Nút nhấn cài ngưỡng, Lập trình Pic

nhap-nhay-lcd1602-hien-thi-dem-san-pham-nut-nhan-tang-gia-tri-cai-dat-nguong-lap-trinh-pic
Nhấp nháy LCD1602 được sử dụng nhiều trong các hệ thống cảnh báo hoặc các chương trình tạo hiệu ứng giúp tăng sự chú ý của người quan sát, được ứng dụng nhiều trong các đề tài như cảnh báo nhiệt độ, chỉnh giá trị, hoặc cảnh báo người qua lại khi nằm trong ngưỡng cho phép.

Mua linh kiện điện tử tại Điện tử Nhật Tùng

Liên hệ làm mạch  Phone: 0967.551.477 Zalo: 0967.551.477 Email: dientunhattung@gmail.com Địa Chỉ: 171/25 Lê Văn Thọ, P8, Gò Vấp, Tp HCM Chi tiết: Nhận làm mạch và đồ án Điện tử
  Khóa học Vi điều khiển có phí Hình thức học: Video hoặc Kèm trực tiếp ===>>>>  Kích vào hình để được biết thêm chi tiết khóa học lập trình vi điều khiển online

Tải File bài giải

Pass giải nén: Huynhnhattung.com
===>>>   Nếu bạn chưa có phần mềm giải nén:

Hướng dẫn Tải và Cài đặt phần mềm giải nén Winrar

 

Video Nhấp nháy lcd1602, Đếm sản phẩm + Nút nhấn cài ngưỡng

 

Blog Nhấp nháy lcd1602, Đếm sản phẩm + Nút nhấn cài ngưỡng

Đề bài nhấp nháy LCD1602:

nhap-nhay-lcd1602-hien-thi-dem-san-pham-nut-nhan-tang-gia-tri-cai-dat-nguong-lap-trinh-pic-de-bai

Bài giải nhấp nháy LCD1602:

Phần cứng chương trình nhấp nhay LCD1602:

  • Đầu tiên yêu cầu đưa ra có nhiệt độ LM35 vì vậy bắt buộc phải gắn vào chân ANxx tức chân đọc tín hiệu Analog chuyển sang Digital.
  • Hiển thị LCD1602 dùng giao tiếp 4bit sẽ giúp tối ưu tốc phần cứng hơn, và việc sử dụng thư viện do phần mềm hổ trợ cũng là một cách tối ưu chương trình khá tốt. 
  • Nút nhấn C_DOI dùng để chuyển đổi hiển thị từ nhiệt độ C sang nhiệt độ K.
  • Loa 5V hàn board dùng để cảnh báo khi nhiệt độ vượt ngưỡng giới hạn cài đặt.
  • Các linh kiện chính cần sử dụng tham khảo tại.
    Thông số kỹ thuật Mua Linh kiện
    Pic16F887Pic16F887
    LCD1602LCD1602
    Điện trởĐiện trở
    Nút nhấnNút nhấn
    Thạch anhThạch anh
    Led đơnLed đơn
    Cảm biến hồng ngoạiCảm biến hồng ngoại

nhap-nhay-lcd1602-hien-thi-dem-san-pham-nut-nhan-tang-gia-tri-cai-dat-nguong-lap-trinh-pic

Phần mềm nhấp nháy LCD1602:

Khai báo thư viện tiền sử lý của Giao tiếp LCD1602:

  • Vi điều khiển hiện tại mình đan dùng là Pic16F887
  • Hiện dùng thạch anh nội và thạch anh nội khai báo 8M bằng lệnh #Fuses  intrc_io   và  #delay(clock=8M).  
  • Thư viện LCD1602 sử dụng 4bit, thư viện sử dụng do phần mềm hổ trợ. Giúp đơn giản trong quá trình lập trình hơn.
  • Định nghĩa chân: tùy theo chức năng của chân mà tên định nghĩa được bám sát vào nội dung đan thực hiện.
  • Tên khai báo biến phụ thuộc vào chức năng để khai báo cho phù hợp. 
  • Khi các biến không biết được giá trị cuối thì nên khai báo signed int32 tức khai báo biến có dấu 32bit, lúc này giá trị rất rộng không sợ bị thiếu.
nhap-nhay-lcd1602-hien-thi-dem-san-pham-nut-nhan-tang-gia-tri-cai-dat-nguong-lap-trinh-pic-khai-bao

Chương trình con nhấp nháy LCD1602:

Chương trình hiển thị

  • Đầu tiên kiểm tra nếu tt=1 tức cho phép đếm sản phẩm thì hiển thị theo yêu cầu đề bài việc định vị trí hiển thị theo hình của yêu cầu. Khi khởi tạo là lcd_gotoxy(1,1); hoặc lcd_gotoxy(1,2); là cần xuất dữ liệu ra LCD1602 vị trí hàng 2 cột 1. Tương tự cho các vị trí khác chỉ cần xem định vị theo yêu cầu. 
  • Khi các phép chia  aa/10%10, aa%10 đây là phương pháp tách số, lý do mỗi ô của LCD1602 chỉ hiển thị một ký tự duy nhất tại một thời điểm nhất định. Ví dụ 12 là một số nhưng có 2 giá trị. Sau khi tách số xong đem +0x30 chuyển giá trị thập phân sang bảng mã ASCII. Mọi thông tin các bạn tra bảng sẽ hiểu rõ hơn.
  • Khi đạt ngưỡng giới hạn cho phép thì tt=0 lúc này lcd1602 chuyển màn hình hiển thị thông tin quy định và nhấp nháy tần số 1Hz, theo cách hiển thị thông tin sau thời gian 500ms rồi xóa thông tin đó trong thời gian 500ms. Việc sử dụng tạo trễ bằng delay không được hay nhưng nó giúp người lập trình đơn giản phần chương trình.
nhap-nhay-lcd1602-hien-thi-dem-san-pham-nut-nhan-tang-gia-tri-cai-dat-nguong-lap-trinh-pic-hien-thi

Chương trình kiểm tra nút nhấn tăng hoặc giảm

  • Nút nhấn có nhiều chức năng, sau mỗi lần nhấn giá trị trả về thay đổi aa bằng cách tăng hoặc giảm giá trị đó lên một đơn vị trạng thái trước đó vì vậy phải chống dội cho nút nhấn. Việc chống dội ở đây không hướng dẫn chi tiết các bạn có thể tham khảo sách giáo trình thầy Nguyễn Đình Phú.
nhap-nhay-lcd1602-hien-thi-dem-san-pham-nut-nhan-tang-gia-tri-cai-dat-nguong-lap-trinh-pic-nut-nhan

Chương trình chính thực hiện toàn bộ hoạt động của vi điều khiển dùng nhấp nháy LCD1602

  • Bắt đầu chương trình chính phải khởi tạo ngõ vào ra cho vi điều khiển. Một chân của vi điều khiển thì làm nhiệm vụ I/O vì thế phải khỏi tạo. Port A dùng cho nút nhấn và cảm biến để đưa vào Vi điều khiển vì thế khởi tạo giá trị là 0xff, Port D sử dụng tín hiệu cho LCD1602 tức đưa tín hiệu từ Vi điều khiển ra ngoài nên khởi tạo là 0x00.
  • Bắt đầu khởi tạo tt =1; và giá trị aa=20, bb=0 theo yêu cầu của đề bài. 
  • Hiển thị giá trị và kiểm tra hai nút nhấn tănggiảm.  Kiểm tra nếu có tín hiệu từ cảm biến thì kiếm trạng tt=1 cho phép tăng giá trị bb lên một đơn vị, khi bb lớn hơn hoặc bằng aa thì cho bb=aa; và cho tt=0; để chốt cảm biến lại dù có sản phẩm tiếp theo. và hiển thị ra màn hình lcd1602 theo chương trình đã trang bị trước đó. 
  • Chờ khi hết tín hiệu thì bắt đầu kiểm tra lại từ đầu nên while(input(cb)==1); chờ hết một trạng thái.

nhap-nhay-lcd1602-hien-thi-dem-san-pham-nut-nhan-tang-gia-tri-cai-dat-nguong-lap-trinh-pic-chuong-trinh-chinh

Chúc các bạn có một kỳ thi thành công…!!!

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 *