[C9] Bài tập, thảo luận về LCD

Manhdd

Cố Vấn CLB
Staff member
Thứ bảy tuần rồi các bạn C9 đã được thọ giáo bài LCD. Do tình trạng ngày đầu còn hỗn độn, có thể sẽ có vài bạn theo không kịp. Các bạn có thể tham khảo lại hướng dẫn về LCD tại đây nhé: http://www.payitforward.edu.vn/forum/threads/879/
Các bạn thực hành các hàm LCD, kết hợp với nhau để cho hiệu ứng chạy chữ. Nếu có thắc mắc hay muốn show hàng gì thì post tại đây nhé! :1cool_byebye:

Dự kiến tuần sau, các bạn sẽ có một buổi để trao đổi, tổng hợp các kiến thức đã học về GPIO, Timer, LCD, ... Các bạn chú ý đi đầy đủ :D
 

lee_trieu

Gà con
Các bạn thực hành các hàm LCD, kết hợp với nhau để cho hiệu ứng chạy chữ. Nếu có thắc mắc hay muốn show hàng gì thì post tại đây nhé! :1cool_byebye:
Anh ơi ! em có một vấn đề này mong anh giúp đỡ !:5cool_sweat:
Em lập trình để hiện 2 màn hình thông tin trên, dùng một nút nhấn để chuyển qua lại giữa 2 màn hình này.
vấn đề em gặp phải là khi chuyển từ màn hình thông tin này sang màn hình kia thì còn sót lại những ký tự của màn hình trước đó:-(em thêm vào hàm xoá LCD thì mấy cái ký tự sót lại mất hết nhưng LCD nó nhấp nháy liên tục, thông tin hiện ra rất mờ rất khó thấy thông tin hiển thị:-s
Em nghĩ là do việc ghi xoá LCD lặp lại liên tục nên nó bị như vậy, làm sao để xoá LCD 1 lần trong hàm con thôi anh?:-(
code em viết dạng sau:
PHP:
while(1)
{
   switch(i) //i thay đổi luân phiên 0,1 khi ấn phím 
   {
      case 0: thongtin1(); //màn hình thứ nhất
         break;
      case 1: thongtin2();//màn hình thứ 2
         break;
   }
}
phải thêm làm clear lcd chỗ nào để nó không bị lặp lại liên tục đây:-s:-s:-s
 

Manhdd

Cố Vấn CLB
Staff member
vòng while(1) của em khiến cho việc ghi-xóa thông tin diễn ra khá nhanh. Em nên dùng sự kiện ngắt để xử lý nút nhấn, đồng thời chỉ thay đổi thông tin LCD khi cần thiết, không cần phải cứ ghi liên tục như vậy.
 

lee_trieu

Gà con
vòng while(1) của em khiến cho việc ghi-xóa thông tin diễn ra khá nhanh. Em nên dùng sự kiện ngắt để xử lý nút nhấn, đồng thời chỉ thay đổi thông tin LCD khi cần thiết, không cần phải cứ ghi liên tục như vậy.
Dạ..em dùng ngắt để thay đổi biến i đó anh, do em hiện RTC nên em phải ghi dữ liệu liên tục lên LCD, mà hình thứ 2 em đọc ADC cũng liên tục luôn ạ:-s
 

Manhdd

Cố Vấn CLB
Staff member
Dạ..em dùng ngắt để thay đổi biến i đó anh, do em hiện RTC nên em phải ghi dữ liệu liên tục lên LCD, mà hình thứ 2 em đọc ADC cũng liên tục luôn ạ:-s

RTC cũng đâu cần phải "liên tục", cách chừng 100ms là OK rồi :)
 

lee_trieu

Gà con
Dạ..em dùng ngắt để thay đổi biến i đó anh, do em hiện RTC nên em phải ghi dữ liệu liên tục lên LCD, mà hình thứ 2 em đọc ADC cũng liên tục luôn ạ:-s

RTC cũng đâu cần phải "liên tục", cách chừng 100ms là OK rồi :)
Em vẫn chưa tìm được cách tối ưu nữa:-(Giờ tạm dùng khoảng trắng để che mấy cái ký tự xót lại của màn hình sau khi chuyển thui ạ:-s
 
Top