[help] các bạn ơi chỉ mình về phần LCD được không ?

Collapse
X
 
  • Giờ
  • Show
Clear All
new posts
  • quang0207
    Thành viên mới
    • Mar 2012
    • 11

    #1

    [help] các bạn ơi chỉ mình về phần LCD được không ?

    đây là code C của minh
    #include<AT89X52.H>




    unsigned int i,j;
    const unsigned char h1[16]={" adsadsaddad "};
    const unsigned char h2[16]={" ccsdd "};
    void delay(unsigned int n)
    {
    for(i=0;i<n;i++)
    {;}
    }
    void lenh_viet()
    {
    P1_0=0;//chon thanh ghi lenh
    P1_2=1;//
    P1_2=0;
    delay(100);
    }
    void dl_viet()
    {
    P1_0=1;//chon thanh ghi du lieu
    P1_2=1;
    P1_2=0;
    delay(100);
    }
    void setup_lcd()
    {
    P1_2=1;P1_0=1;P1_1=0;
    P2=0x38; lenh_viet();delay(10000);
    P2=0x0C; lenh_viet();
    P2=0x01; lenh_viet();
    P2=0x06; lenh_viet();
    P2=0x80; lenh_viet();delay(10000);
    }
    void main()
    {
    setup_lcd();
    for(j=0;j<16;i++)
    {P2=h1[j];dl_viet();
    }
    P2=0xC0;
    lenh_viet();
    delay(10000);

    for(j=0;j<16;i++)
    {P2=h2[j];dl_viet();}
    while(1){}//DUNG YEN
    }
    còn đây là mô phỏng.nó sai ở đâu rồi hay sao ý .lúc play chỉ sáng mỗi cái màn hình hic
    Attached Files
    Last edited by quang0207; 06-10-2012, 20:17.
  • quang0207
    Thành viên mới
    • Mar 2012
    • 11

    #2
    up giúp em với

    Comment

    • tdm
      Thành viên tích cực
      • Sep 2005
      • 349

      #3
      Nguyên văn bởi quang0207 Xem bài viết
      up giúp em với
      xem lại vòng lặp for j++ chứ không phải là i++
      |

      Comment

      • quang0207
        Thành viên mới
        • Mar 2012
        • 11

        #4
        Nguyên văn bởi tdm Xem bài viết
        xem lại vòng lặp for j++ chứ không phải là i++
        ừm mình nhầm chỗ đó mà nó vẫn không chạy nản thiệt.chỉnh tần số quét là 250khz kà cũng không chạy hic

        Comment

        • tdm
          Thành viên tích cực
          • Sep 2005
          • 349

          #5
          Nguyên văn bởi quang0207 Xem bài viết
          ừm mình nhầm chỗ đó mà nó vẫn không chạy nản thiệt.chỉnh tần số quét là 250khz kà cũng không chạy hic
          chạy bình thường.
          Code:
          #include<AT89X52.H>
          
          
          
          
          unsigned int i,j;
          const unsigned char h1[16]={" adsadsaddad "};
          const unsigned char h2[16]={" ccsdd "};
          void delay(unsigned int n)
          {
          for(i=0;i<n;i++)
          {;}
          }
          void lenh_viet()
          {
          P1_0=0;//chon thanh ghi lenh
          P1_2=1;//
          P1_2=0;
          delay(100);
          }
          void dl_viet()
          {
          P1_0=1;//chon thanh ghi du lieu
          P1_2=1;
          P1_2=0;
          delay(100);
          }
          void setup_lcd()
          {
          P1_2=1;P1_0=1;P1_1=0;
          P2=0x38; lenh_viet();delay(10000);
          P2=0x0C; lenh_viet();
          P2=0x01; lenh_viet();
          P2=0x06; lenh_viet();
          P2=0x80; lenh_viet();delay(10000);
          }
          void main()
          {
          setup_lcd();
          for(j=0;j<16;j++)
          {P2=h1[j];dl_viet();
          }
          P2=0xC0;
          lenh_viet();
          delay(10000);
          
          for(j=0;j<16;j++)
          {P2=h2[j];dl_viet();}
          while(1){}//DUNG YEN
          }
          Attached Files
          |

          Comment

          • phan_it
            Thành viên tích cực
            • Dec 2005
            • 366

            #6
            tham khảo vi du về giao tiếp AT89C51 với LCD 15x2 tại Phan Information Technology trong muc Học tập/project 8051
            0912666017

            Comment

            • quang0207
              Thành viên mới
              • Mar 2012
              • 11

              #7
              Nguyên văn bởi tdm Xem bài viết
              chạy bình thường.
              Code:
              #include<AT89X52.H>
              
              
              
              
              unsigned int i,j;
              const unsigned char h1[16]={" adsadsaddad "};
              const unsigned char h2[16]={" ccsdd "};
              void delay(unsigned int n)
              {
              for(i=0;i<n;i++)
              {;}
              }
              void lenh_viet()
              {
              P1_0=0;//chon thanh ghi lenh
              P1_2=1;//
              P1_2=0;
              delay(100);
              }
              void dl_viet()
              {
              P1_0=1;//chon thanh ghi du lieu
              P1_2=1;
              P1_2=0;
              delay(100);
              }
              void setup_lcd()
              {
              P1_2=1;P1_0=1;P1_1=0;
              P2=0x38; lenh_viet();delay(10000);
              P2=0x0C; lenh_viet();
              P2=0x01; lenh_viet();
              P2=0x06; lenh_viet();
              P2=0x80; lenh_viet();delay(10000);
              }
              void main()
              {
              setup_lcd();
              for(j=0;j<16;j++)
              {P2=h1[j];dl_viet();
              }
              P2=0xC0;
              lenh_viet();
              delay(10000);
              
              for(j=0;j<16;j++)
              {P2=h2[j];dl_viet();}
              while(1){}//DUNG YEN
              }

              cảm ơn anh protues kì quá để yên thì chạy lắp như ngoài không chạy hic

              Comment

              Về tác giả

              Collapse

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

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

              Collapse

              Đang tải...