Lập trình AVR bằng CodeVisionAVR C Compiler cho người mới bắt đầu

Collapse
X
 
  • Giờ
  • Show
Clear All
new posts
  • thangcftd
    Thành viên chính thức
    • Dec 2006
    • 62

    #46
    minh đang sử dụng LCD 4x20 mã hiệu YM2004B. các chân đều giống như LCD bạn đã gởi cho mình. nhưng nó vẫn không hiển thị được. có khi nào LCD của mình không đúng chủng loại không?

    Vẫn chưa chạy ah bạn tanxuyenhg?
    Kiểm tra lại mạch phần cứng xem.
    Kiểm tra chương trình dịch CAVR xem đã chọn đúng chip32 và đúng thạch anh chưa(mặc định 1MHz).
    Kiểm tra giống như bạn hungnp xem.
    Nếu vẫn ko được nữa thì bạn hãy post tất cả project của bạn lên cho mọi người giúp.

    Chúc thành công!

    Comment

    • vietelec
      Thành viên mới
      • Oct 2007
      • 14

      #47
      Em đã dùng LCD nhưng chế đọ 8 bit, nhung lại không hiều về chế độ 4 bit bác nao chỉ cho em với.Thanks

      Comment

      • tallht
        Thành viên mới
        • Apr 2008
        • 361

        #48
        chế đô 4 bit cũng gần tương tư như 8 bit thôi,chỉ có điều là gửi mỗi lần đi 4 bit,4 bit cao trước
        Tặng bạn 1 tut nè!
        Attached Files
        SỰ HỌC LÀ MÃI MÃI......!!!!

        Comment

        • tanxuyenhg
          Thành viên mới
          • May 2008
          • 9

          #49
          dưới đây là chương trình mình đã lập trình. và phần cứng liên kết. các bạn xem giúp mình nhé!!!!!!!!!!!!!!!!!!!!
          Attached Files
          Last edited by tanxuyenhg; 25-09-2008, 11:05.

          Comment

          • tanxuyenhg
            Thành viên mới
            • May 2008
            • 9

            #50
            đây là chương trình và phần cứng của mình. các bạn giúp mình nhe!!!!!!!!!!!!!!!
            Attached Files

            Comment

            • hunter_17
              Thành viên chính thức
              • Mar 2008
              • 66

              #51
              Bạn thử nối AVCC với +VCC và AGND với GND xem.Vì PORTA của nó tích hợp cả chức năng ADC nên phải cấp nguồn cho nó thì nó mới chạy.

              Comment

              • tallht
                Thành viên mới
                • Apr 2008
                • 361

                #52
                ủa sao bạn init(20) vậy? lcd của bác loại 20 cột hả?
                nếu dùng loại lcd bình thường thì init(16) thôi chứ bác?
                SỰ HỌC LÀ MÃI MÃI......!!!!

                Comment

                • minhhieu
                  Thành viên tích cực
                  • Mar 2006
                  • 499

                  #53
                  Nguyên văn bởi tallht Xem bài viết
                  ủa sao bạn init(20) vậy? lcd của bác loại 20 cột hả?
                  nếu dùng loại lcd bình thường thì init(16) thôi chứ bác?
                  Đây là loại LCD 20 ký tự 2 hàng.
                  n
                  ĐT: 0986 492 489

                  Tham khảo:

                  Comment

                  • minhhieu
                    Thành viên tích cực
                    • Mar 2006
                    • 499

                    #54
                    Bạn cần phân áp cho chân contrast của LCD, điện áp đặt lên chân này khoảng 0.4 - 0.45V ( có thể dùng 1 điện trơ 10k, một đầu nối với +Vcc, một đầu nối với trở 1K, và đầu kia của trở nối xuống GND, điểm giữa 2 con trở nối vào chân Contrast của LCD). Vì chân này điều chỉnh độ đậm nhạt nên có thể LCD hoạt động bình thường nhưng bạn không nhìn thấy được. C7 và C8 dùng tụ 22p.
                    n
                    ĐT: 0986 492 489

                    Tham khảo:

                    Comment

                    • thangcftd
                      Thành viên chính thức
                      • Dec 2006
                      • 62

                      #55
                      Chân R/W nối với PORTA.1 thì DDRA.1=0; còn những chân khác của PORTA phải có DDRAx=1;
                      bạn nên thử chỉnh lại phần code nhé.
                      Về phần cứng : biến trở bạn nên đấu lại. Hai đầu biến trở nối vào 0V và 5V, chân giữa nối với cont.

                      Chúc bạn thành công!

                      Comment

                      • tanxuyenhg
                        Thành viên mới
                        • May 2008
                        • 9

                        #56
                        mình đã đấu lại biến trở, nhưng nó vẫn kông hoạt động. mình thử sủa lại chưông trình với DDRA=0xFD, nó vẫn không hoạt động. tụ C7 và C8 của mình vẫn hoạt động dược khi mình viết chương trình logic. để mình thử lại với tụ 22.

                        Comment

                        • hungnp
                          Thành viên tích cực
                          • Nov 2005
                          • 178

                          #57
                          Mình mô phỏng cái của bạn bằng Proteus thấy chạy fefé. Bạn dùng biến áp 1k. một đầu nối VCC. một đầu nối GND. Điểm giữa biến áp nối vào chân VEE(pin 3) của LCD. Bạn cho chạy chương trình và chỉnh biến trở theo cả 2 chiều để thay đổi Contrast của LCD chắc là sẽ thấy chữ hiện lên đấy. Không được thử thay cái LCD khác chắc chắn còn chạy xem thế nào.

                          Comment

                          • ttcn
                            Thành viên mới
                            • Apr 2007
                            • 21

                            #58
                            Mình đang dùng bascom để viết cho AVR - LCD, nay muốn tìm hiểu thêm về Code, ai có thể giúp mình với 1 thắc mắc sau:
                            Trong ct bascom thì chân R/W của LCD có thể nối GND (LCD chỉ nhận thôi) muốn viết Code ma chân này cũng nối đất mà không kết nối với AVR thì phải làm sao.
                            Xin cảm ơn các bạn

                            Comment

                            • KH2
                              Registered User
                              • Sep 2008
                              • 54

                              #59
                              Không hiểu bạn định hỏi gì. Việc chân R/W có nối GND hay không và việc dùng trình dịch nào thì có liên quan gì đâu. Cứ thế mà làm thôi.

                              Comment

                              • ttcn
                                Thành viên mới
                                • Apr 2007
                                • 21

                                #60
                                Thưa bạn rằng
                                ý mình hỏi như sau, trong code thì nó bắt phần cứng phải lối chân R/W để LCD và AVR bắt tay nhau, =0 thì W, =1 thì R. xong mình chỉ cần W vào LCD thì có thể tiết kiệm được 1 pin, nếu nối R/W=0 và dùng thư viện chuẩn thì sẽ không bao giờ viết được ký tự lên LCD, cần phải can thiệp vào thư viện như thế nào. thank

                                Comment

                                Về tác giả

                                Collapse

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

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

                                Collapse

                                Đang tải...