Thông báo

Collapse
No announcement yet.

Hiển thị LCD 16x2 dùng Pic 16F877A với MPLAP IDE

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

  • Hiển thị LCD 16x2 dùng Pic 16F877A với MPLAP IDE



    Em tìm mãi mà không rõ lỗi ở đâu ? mà ko thấy hiển thị.
    Nhờ các bác chỉ giùm

    Em xin cám ơn


    Mô phỏng : LCD-PIC.zip
    Connections:
    -------------------------------------
    LCD | PIC |
    -------------------------------------
    Register Select -->RB2 |
    Enable -->RB1 |
    -------------------------------------
    D4 -->RD0 |
    D5 -->RD1 |
    D6 -->RD2 |
    D7 -->RD3 |
    -------------------------------------

    CLOCK: 20MHz crystal oscillator
    Also, any other frequency <20MHz could be used. But we need to edit the below line:
    ?
    1

    #define _XTAL_FREQ 20e6
    Code:
    #include<pic.h>
    #define _XTAL_FREQ 20e6
    __CONFIG(0x3F3A);
    #define RS RB2
    #define EN RB1
    #define databits PORTD
    /*----------------PIC INITIALIZATION------------*/
    void pic_init()
    {
    TRISB2 = 0;
    TRISB1 = 0;
    TRISD = 0;
    }

    /*-------------LCD FUNCTIONS BEGIN--------------*/
    void LCD_STROBE(void)
    {
    EN = 1;
    __delay_us(1);
    EN = 0;
    }

    void data(unsigned char c)
    {
    RS = 1;
    __delay_us(50);
    databits = (c >> 4);
    LCD_STROBE();
    databits = (c);
    LCD_STROBE();
    }

    void cmd(unsigned char c)
    {
    RS = 0;
    __delay_us(50);
    databits = (c >> 4);
    LCD_STROBE();
    databits = (c);
    LCD_STROBE();
    }

    void clear(void)
    {
    cmd(0x01);
    __delay_ms(2);
    }

    void lcd_init()
    {
    __delay_ms(15);
    cmd(0x38);
    __delay_ms(1);
    cmd(0x38);
    __delay_us(100);
    cmd(0x38);
    cmd(0x28); // Function set (4-bit interface, 2 lines, 5*7Pixels)
    cmd(0x28); // Function set (4-bit interface, 2 lines, 5*7Pixels)
    cmd(0x0c); // Make cursorinvisible
    clear(); // Clear screen
    cmd(0x6); // Set entry Mode(auto increment of cursor)
    }

    void string(const char *q)
    {
    while (*q) {
    data(*q++);
    }
    }

    /*-------------LCD END--------------------*/

    main()
    {
    __delay_ms(50);
    pic_init();
    lcd_init();
    TRISC = 0;
    while (1) {
    cmd(0x80);
    string("HELLO DTVN");
    cmd(0xc0);
    string("IT IS DTVN:-)");


    }
    }
    ********** Build successful! **********
    Last edited by luongthitu; 17-10-2012, 17:33.

  • #2
    xài cái này nè bạn ơi, sao phải khổ thế viết code vừa dài dễ sai nữa
    lcd_driver.zip

    Comment


    • #3
      Vẫn chưa hiển thị lên được...bạn nào giúp mình với

      Comment


      • #4
        bạn coi code của mình nè mình hiển thị 2 dòng chữ mình thường lên nè
        #include <18f4680.h>
        #device ICD=TRUE
        #fuses HS,NOWDT,NOPROTECT,NOLVP,MCLR
        #use delay(clock=10000000)

        #include <lcd_driver.c>

        void main()
        {
        lcd_init();

        while (1)
        {
        lcd_gotoxy(0,0);
        lcd_putc("PIC DEMO 2 PLUSH");
        lcd_gotoxy(0,1);
        lcd_putc(" PIC KIT 2 ");
        }

        }

        Comment


        • #5
          cái này là CCS mà???

          Comment


          • #6
            mplab ide là nền mà, vẫn xài trên ccs, mình cũng mplab ide chứ đâu

            Comment


            • #7
              vậy bạn mô phỏng giúp mình rồi upload lên diễn đàn với

              cám ơn bạn nhiều

              Comment


              • #8
                mô phỏng dễ mà bạn, có cái lcd với pic hết rồi, dùng proteus chưa tới 5 phút nữa, bạn thử đi ko đ thì tối về mình mô phỏng cho, h đang trên lớp học embeded system

                Comment


                • #9
                  Nguyên văn bởi ptit_et Xem bài viết
                  mô phỏng dễ mà bạn, có cái lcd với pic hết rồi, dùng proteus chưa tới 5 phút nữa, bạn thử đi ko đ thì tối về mình mô phỏng cho, h đang trên lớp học embeded system

                  dùng ccs cho dễ bạn ơi
                  Last edited by quangnhat; 19-10-2012, 19:59.
                  Quang Nhat
                  ---------------------------------------
                  Yahoo :quangnhat85ls
                  Mail :
                  Nhận thiết kế và ép nhựa cho đồ điện tử

                  Comment


                  • #10
                    mình dùng ccs mừ, add nó vào mplab thôi mà lõi vẫn là ccs

                    Comment


                    • #11
                      Nguyên văn bởi ptit_et Xem bài viết
                      mình dùng ccs mừ, add nó vào mplab thôi mà lõi vẫn là ccs
                      Mình ko làm dc như bạn nói, nó toàn báo lỗi.
                      Bạn có thể:

                      làm ơn mô phõng trong file đính kèm rồi gửi cho mình được ko?

                      thanks

                      http://www.dientuvietnam.net/forums/...de-lcd-pic.zip


                      Comment


                      • #12
                        Help me.......................?

                        File hex

                        :100000000A128A11FB2E00308A000408840A820733
                        :100010000034483445344C344C344F342034443468
                        :10002000543456344E340034493454342034493432
                        :0E003000533420344434543456344E340034A7
                        :100DF60083010A128A11842F8316031306118610A3
                        :100E060088010800831203138614092F0A2F640031
                        :100E1600831203138610080001300A128A11612713
                        :100E26000A128A110D30F300FB30F200F20B192F73
                        :100E3600F30B192F1E2F0800F300312F73088400BF
                        :100E46000A128A1103200A128A110A128A113E27EF
                        :100E56000A128A110130F2007208F307730884003F
                        :100E66000A128A1103200A128A110038031D3C2F28
                        :100E76003D2F212F0800F10083120313061553306E
                        :100E8600F000F00B442F7108F00004300310F00C52
                        :100E9600FF3E031D492F70088312031388000A12B0
                        :100EA6008A1105270A128A11710883120313880012
                        :100EB6000A128A1105270A128A110800F100831204
                        :100EC600031306115330F000F00B672F7108F00082
                        :100ED60004300310F00CFF3E031D6C2F70088312C4
                        :100EE600031388000A128A1105270A128A1171084B
                        :100EF6008312031388000A128A1105270A128A111F
                        :100F060008000230F8004430F700A930F600F60B6E
                        :100F16008A2FF70B8A2FF80B8A2F64000A128A1180
                        :100F2600FF260A128A110A128A11BA270A128A1190
                        :100F360083160313870180300A128A1161270A1269
                        :100F46008A1101300A128A111F270A128A11C0302B
                        :100F56000A128A1161270A128A110C300A128A11A2
                        :100F66001F270A128A119E2F0A128A110028623040
                        :100F7600F5006530F400F40BBE2FF50BBE2FC32F22
                        :100F860038300A128A1161270A128A110730F500D1
                        :100F96007D30F400F40BCD2FF50BCD2F38300A122F
                        :100FA6008A1161270A128A11A630F400F40BD92F90
                        :100FB600640038300A128A1161270A128A11283011
                        :100FC6000A128A1161270A128A1128300A128A1116
                        :100FD60061270A128A110C300A128A1161270A1235
                        :100FE6008A110A128A110F270A128A1106300A126A
                        :0A0FF6008A1161270A128A1108000F
                        :02400E003A3F37
                        :00000001FF

                        Comment


                        • #13
                          bạn đang dùng trình dịch nào thế??? CCS, HT PIC??? nếu là HT PIC thì bạn tham khảo ở đây nhé:

                          http://www.payitforward.edu.vn/wordp...ech-pic/bai-4/

                          Comment


                          • #14
                            Nguyên văn bởi xe đạp Xem bài viết
                            bạn đang dùng trình dịch nào thế??? CCS, HT PIC??? nếu là HT PIC thì bạn tham khảo ở đây nhé:

                            http://www.payitforward.edu.vn/wordp...ech-pic/bai-4/
                            Mình dùng trình dịch MPLAB IDE v8.56
                            Mình viết bằng CCS thì oki rồi nhưng ko hiểu sao dùng IDE thì lại ko dc?

                            Mình làm theo hướng dẫn của bài học nhưng trình dịch vẫn báo lỗi là sao nhỉ?
                            Bạn giúp mình với

                            Cám ơn nhiều.

                            Error [800] lcd18.as; 45. undefined symbol "MCLREN"
                            Error [800] lcd18.as; 49. undefined symbol "BORV21"

                            ********** Build failed! **********
                            file đính kèm: LCD-DTVN.zip
                            Last edited by luongthitu; 23-10-2012, 09:41.

                            Comment


                            • #15
                              Nguyên văn bởi luongthitu Xem bài viết
                              Mình dùng trình dịch MPLAB IDE v8.56
                              Mình viết bằng CCS thì oki rồi nhưng ko hiểu sao dùng IDE thì lại ko dc?
                              Mplab IDE chỉ là môi trường. Bác dùng trình biên dịch cụ thể nào HTPIC, CCS hay Mikro C

                              Giải pháp điện tử của bạn

                              Comment

                              Về tác giả

                              Collapse

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

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

                              Collapse

                              Đang tải...
                              X