Thông báo

Collapse
No announcement yet.

Hiển Thị LCD dùng PIC16F877

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

  • Hiển Thị LCD dùng PIC16F877

    Đây là bài viết hướng dẫn lập trình ứng dụng vi điều khiển PIC16F877
    trong điều khiển LCD hiển thị nội dung TEXT.
    Bài viết này đã được lập trình và chạy thữ rất tốt trên phần cứng, do đó các bạn có thể tải về tham khảo và lắp ráp.
    Mục đích của bài này là hướng dẫn các thành viên mới tiếp cận với vdk PIC.
    Sau đây là đoạn code của chương trình viết bằng C:

    /*
    * Test configuration:
    MCU: PIC16F877A
    Oscillator: HS, 08.0000 MHz
    Ext. Modules: LCD 2x16
    */


    char *text = "SUNJSC-TECHNOLOGY";

    void main() {
    Lcd_Init(&PORTD); // Lcd_Init_EP4, see Autocomplete

    LCD_Cmd(LCD_CLEAR); // Clear display
    LCD_Cmd(LCD_CURSOR_OFF); // Turn cursor off
    Delay_ms(1000);
    LCD_Out(1,1, text); // Print text to LCD, 1st row, 1st column
    Delay_ms(1000);
    LCD_Out(2,2,"SAI GON-Tp.HCM"); // Print text to LCD, 2nd row, 6th column
    }
    Attached Files

  • #2
    Tiếp theo là sơ đồ mạch kết nối LCD với VDK PIC
    Chúng ta lưu ý là giao thức kết nối là 4bit data.
    Sau khi chúng ta kết nối cẩn thận rồi kiểm tra nguồn thì tiến hành cho chạy.
    Sơ đồ mạch như sau:
    Attached Files

    Comment


    • #3
      File HEX

      Và nếu các bạn không muốn mất thời gian và muốn lắp mạch chạy thử ngay thì có thể load/ tải file HEX này nạp cho VDK PIC16F877 là xong.
      Attached Files

      Comment


      • #4
        Cho em hỏi 1 chút. LCD của em là LCD 20x2 thì nối thế nào ạ ? Vì nó có tới 16 chân ra ( không kể 2 chân của con LED ).
        |

        Comment


        • #5
          LCD 20x2

          Bác đánh cái mã lên google searh là có datasheet của nó liền à! Chúc vui?

          Comment


          • #6
            Em đã seach mấy ngày rồi, giờ vẫn đang seach tiếp.
            |

            Comment


            • #7
              Nguyên văn bởi nhoczin Xem bài viết
              Cho em hỏi 1 chút. LCD của em là LCD 20x2 thì nối thế nào ạ ? Vì nó có tới 16 chân ra ( không kể 2 chân của con LED ).
              Con LCD 16 chân này cũng như 14 chân thôi mà.Chân 16 cùng chân 1 nối Vss,còn chân 15 +chân 2 nối với Vcc

              Comment


              • #8
                LCD 20x2

                Mình có cái này bác xem thử nó có 16 chân đo! Chúc vui
                Attached Files

                Comment


                • #9
                  Thanks các bác, chiều này em lật ngược con LCD lên thì thấy tương tự con 16x2
                  |

                  Comment


                  • #10
                    Các bác cho em sơ đồ đấu ma trận phím 8x8 với píc6f877a và màn lcd với.em muốn làm một mạch quảng cáo với dong chữ ''chúc mừng năm mới''

                    Comment


                    • #11
                      pic16f877a


                      bác microduyphi có sơ đồ nguyên lý của kit píc 16f877a má bác post o trên không. em mới học nên cần nghiên cứu ấy mà
                      |

                      Comment


                      • #12
                        cho hoi,ai co so do nguyen ky manh hien thi LCD dung pic 16f877 thi cho minh voi.xin cam on!

                        Comment


                        • #13
                          kết nối lcd voi pic tùy ban dùng kết nối 8 bit hay 4 bit
                          nếu ban chỉ cần nối các chân data và các chân điều khiển w,rs,e là được
                          còn bạn mà dùng lcd_lib_4bit.c thì bạn chỉ cândf mở file đó xem các chân ở trong đó!

                          Comment


                          • #14
                            #include <16F877.h>
                            #include <def_877.h>
                            #device *=16 ADC=8
                            #FUSES NOWDT, HS, NOPUT, NOPROTECT, NODEBUG, NOBROWNOUT, NOLVP, NOCPD, NOWRT,xt
                            #use delay(clock=20000000)
                            #include <lcd.c>

                            void main()
                            {

                            trisd = 0x00;
                            LCD_init();
                            while(1)
                            {
                            lcd_gotoxy(3,1);
                            Printf(LCD_putc,"D");
                            delay_ms(200);
                            lcd_gotoxy(4,1);
                            Printf(LCD_putc,"I");
                            delay_ms(200);
                            lcd_gotoxy(5,1);
                            Printf(LCD_putc,"E");
                            delay_ms(200);
                            lcd_gotoxy(6,1);
                            Printf(LCD_putc,"N");
                            delay_ms(200);
                            lcd_gotoxy(7,1);
                            Printf(LCD_putc,"T");
                            delay_ms(200);
                            lcd_gotoxy(8,1);
                            Printf(LCD_putc,"U");
                            delay_ms(100);
                            lcd_gotoxy(9,1);
                            Printf(LCD_putc," ");
                            delay_ms(100);
                            lcd_gotoxy(10,1);
                            Printf(LCD_putc,"V");
                            delay_ms(100);
                            lcd_gotoxy(11,1);
                            Printf(LCD_putc,"N");
                            delay_ms(100);
                            }
                            }
                            Bạn dùng hàm có sẵn lcd.c
                            RD0 - RS
                            RD1 - RW
                            RD2 - E
                            RD4 ..RD7 - D4..D7
                            Last edited by ngchien; 22-10-2009, 19:49.
                            Chuyên cung cấp inverter dạng sin chuẩn
                            Email :

                            Comment


                            • #15
                              can thong tin

                              Nguyên văn bởi tranbalam Xem bài viết
                              cho hoi,ai co so do nguyen ky manh hien thi LCD dung pic 16f877 thi cho minh voi.xin cam on!
                              hiện tôi đang làm đồ án về lập trình PIC hiện thị trên LCD ,nếu ai có sơ đồ nguyên lý và mạch in thì liên hệ với tôi qua sô điện thoại 01698505929,tôi sẽ mua nó với giá thỏa thuận đôi bên ,nhưng ở tp HCM thôi nha ,chân thành cảm ơn!

                              Comment

                              Về tác giả

                              Collapse

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

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

                              Collapse

                              Đang tải...
                              X