Thông báo

Collapse
No announcement yet.

KHÔNG THỂ NÀO GIAO TIẾP AVR VỚI LCD 4X40 ĐƯỢC

Collapse
X
 
  • Lọc
  • Giờ
  • Show
Clear All
new posts

  • KHÔNG THỂ NÀO GIAO TIẾP AVR VỚI LCD 4X40 ĐƯỢC

    các anh cho em hỏi là e đang cần giao tiếp vi điều khiển với LCD 4x40. nhưng do LCD này có 2 chân EN1 và EN2. Trên codevision avr thì chỉ hỗ trợ 1 loại giao tiếp với lcd có 1 chân EN1. e đã thử nhưng không thể nào giao tiếp được với LCD 40x4. trên diễn đàn đã có ai giao tiếp với cái lcd này chưa chỉ giúp em với. Nếu khai báo như bình thường có nghĩa là chỉ dùng với 1 chân EN1 thì đúng ra nó phải hiển thị được 2 dòng đầu, nhưng nó lại chỉ hiển thị được một nửa dòng thứ 2, như vậy không biết tại sao. và khi nối EN1 và EN2 thì nó hiện ra như thế này.

  • #2
    Bác cho ra bao nhiêu ký tự ? Bây cho ra 41 ký tự coi ký tự thứ 41 nằm ở đâu. Rồi từ đó coi tại sao.

    Tờ datasheet đã nói rõ chân EN2 cho hàng 3,4 thì dĩ nhiên sẽ giống như hàng 1, 2 (EN1).

    Comment


    • #3
      LCD 4x40 này hơi rắc rối, Codevision nó có thư viện lcd 4x40 riêng trong mục hướng dẫn LCD của codevision có đề vập nhưng không hỗ trợ hoàn toàn cụ thể là khi #incule thư viện vào dùng thì chỉ hiển thị được dòng 1 và 3 của LCD, dòng 2 và 4 thì tịt. Lên các diễn đàn nước ngoài học hửi thì thấy có rất nhiều người cũng gặp khó, có người làm được nhưng khá phức tạp, cụ thể là phải biết chính xác cái địa chỉ của dòng 2 và 4 để lập trình lại cái thư viện cho đúng mà mỗi hãng sản xuất LCD loại 4x40 thì lại đặt cấu hình khác nhau. Mình đã thử sửa lại thư viện nhưng không dò được địa chỉ chính xác của dòng 2 và 4 làm kí tự nhảy loạn xạ của loại LCD này trong Proteus nên phải ....... cài lại Codevision.
      Cái hình chủ thớt đưa lên mình cũng bị vậy khi cố tình dùng thư viện LCD thường cho loại 2 dòng 40 kí tự mỗi dòng, địa chỉ của từng ô, cột, dòng thì chả thấy thông tin gì trong datasheet cả. Nếu khó quá thì ráp 2 cái LCD 2x40 lại mà dùng.
      Làm sao mà bạn dám nói là không làm được khi bạn chưa từng thử một lần nào.
      Ngay cả khi bạn đã làm 1 lần và thất bại bạn cũng không có quyền nói là không làm được vì bạn chưa làm lần thứ 2,3...

      Comment


      • #4
        Nguyên văn bởi hoahauvn2 Xem bài viết
        LCD 4x40 này hơi rắc rối, Codevision nó có thư viện lcd 4x40 riêng trong mục hướng dẫn LCD của codevision có đề vập nhưng không hỗ trợ hoàn toàn cụ thể là khi #incule thư viện vào dùng thì chỉ hiển thị được dòng 1 và 3 của LCD, dòng 2 và 4 thì tịt. Lên các diễn đàn nước ngoài học hửi thì thấy có rất nhiều người cũng gặp khó, có người làm được nhưng khá phức tạp, cụ thể là phải biết chính xác cái địa chỉ của dòng 2 và 4 để lập trình lại cái thư viện cho đúng mà mỗi hãng sản xuất LCD loại 4x40 thì lại đặt cấu hình khác nhau. Mình đã thử sửa lại thư viện nhưng không dò được địa chỉ chính xác của dòng 2 và 4 làm kí tự nhảy loạn xạ của loại LCD này trong Proteus nên phải ....... cài lại Codevision.
        Cái hình chủ thớt đưa lên mình cũng bị vậy khi cố tình dùng thư viện LCD thường cho loại 2 dòng 40 kí tự mỗi dòng, địa chỉ của từng ô, cột, dòng thì chả thấy thông tin gì trong datasheet cả. Nếu khó quá thì ráp 2 cái LCD 2x40 lại mà dùng.
        bỏ cuộc rồi hoahauvn2 à, nó khó quá để có thể làm chủ được cái LCD này,

        Comment


        • #5
          Nguyên văn bởi phucphamhaui Xem bài viết
          bỏ cuộc rồi hoahauvn2 à, nó khó quá để có thể làm chủ được cái LCD này,
          Thân chào bạn, từ "bỏ cuộc" không có trong từ điển của mình.
          Mình có LCD 4x40 và code chạy dự án thực tế cũng lâu rồi. Cơ bản vấn đề ở đây là Codevision có hỗ trợ LCD này nhưng không triệt để 100% cho mọi LCD 4x40, và gai nhất là lỗi do thằng Proteus nó khai báo lộn xộn cho con LCD MDLS40466 gây lộn xộn trong mô phỏng.
          Search google có hướng dẫn và code mẫu rất nhiều cho vấn đề này. Mình tưởng bạn đã làm được vì cư dân mạng họ dâng bánh đến tận miệng luôn mà. Bạn chịu khó đọc tiếng Anh đi rất chi tiết và rõ ràng, mà có tài liệu để đọc là mừng rồi, còn lại thỉnh bác google Trans lo. Tài liệu tiếng Việt vừa ít vừa không đáng tin cậy trong trường hợp này hầu như là ko có Vietsub đâu.
          http://fractale.gecif.net/si/logiciels/proteus/lcd/
          Đây là một trong hàng chục web rất hay nói về vấn đề này, nó hình như tiếng Pháp nhưng rõ ràng và dễ hiểu đến mức mình không biết tiếng Pháp vẫn lờ mờ hiểu nó muốn đề cập đến cái gì, ở web này nó quy lỗi về hết cho Proteus, nhưng chưa đủ. Bạn tham khảo thêm nhiều web khác sẽ nắm rõ nền tảng, nếu nắm rõ thì bạn có thể lập trình cho bất kì LCD nào mà ko cần đến thư viện support.
          Lời khuyên là bạn nên làm trực tiếp trên mạch LCD thực tế đi bạn, Proteus nó cùi trong trường hợp này rồi, nếu ngâm cứu cho nó chạy đúng con LCD trong mô phỏng này thi ra LCD thực tế sẽ chạy sai với cùng code. Mã LCD MDLS40466 cũng ko có bán trên thị trường của ta, mô phỏng để học cho vui thì tốt, để làm ứng dụng thực tế thì.... dễ gây mất văn hóa ngôn ngữ lắm.
          Chúc vui và thành công!
          Làm sao mà bạn dám nói là không làm được khi bạn chưa từng thử một lần nào.
          Ngay cả khi bạn đã làm 1 lần và thất bại bạn cũng không có quyền nói là không làm được vì bạn chưa làm lần thứ 2,3...

          Comment

          Về tác giả

          Collapse

          phucphamhaui Tìm hiểu thêm về phucphamhaui

          Bài viết mới nhất

          Collapse

          Đang tải...
          X