Thông báo

Collapse
No announcement yet.

Tại sao LCD?

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

  • Tại sao LCD?

    Em có viết một vài chương trình điều khiển máy phay CNC, sử dụng chíp ATMEGA16, và dùng Codevision AVR , có dùng module LCD của codevision AVR , tất nhiên là chân cẳng LCD trên mạch kô chung đụng với thằng nào cả, vậy mà khi cắm LCD trên mạch thì chạy bình thường, khi rút LCD ra thì kô chạy!!
    Vậy là tại sao, các huynh đệ trả lời giúp em với !

  • #2
    post cái mach lên anh em cùng bắt bệnh chứ thế này dễ "khám nghiệm" sai lắm.
    em nghĩ có 1 câu lệnh nào đó mà yêu cầu chờ cho khi LCD xử lý xong mới thực hiện típ (treo).
    |

    Comment


    • #3
      Nguyên văn bởi mrcuongcon Xem bài viết
      Em có viết một vài chương trình điều khiển máy phay CNC, sử dụng chíp ATMEGA16, và dùng Codevision AVR , có dùng module LCD của codevision AVR , tất nhiên là chân cẳng LCD trên mạch kô chung đụng với thằng nào cả, vậy mà khi cắm LCD trên mạch thì chạy bình thường, khi rút LCD ra thì kô chạy!!
      Vậy là tại sao, các huynh đệ trả lời giúp em với !
      Vấn đề cậu gặp phải là do LCD có cho phép đọc tín hiệu busy.
      Thường thì người viết LCD hok có đọc tín hiệu này mà thường dùng delay bỏ qua nên đối với loại này thì tháo hay cắm LCD cũng không ảnh hưởng chương trình.
      Còn thư viện của CodeVision thì có cả việc đọc tín hiệu busy nên chương trình của cậu khi không cắm LCD thì nó sẽ đợi tín hiệu LCD rãnh mãi mãi.
      -->Luôn cắm LCD hoặc kiếm cái thư viện khác không dùng chức năng đọc busy từ LCD

      Sông dài, Thuyền lớn, Biển rộng bao la.
      Tháo neo ngôn ngữ, lèo lái con thuyền kiến thức nhân loại.

      Comment


      • #4
        Chú Thái nói đúng roài , thư viện của CodeVisionAVR nó đọc về trạng thái Busy, khi không có LCD thì nó cứ đứng đó nó chờ!
        PNLab
        Mạch nạp/debug ULink2, Jlink ARM USB
        Mạch nạp AVR, PIC, 8051, MSP430 USB
        Mạch phát triển STM32, ARM9, ARM11
        more...www.pnlabvn.com

        Comment


        • #5
          Vậy có thể tác động vào thư viện LCD của nó để thay thế kiểm tra cờ bận bằng một delay kô nhỉ ? Em đã thử làm vậy nhưng chưa được.

          Comment


          • #6
            ban oi co the la ban khong cho vong tre khi hien thi lcd
            ban thu them 1 it thoi gian tre vao chuong trinh con viet 1 ky tu do
            vi con AMEGA16 toc do nhanh hon nhieu so voi cac con 8051

            Comment


            • #7
              Nguyên văn bởi traihole Xem bài viết
              ban oi co the la ban khong cho vong tre khi hien thi lcd
              ban thu them 1 it thoi gian tre vao chuong trinh con viet 1 ky tu do
              vi con AMEGA16 toc do nhanh hon nhieu so voi cac con 8051
              dùng trễ khi không sử dụng kiểm ra cờ bận,ở đây bạn ấy dùng phương pháp kiểm tra cờ bận ruì,nên không cần delay làm gì cả.

              Comment


              • #8
                Nguyên văn bởi mrcuongcon Xem bài viết
                Em có viết một vài chương trình điều khiển máy phay CNC, sử dụng chíp ATMEGA16, và dùng Codevision AVR , có dùng module LCD của codevision AVR , tất nhiên là chân cẳng LCD trên mạch kô chung đụng với thằng nào cả, vậy mà khi cắm LCD trên mạch thì chạy bình thường, khi rút LCD ra thì kô chạy!!
                Vậy là tại sao, các huynh đệ trả lời giúp em với !
                khi sử dụng lcd mình thường làm theo cách sau:
                trước khi khởi tạo cho lcd,mình thực hiện 3 lần trễ 30ms,trong datasheet của lcd nó nói thế,mục đích là để cho lcd tự khởi tạo bên trong,giống như làm nóng máy ấy,song rùi mới làm máy cái lệnh khởi tạo chính cho lcd.
                bạn cắm lại vô lcd rồi reset lại mạch xem,kiểm tra lai sự sống của con vxl đó xem.
                rồi có cách nào kiểm tra lại đc con lcd không.bạn cấp nguồn cho lcd thì hàng 1 của nó phải là đen xì(nhớ contrast đấy nhá).

                Comment


                • #9
                  Nguyên văn bởi mrcuongcon Xem bài viết
                  Vậy có thể tác động vào thư viện LCD của nó để thay thế kiểm tra cờ bận bằng một delay kô nhỉ ? Em đã thử làm vậy nhưng chưa được.
                  cái này mình chưa thử,nhưng mình nghĩ không đc, hàm thư viện của nó bạn làm sao mà có thể sửa đc chứ,cách tốt nhất là không dùng hàm thư viện nữa,điều khiển thủ công xem sao!

                  Comment


                  • #10
                    Nguyên văn bởi vinhsnooker Xem bài viết
                    cái này mình chưa thử,nhưng mình nghĩ không đc, hàm thư viện của nó bạn làm sao mà có thể sửa đc chứ,cách tốt nhất là không dùng hàm thư viện nữa,điều khiển thủ công xem sao!
                    Sửa được các bạn ạ. Thực chất nó cũng chỉ là các lệnh ASM thôi mà, tìm đúng chỗ đọc cờ busy trong file LIB cho nó thành ý tưởng của mình là OK. Nhiều cái tôi phải sửa theo ý mình dùng nó mới sướng.

                    email:mahaco@fpt.vn

                    Comment


                    • #11
                      Nguyên văn bởi hoctro89xxx Xem bài viết
                      Sửa được các bạn ạ. Thực chất nó cũng chỉ là các lệnh ASM thôi mà, tìm đúng chỗ đọc cờ busy trong file LIB cho nó thành ý tưởng của mình là OK. Nhiều cái tôi phải sửa theo ý mình dùng nó mới sướng.
                      vậy hả,để mình thử cái này xem,cái này hay đây!

                      Comment

                      Về tác giả

                      Collapse

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

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

                      Collapse

                      Đang tải...
                      X