Chào mừng các bạn đến với forum lớp DTVT_K7A CNTT Thái Nguyên
Bạn hãy "Đăng nhập" để tham gia cùng chúng tôi

Join the forum, it's quick and easy

Chào mừng các bạn đến với forum lớp DTVT_K7A CNTT Thái Nguyên
Bạn hãy "Đăng nhập" để tham gia cùng chúng tôi

Bạn có muốn phản ứng với tin nhắn này? Vui lòng đăng ký diễn đàn trong một vài cú nhấp chuột hoặc đăng nhập để tiếp tục.

Top posters

banmun08 (721)
[HƯỚNG DẪN KỸ THUẬT] SỬ DỤNG LED ĐƠN Bar_left[HƯỚNG DẪN KỸ THUẬT] SỬ DỤNG LED ĐƠN Bar[HƯỚNG DẪN KỸ THUẬT] SỬ DỤNG LED ĐƠN Bar_right 
Toanlt_GP (368)
[HƯỚNG DẪN KỸ THUẬT] SỬ DỤNG LED ĐƠN Bar_left[HƯỚNG DẪN KỸ THUẬT] SỬ DỤNG LED ĐƠN Bar[HƯỚNG DẪN KỸ THUẬT] SỬ DỤNG LED ĐƠN Bar_right 
tiendientu343 (344)
[HƯỚNG DẪN KỸ THUẬT] SỬ DỤNG LED ĐƠN Bar_left[HƯỚNG DẪN KỸ THUẬT] SỬ DỤNG LED ĐƠN Bar[HƯỚNG DẪN KỸ THUẬT] SỬ DỤNG LED ĐƠN Bar_right 
hany_mitu (281)
[HƯỚNG DẪN KỸ THUẬT] SỬ DỤNG LED ĐƠN Bar_left[HƯỚNG DẪN KỸ THUẬT] SỬ DỤNG LED ĐƠN Bar[HƯỚNG DẪN KỸ THUẬT] SỬ DỤNG LED ĐƠN Bar_right 
TranTuyen_BG (275)
[HƯỚNG DẪN KỸ THUẬT] SỬ DỤNG LED ĐƠN Bar_left[HƯỚNG DẪN KỸ THUẬT] SỬ DỤNG LED ĐƠN Bar[HƯỚNG DẪN KỸ THUẬT] SỬ DỤNG LED ĐƠN Bar_right 
Capkama (271)
[HƯỚNG DẪN KỸ THUẬT] SỬ DỤNG LED ĐƠN Bar_left[HƯỚNG DẪN KỸ THUẬT] SỬ DỤNG LED ĐƠN Bar[HƯỚNG DẪN KỸ THUẬT] SỬ DỤNG LED ĐƠN Bar_right 
VDuy_NĐ (260)
[HƯỚNG DẪN KỸ THUẬT] SỬ DỤNG LED ĐƠN Bar_left[HƯỚNG DẪN KỸ THUẬT] SỬ DỤNG LED ĐƠN Bar[HƯỚNG DẪN KỸ THUẬT] SỬ DỤNG LED ĐƠN Bar_right 
Minh (257)
[HƯỚNG DẪN KỸ THUẬT] SỬ DỤNG LED ĐƠN Bar_left[HƯỚNG DẪN KỸ THUẬT] SỬ DỤNG LED ĐƠN Bar[HƯỚNG DẪN KỸ THUẬT] SỬ DỤNG LED ĐƠN Bar_right 
tieuthantien_3t (173)
[HƯỚNG DẪN KỸ THUẬT] SỬ DỤNG LED ĐƠN Bar_left[HƯỚNG DẪN KỸ THUẬT] SỬ DỤNG LED ĐƠN Bar[HƯỚNG DẪN KỸ THUẬT] SỬ DỤNG LED ĐƠN Bar_right 
Hangvt_gc (171)
[HƯỚNG DẪN KỸ THUẬT] SỬ DỤNG LED ĐƠN Bar_left[HƯỚNG DẪN KỸ THUẬT] SỬ DỤNG LED ĐƠN Bar[HƯỚNG DẪN KỸ THUẬT] SỬ DỤNG LED ĐƠN Bar_right 

Latest topics

» Game dân gian thuần việt 2014 ra mắt phiên bả
by banmun08 Fri May 02, 2014 5:38 pm

» Ứng dụng Bóng đá trực tuyến - Chia sẻ mới dàn
by meocontt89 Fri May 02, 2014 3:44 pm

» Bài bào cáo mạch bấm chuông trò chơi
by tuyenbk2009 Sun Apr 27, 2014 10:48 pm

» Tư vấn học công nghệ thông tin - lập trình
by wyuru Thu Apr 24, 2014 5:17 pm

» Hero Chibi - Khai mở máy chủ S10 - SonGoKu
by Poligon121 Wed Apr 16, 2014 2:15 pm

» mạch đông hồ vạn niên sư dụng DS1307
by ttd2506 Mon Apr 14, 2014 9:45 pm

» Game8 phát 1000 GiftCode mừng máy chủ mới của
by Poligon121 Mon Apr 14, 2014 3:07 pm

» HIỆP KHÁCH 4U.COM OPEN GAME HỒI 10H00 SÁNG
by anata Fri Apr 11, 2014 1:34 pm

» Đua tốp Mu Thần Tài nhận iphone iphone 5s
by muthantai Sun Apr 06, 2014 12:26 pm

» Hiệp khách 4u.com OPEN game hồi 10h00 chủ nh
by anata Sat Apr 05, 2014 7:48 am


5 posters

    [HƯỚNG DẪN KỸ THUẬT] SỬ DỤNG LED ĐƠN

    tiendientu343
    tiendientu343
    Đại Tướng
    Đại Tướng


    Gender : Nam Số bài : 344
    Birthday : 03/01/1990
    Họ và tên : Bùi Duy Tiến Đến từ : Hải Dương
    Ước mơ : CEO
    Status : Biết lái máy bay ! Biết lái xe tăng.

    [HƯỚNG DẪN KỸ THUẬT] SỬ DỤNG LED ĐƠN Empty [HƯỚNG DẪN KỸ THUẬT] SỬ DỤNG LED ĐƠN

    Bài gửi by tiendientu343 Wed Jul 27, 2011 9:17 am


    Hình ảnh của led đơn :

    [HƯỚNG DẪN KỸ THUẬT] SỬ DỤNG LED ĐƠN 97201194058870

    Led chính là diode có khả năng phát sáng Cấu tạo đơn giản như hình trên
    (Cái này các bạn học điện tử đã được học rồi )[b]
    Không dài dòng nữa mình sẽ hướng dẫn các bạn cách lập trình led đơn(vì những bạn ban đầu mới làm quen với vi điều khiển thường gặp khá nhiều khó khăn)
    Ban đầu ai mà chẳng vậy phải ko ?
    Thấu hiểu được điều đó nhóm Hand in Hand chúng tôi mạnh dạn đưa ra các hướng dẫn kỹ thuật . Không dám qua mặt các cao thủ, chỉ mong người sử dụng dễ dàng trong việc lập trình cho các ứng dụng đơn giản.
    Xin cảm ơn !
    /*---------------------------------------------------------------------------*/
    Trước tiên hãy làm quen với một cách chắc ai cũng biết :
    Nguyên lý :
    [b]Led sáng->Trễ->Led Tắt->trễ

    Code:

    #include<reg52.h>
    #include<stdio.h>
    #include<intrins.h>
    void delay(void)
      {
      int i;
      for(i=0;i<30000;i++);
      }
    void main(void)
      {
      while(1)
        {
        P1=0x01;
        delay();
        P1=0x00;
        delay();
        }
      }
    Hình ảnh
    [HƯỚNG DẪN KỸ THUẬT] SỬ DỤNG LED ĐƠN 99913333
    /*-------------------------------------------------------*/
    Nếu bạn muốn điều khiển nhiều led cùng 1 cổng thì sao nhỉ ?
    Đơn giản thôi!
    Có thể bạn xuất từng cổng , nhưng đó chỉ là một cách đơn giản.
    Các bạn có thể sử dụng một cấu trúc đơn giản như sau.
    Bạn muốn một led sáng từ P1.0 đến P1.7 chẳng hạn.
    Giải thuật như sau:
    Code:

    #include<reg52.h>
    #include<stdio.h>
    #include<intrins.h>
    void delay(void)
      {
      int i;
      for(i=0;i<30000;i++);
      }
    void main(void)
      {
          unsigned char x;
      while(1)
        {
       for(x=0x01;x<=0x80;x<<=1)
         {
         P1=x;
         delay();
        }

      }
      }

    /* Như thế là xong một cổng làm thế nào ?
    Tùy vào các bạn dùng các thuật toán khác nhau , nhưng theo kinh nghiệm của mình là dùng mảng là các bạ đơn giản nhất và có thể tạo ra nhiều hiệu ứng nhất.
    các bạn tham khảo code này nhá "
    Code:

     
    // sinh nhat em 18-8-1990;
    // tien dep trai---------
    // hay yeu anh em nhe
    // dung xa a e nhe
    // 1000 dong code dang cho anh
    #include<reg52.h>
    #include<stdio.h>
    #include<intrins.h>
    unsigned int i,j,k;
    unsigned char x,y,z;
    void delay(unsigned int ms)
    {
    int i;
    for(i=0;i<ms;i++)
    {
    TMOD=0x01;
    TH0=0xFC;
    TL0=0x17;
    TR0=1;
    while(!TF0);
    TF0=0;
    TR0=0;
    }
    }
    //nhap nhay
    void maimeo_1(void)
    {
    for(k=0;k<8;k++)
    {
    P0=P1=P2=0xff;
    delay(300);
    P0=P1=P2=0x00;
    delay(300);
    }
    }
    //hai nua trai tim
    void maimeo_2(void)
    {
    for(i=0;i<6;i++)
    {
    P0=0x00;
    P2=0x0F;
    P1=0xFF;
    delay(300);
    P0=0xff;
    P1=0x00;
    P2=0xF0;
    delay(300);

    }
    }
    //nhay so le truoc chan sau
    void maimeo_3(void)
    {
    for(i=0;i<8;i++)
    {
    P0=P1=P2=0x55;
    delay(300);
    P0=P1=P2=0xaa;
    delay(300);
    }
    }
    //nhay chan truoc le sau
    void maimeo_4(void)
    {
    for(i=0;i<8;i++)
    {
    P0=P1=P2=P3=0xaa;
    delay(300);
    P0=P1=P2=P3=0x55;
    delay(300);
    }
    }
    //sang tat duoi nguoc dong thoi
    void maimeo_5(void)
    {
    unsigned char x,y;
    x=y=0xFF;  //255
    i=0x01;         //1
    j=0x80;           //128
    for(k=0;k<8;k++)
    {
    x=x-i;
    y=y-j;
    P0=x;
    P1=P2=y;
    i=i*2;
    j=j/2;
    delay(300);
    }
    }
    //tat duoi
    void maimeo_6(void)
    {                          
    unsigned char x,y;
    x=y=0xFF;//255
    i=0x01;    //1
    j=0x80;      //128
    for(k=0;k<8;k++)
    {
    x=x-i;
    y=y-j;
    P0=y;
    P1=P2=x;
    i=i*2;
    j=j/2;
    delay(300);
    }
    }
    // tat dan het cac led theo chieu thuan
    void maimeo_7(void)
    {
    unsigned char M[]={0xfe,0xfc,0xf8,0xf0,0xe0,0xc0,0x80,0x00};
    unsigned char T[]={0x1f,0x0f,0x07,0x03,0x01,0x00};
    P0=P1=P2=0xff;
    for(i=0;i<8;i++)
    {
    P0=M[i];
    delay(300);
    }
    for(i=0;i<6;i++)
    {
    P1=T[i];
    delay(300);
    }
    for(i=0;i<8;i++)
    {
    P2=M[i];
    delay(300);
    }
    }

    // sang dan het cac led theo chieu thuan
    void maimeo_8(void)
    {
    unsigned char M[]={0x01,0x03,0x07,0x0f,0x1f,0x3f,0x7f,0xff};
    unsigned char T[]={0xe0,0xf0,0xf8,0xfc,0xfe,0xff};
    P0=P1=P2=0x00;
    for(i=0;i<8;i++)
    {
    P0=M[i];
    delay(300);
    }
    for(i=0;i<6;i++)
    {
    P1=T[i];
    delay(300);
    }
    for(i=0;i<8;i++)
    {
    P2=M[i];
    delay(300);
    }

    }
    // sang dan het cac led theo chieu nghich
    void maimeo_9(void)
    {
    unsigned char M[]={0xfe,0xfc,0xf8,0xf0,0xe0,0xc0};
    unsigned char T[]={0x7f,0x3f,0x1f,0x0f,0x07,0x03,0x01,0x00};
    P0=P1=P2=P3=0xff;
    for(i=0;i<6;i++)
    {
    P1=M[i];
    delay(300);
    }
    for(i=0;i<8;i++)
    {
    P0=T[i];
    delay(300);
    }for(i=0;i<8;i++)
    {
    P2=T[i];
    delay(300);
    }
    }
    // tat dan het cac led theo chieu nghich
    void maimeo_10(void)
    {
    unsigned char M[]={0x01,0x03,0x07,0x0f,0x1f,0x3f};
    unsigned char T[]={0x80,0xc0,0xe0,0xf0,0xf8,0xfc,0xfe,0xff};
    P0=P1=P2=0x00;
    for(i=0;i<6;i++)
    {
    P1=M[i];
    delay(300);
    }
    for(i=0;i<8;i++)
    {
    P0=T[i];
    delay(300);
    }
    for(i=0;i<8;i++)
    {
    P2=T[i];
    delay(300);
    }
    }
    // chay dong thoi ca 2 tim
    void maimeo_11(void)
    {
    int i,j;
    for(j=0;j<4;j++)
    {
    x=0xFE;
    for(i=0;i<8;i++)
      {
      P1=P2=P0=x;
      delay(300);
      x=x<<1;
      }
    }
    }

    // sang tran tu tim to xuong tim be
    void maimeo_12(void)
        {  P0=P1=P2=0x00;
         for(i=0;i<8;i++)
             {
            P0=0x04;
            delay(10);
            P0=0x00;
            delay(10);
            }
        for(j=0;j<2;j++)
           {
           P0=0x04;
           delay(300);
           P0=0x0E;
           delay(300);
           P0=0x1F;
           delay(300);
           P1=0x01;
           P0=0x3F;
           delay(300);
           P1=0x03;
           P0=0x7F;
           delay(300);
           P1=0x07;
           P0=0xFF;
           delay(300);
           P1=0x2F;
           delay(300);
           P1=0x3F;
           delay(300);
           P2=0x80;
           delay(300);
           P2=0xC1;
           delay(300);
           P2=0xE3;
           delay(300);
           P2=0xF7;
           delay(300);
           P2=0xFF;
           delay(300);
           P2=P1=P0=0x00;
          
          
          



           }
        }
    // tat tran tu tim to xuong be
    void maimeo_13(void)
      {
        P0=P1=P2=0xFF;
        for(j=0;j<2;j++)
           {
           P0=0xFB;
           delay(300);
           P0=0xF1;
           delay(300);
           P0=0xE0;
           delay(300);
           P0=0xC0;
           P1=0xFE;
           delay(300);
           P0=0x80;
           P1=0xFC;
           delay(300);
           P0=0x00;
           P1=0xF8;
           delay(300);
           P1=0xD0;
           delay(300);
           P1=0xC0;
           delay(300);
           P2=0x7F;
           delay(30);
           P2=0x3E;
           delay(300);
           P2=0x1C;
           delay(300);
           P2=0x08;
           delay(300);
           P2=0x00;
           delay(300);
           P2=P1=P0=0xFF;
          
          
          



           }
      }

    // TRAI TIM CHAY sang led don
    void maimeo_14(void)
      {
      int i,j;
      for(j=0;j<2;j++)
        {
          x=0x01;
         for(i=0;i<8;i++)
           {
          P0=P1=P2=x;
          delay(300);
          x=x<<1;
          }

        }
      }
      // nhap nhay da hieu ung
    void maimeo_15(void)
        {
        int i,j;
        for(i=0;i<3;i++)
           {
          P0=P1=P2=0xFF;
          delay(300);
          P0=P1=P2=0x00;
          delay(300);
          }
         for(j=0;j<5;j++)
         {
         P1=P0=0xFF;
         P2=0x00;
         delay(300);
         P1=P0=0x00;
         P2=0xFF;
         delay(300);
         }
        }
    // led don khuyech dao toan cau ha ha
    void maimeo_16(void)
      {
      int i,j;
      unsigned char M[]={0x01,0x02,0x04,0x08,0x10,0x20,0x40,0x80};
      P0=P1=P2=0x00;
      for(i=0;i<2;i++)
         {
         P0=0x80;
         P1=0x01;
         delay(300);
         P1=P0=0x00;
         delay(300);
         }
      for(j=0;j<4;j++)
     {
      for(i=0;i<4;i++)
          {
         P0=M[i];
         P1=M[7-i];
         P2=M[i];
         delay(400);
         }

      P0=0x80;
      P1=0x01;
      for(i=0;i<4;i++)
        {
        P0=P2=M[7-i];
        P1=M[i];
        delay(400);

        }
          i=0;
       
        for(k=0;k<8;k++)
           {
          P0=M[7-k];
          P1=M[k];
          P2=M[k];
          delay(300);
          }
        k=0;
        for(k=0;k<4;k++)
         {
         P0=M[k];
         P1=M[7-k];
         P2=M[7-k];
         delay(300);
         }
     }


              

      }
    // chuong trinh led tuon dai dac biet
    void maimeo_17(void)
        {
       int j;
         unsigned char T[]={0x01,0x03,0x07,0x0f,0x1f,0x3f,0x7F,0xFF};

           j=0;
       
         for(j=0;j<8;j++)
           {
          P0=T[j];
          P1=T[j];
          P2=T[7-j];
          delay(300);

          }
          j=0;
         for(j=0;j<8;j++)
           {
          P0=T[7-j];
          P1=T[7-j];
          P2=T[j];
          delay(300);
          }
      }

    void main(void)
        {
       while(1)
         {
        
         maimeo_1();
         maimeo_2();
         maimeo_3();
         maimeo_4();
         maimeo_5();
         maimeo_6();
         maimeo_7();
         maimeo_8();
         maimeo_9 ();
         maimeo_10();
         maimeo_2();
         maimeo_17();
         maimeo_3();
         maimeo_11();
         maimeo_12();
         maimeo_13();
         maimeo_14();
         maimeo_15();
         maimeo_16();
         maimeo_17();
         maimeo_10();
         maimeo_7();
         maimeo_9();
         maimeo_2();
         maimeo_16();
         }
       }


    Đó là code bài trái tim tặng bạn gái của mình:
    Hình ảnh sau:

    [HƯỚNG DẪN KỸ THUẬT] SỬ DỤNG LED ĐƠN 67699582

    //Bạn nào muốn điều khiển nhiều cổng cùng một lúc thì sao ?
    Đơn giản thôi!
    Các bạn sẽ xuất đồng thời các cổng nhé!

    Xem chương trình sau:
    Code:

    unsigned char x,y;
    x=y=0xFF;  //255
    i=0x01;         //1
    j=0x80;           //128
    for(k=0;k<8;k++)
    {
    x=x-i;
    y=y-j;
    P0=x;
    P1=P2=y;
    i=i*2;
    j=j/2;
    delay(300);
    }
    uhm như vậy là xong rồi nhé!
    Do vẽ trên proteus đơn giản nên mình ko đưa file mô phỏng ? bạn nào cần cứ yêu cầu.
    //-----------Còn một cách nữa -----------------
    Là dùng các hàm trong thư viện
    Code:

    Tính năng và cách dùng như sau:
    Tên hàm và tính năng
    #ifndef __INTRINS_H__
    #define __INTRINS_H__

    extern void          _nop_    (void);
    extern bit          _testbit_ (bit);
    extern unsigned char _cror_    (unsigned char, unsigned char);
    extern unsigned int  _iror_    (unsigned int,  unsigned char);
    extern unsigned long _lror_    (unsigned long, unsigned char);
    extern unsigned char  _crol_  (unsigned char, unsigned char);
    extern unsigned int  _irol_    (unsigned int,  unsigned char);
    extern unsigned long _lrol_    (unsigned long, unsigned char);
    extern unsigned char _chkfloat_(float);
    extern void          _push_    (unsigned char _sfr);
    extern void          _pop_    (unsigned char _sfr);

    #endif


    // crol : quay trái
      cror: Quay phải
    Tương tự iror : dịch phải
                irol : dịch phải
     
                 
    Dựa vào cấu trúc hàm ở trên các bạn thử mô phỏng nhé !

    Ngoài ra tùy vào sự sáng tạo của mỗi người có thể còn có rất nhiều hiệu ứng khác , cách dùng khác nữa chứ ko chỉ có những cách mình giới thiệu trên đây.
    ------------Chúc các bạn thành công -------------------------
    Idea Idea Idea Idea Idea Idea Idea Idea Idea Idea Idea Idea
    langtu_htd5
    langtu_htd5
    Thượng Sĩ
    Thượng Sĩ


    Gender : Nam Số bài : 87
    Birthday : 10/01/1991
    Họ và tên : Hoàng Thế Nam Đến từ : Hà Tây
    Ước mơ : Học đã, tính sau!
    Status : ĐTVT K8D

    [HƯỚNG DẪN KỸ THUẬT] SỬ DỤNG LED ĐƠN Empty Re: [HƯỚNG DẪN KỸ THUẬT] SỬ DỤNG LED ĐƠN

    Bài gửi by langtu_htd5 Sun Aug 07, 2011 10:42 pm

    Anh cho em hỏi sao em làm như của anh rồi, chỉ khác là ở cổng P0 em ko để điện trở kéo (hay cái gì đấy) vậy mà các đèn nối với cổng P0 ko sáng. vậy là sao hả anh.

    [img][HƯỚNG DẪN KỸ THUẬT] SỬ DỤNG LED ĐƠN Unledmeu [/img]

    Mà tên cái điện trở kéo trong proteus là gì thế hả anh?
    tiendientu343
    tiendientu343
    Đại Tướng
    Đại Tướng


    Gender : Nam Số bài : 344
    Birthday : 03/01/1990
    Họ và tên : Bùi Duy Tiến Đến từ : Hải Dương
    Ước mơ : CEO
    Status : Biết lái máy bay ! Biết lái xe tăng.

    [HƯỚNG DẪN KỸ THUẬT] SỬ DỤNG LED ĐƠN Empty Re: [HƯỚNG DẪN KỸ THUẬT] SỬ DỤNG LED ĐƠN

    Bài gửi by tiendientu343 Sun Aug 07, 2011 10:59 pm

    Thì cổng P0 có cấu tạo là kiểu colecter hở.Vì vậy chú phải có điện trở kéo khi đó P0 mới đc thiết lập chức năng I/O như các cổng khác
    Hình đây nè :
    [HƯỚNG DẪN KỸ THUẬT] SỬ DỤNG LED ĐƠN 18904306
    langtu_htd5
    langtu_htd5
    Thượng Sĩ
    Thượng Sĩ


    Gender : Nam Số bài : 87
    Birthday : 10/01/1991
    Họ và tên : Hoàng Thế Nam Đến từ : Hà Tây
    Ước mơ : Học đã, tính sau!
    Status : ĐTVT K8D

    [HƯỚNG DẪN KỸ THUẬT] SỬ DỤNG LED ĐƠN Empty Re: [HƯỚNG DẪN KỸ THUẬT] SỬ DỤNG LED ĐƠN

    Bài gửi by langtu_htd5 Mon Aug 08, 2011 6:21 am

    Thanks anh, em làm được rồi. Nhưng sao em thử lắp với 8 con trở 10k như trong sách thì nó lại ko lên hả anh
    langtu_htd5
    langtu_htd5
    Thượng Sĩ
    Thượng Sĩ


    Gender : Nam Số bài : 87
    Birthday : 10/01/1991
    Họ và tên : Hoàng Thế Nam Đến từ : Hà Tây
    Ước mơ : Học đã, tính sau!
    Status : ĐTVT K8D

    [HƯỚNG DẪN KỸ THUẬT] SỬ DỤNG LED ĐƠN Empty Re: [HƯỚNG DẪN KỸ THUẬT] SỬ DỤNG LED ĐƠN

    Bài gửi by langtu_htd5 Mon Aug 08, 2011 7:02 am

    anh cho em cái sơ đồ nguyên lý chi tiết các linh kiện của mạch này đi anh. cả thông số các link kiện nữa anh nha. Thanhks anh!
    tiendientu343
    tiendientu343
    Đại Tướng
    Đại Tướng


    Gender : Nam Số bài : 344
    Birthday : 03/01/1990
    Họ và tên : Bùi Duy Tiến Đến từ : Hải Dương
    Ước mơ : CEO
    Status : Biết lái máy bay ! Biết lái xe tăng.

    [HƯỚNG DẪN KỸ THUẬT] SỬ DỤNG LED ĐƠN Empty Re: [HƯỚNG DẪN KỸ THUẬT] SỬ DỤNG LED ĐƠN

    Bài gửi by tiendientu343 Mon Aug 08, 2011 12:15 pm

    nếu trở 10k mà mắc cho 1 led thì đc .Nhưng trong bài a mắc 2 con led song song cơ mà .Như vậy thì dòng nuôi ko đủ để sáng e nhé!
    e nên dùng trở có thông số nhỏ hơn như 4,7k hoặc 470ohm chảng hạn .
    Chúc e thành công!
    Đây là mạch mà e cần có đầy đủ các thông số kỹ thuật:
    [HƯỚNG DẪN KỸ THUẬT] SỬ DỤNG LED ĐƠN 74572255


    Còn đây là sơ đồ cẢ NGUYÊN LÝ VÀ CODE CHO ANH E NÀO LÀM TẶNG BẠN GÁI :

    Attachments
    [HƯỚNG DẪN KỸ THUẬT] SỬ DỤNG LED ĐƠN Attachmenttrai tim em yeu.zip
    TRAI TIM EM YEU
    You don't have permission to download attachments.
    (314 Kb) Downloaded 59 times
    langtu_htd5
    langtu_htd5
    Thượng Sĩ
    Thượng Sĩ


    Gender : Nam Số bài : 87
    Birthday : 10/01/1991
    Họ và tên : Hoàng Thế Nam Đến từ : Hà Tây
    Ước mơ : Học đã, tính sau!
    Status : ĐTVT K8D

    [HƯỚNG DẪN KỸ THUẬT] SỬ DỤNG LED ĐƠN Empty Re: [HƯỚNG DẪN KỸ THUẬT] SỬ DỤNG LED ĐƠN

    Bài gửi by langtu_htd5 Mon Aug 08, 2011 4:57 pm

    Thanks anh nha. Anh cho em hỏi thêm tại sao ở các cổng P0, P1, P2 lại dùng thêm tran vậy anh.
    Capkama
    Capkama
    Admin
    Admin


    Gender : Nam Số bài : 271
    Birthday : 14/05/1989
    Họ và tên : Dương Vũ Kiên Đến từ : DTVT K7A
    Ước mơ : We are one family
    Status : It only takes a second to say I love you, but it will take a lifetime to show you how much...

    [HƯỚNG DẪN KỸ THUẬT] SỬ DỤNG LED ĐƠN Empty Re: [HƯỚNG DẪN KỸ THUẬT] SỬ DỤNG LED ĐƠN

    Bài gửi by Capkama Mon Aug 08, 2011 9:09 pm

    Nếu em đk LED trực tiếp và ko qua trans thì em chỉ đk dc 1 led tương ứng 1 chân, còn đối với điều khiển nhiều LED (Cả 1 chữ chẳng hạn), nếu đk bằng mức 1 thi VĐK ko đủ dòng nuôi LED ->LED sáng yếu thậm chí ko sáng, còn đk mức 0 thì dẫn tới VĐK quả tải do dòng đổ về VĐK quá lớn gây hỏng VĐK. Trans ở đây chỉ có tác dụng như khóa để cấp điện VCC cho LED.
    langtu_htd5
    langtu_htd5
    Thượng Sĩ
    Thượng Sĩ


    Gender : Nam Số bài : 87
    Birthday : 10/01/1991
    Họ và tên : Hoàng Thế Nam Đến từ : Hà Tây
    Ước mơ : Học đã, tính sau!
    Status : ĐTVT K8D

    [HƯỚNG DẪN KỸ THUẬT] SỬ DỤNG LED ĐƠN Empty Re: [HƯỚNG DẪN KỸ THUẬT] SỬ DỤNG LED ĐƠN

    Bài gửi by langtu_htd5 Tue Aug 09, 2011 12:40 am

    Anh xem cho em đoạn code này (hiệu ứng xếp bi-đuổi nhau rồi đứng lại)

    Code:
    #include<reg52.h>
    #include<stdio.h>
    #include<intrins.h>
    void delay(unsigned int ms)
    {
       int i;
       for(i=0;i<ms;i++)
       {
          TMOD=0x01;
          TH0=0xFC;
          TL0=0x17;
          TR0=1;
          while(!TF0);
          TF0=0;
          TR0=0;
       }
    }
    void main()
    {
       P0=P1=P2=0;
       while(1)
       {
          int n,m,k;
          for (n=0;n<7;n++)
             for (m=1;m<=8-n;m++)
             {
                
                k=0x01;
                P1=P1&&k;
                k=k*2;
                delay(300);   
             }
       }
    }

    sao mà nó nháy cái lại mất hả anh.


    Được sửa bởi langtu_htd5 ngày Tue Aug 09, 2011 6:38 am; sửa lần 3.
    tiendientu343
    tiendientu343
    Đại Tướng
    Đại Tướng


    Gender : Nam Số bài : 344
    Birthday : 03/01/1990
    Họ và tên : Bùi Duy Tiến Đến từ : Hải Dương
    Ước mơ : CEO
    Status : Biết lái máy bay ! Biết lái xe tăng.

    [HƯỚNG DẪN KỸ THUẬT] SỬ DỤNG LED ĐƠN Empty Re: [HƯỚNG DẪN KỸ THUẬT] SỬ DỤNG LED ĐƠN

    Bài gửi by tiendientu343 Tue Aug 09, 2011 12:50 am

    Thì có chốt đc đâu mà nó chẳng mất. Nếu chú dùng con ic chốt 74hc573 hoặc con nào có chốt thì mới có hiệu ứng này.
    Còn bài của chú cứ xuất ra dữ liệu liên tiếp ở các cổng thì ko làm đc hiệu ứng đó đâu nhé!
    langtu_htd5
    langtu_htd5
    Thượng Sĩ
    Thượng Sĩ


    Gender : Nam Số bài : 87
    Birthday : 10/01/1991
    Họ và tên : Hoàng Thế Nam Đến từ : Hà Tây
    Ước mơ : Học đã, tính sau!
    Status : ĐTVT K8D

    [HƯỚNG DẪN KỸ THUẬT] SỬ DỤNG LED ĐƠN Empty Re: [HƯỚNG DẪN KỸ THUẬT] SỬ DỤNG LED ĐƠN

    Bài gửi by langtu_htd5 Tue Aug 09, 2011 6:36 am

    em chỉ dùng cổng P1 thôi mà. Anh hướng dẫn cụ thể hơn cho em với. E cũng dùng thử con chốt đó rồi nhưng ko biết dùng thế nào. anh sửa luôn code cho em với.
    Nếu muốn dùng cho nhiều cổng thì mỗi cổng phải có 1 con chốt hả anh
    tiendientu343
    tiendientu343
    Đại Tướng
    Đại Tướng


    Gender : Nam Số bài : 344
    Birthday : 03/01/1990
    Họ và tên : Bùi Duy Tiến Đến từ : Hải Dương
    Ước mơ : CEO
    Status : Biết lái máy bay ! Biết lái xe tăng.

    [HƯỚNG DẪN KỸ THUẬT] SỬ DỤNG LED ĐƠN Empty Re: [HƯỚNG DẪN KỸ THUẬT] SỬ DỤNG LED ĐƠN

    Bài gửi by tiendientu343 Tue Aug 09, 2011 9:29 am

    A xin lỗi hôm qua chưa suy nghĩ kĩ. hiệu ứng của em là các led đuổi nhau sau đó dừng lại phải ko ? ok thuật toán như vậy thì ko cần ic chốt cũng đc. Em hãy dùng mảng như anh nhé! dễ điều khiển hơn nhiều . ok ! còn cách dùng các IC thông dụng nhóm a sẽ có một bài cụ thể hướng dẫn chi tiết trong vài ngày tới.
    Em xem nhé! chắc là đúng ý em.
    Code:

     // cntt thai nguyen
    // duoc viet boi nhom handinhand dtvtk7a
    // tra loi cau hoi tren [You must be registered and logged in to see this link.]
    #include<reg52.h>
    #include<stdio.h>
    #include<intrins.h>
    unsigned int i,j,k;
    void delay(unsigned int ms)
    {
    unsigned int a;
    unsigned char b;
    for(a=0;a<ms;a++)
    {
    for(b=0;b<125;b++)
    {
    }
    }
    }
    void ok(void)
      {
      unsigned char mang[36]={0x01,0x02,0x04,0x08,0x10,0x20,0x40,0x80,
                              0x81,0x82,0x84,0x88,0x90,0xA0,0xC0,0xC1,
                        0xC2,0xC4,0xC8,0xD0,0xE0,0xE1,0xE2,0xE4,
                        0xE8,0xF0,0xF1,0xF2,0xF4,0xF8,0xF9,0xFA,
                        0xFC,0xFD,0xFE,0xFF};
      for(i=0;i<37;i++)                                   //8                             //8                        //8                              //8                    //5
          {
         P1=mang[i];
         delay(500);
         }
      }
    void main(void)
      {
      while(1)
        {
        ok();
        }
      }
    Đây là mô phỏng và keil C
    Attachments
    [HƯỚNG DẪN KỸ THUẬT] SỬ DỤNG LED ĐƠN AttachmentHandinHand.zip
    Thuật toán xếp bi (chạy đuổi)
    You don't have permission to download attachments.
    (26 Kb) Downloaded 13 times
    langtu_htd5
    langtu_htd5
    Thượng Sĩ
    Thượng Sĩ


    Gender : Nam Số bài : 87
    Birthday : 10/01/1991
    Họ và tên : Hoàng Thế Nam Đến từ : Hà Tây
    Ước mơ : Học đã, tính sau!
    Status : ĐTVT K8D

    [HƯỚNG DẪN KỸ THUẬT] SỬ DỤNG LED ĐƠN Empty Re: [HƯỚNG DẪN KỸ THUẬT] SỬ DỤNG LED ĐƠN

    Bài gửi by langtu_htd5 Tue Aug 09, 2011 9:49 am

    đúng rồi đấy anh. Thanks anh nhé. không biết bao giờ em mới làm được như các anh
    langtu_htd5
    langtu_htd5
    Thượng Sĩ
    Thượng Sĩ


    Gender : Nam Số bài : 87
    Birthday : 10/01/1991
    Họ và tên : Hoàng Thế Nam Đến từ : Hà Tây
    Ước mơ : Học đã, tính sau!
    Status : ĐTVT K8D

    [HƯỚNG DẪN KỸ THUẬT] SỬ DỤNG LED ĐƠN Empty Re: [HƯỚNG DẪN KỸ THUẬT] SỬ DỤNG LED ĐƠN

    Bài gửi by langtu_htd5 Tue Aug 09, 2011 9:54 am

    nhưng thuật toán này phải viết hết các giá trị ra rồi xuất. Nếu điều khiển nhiều cổng hơn thì hơi dài. Anh có thế tạo vòng lặp cho ngắn được ko anh.

    à mà anh hướng dẫn em các cách tạo hàm trễ và thời gian trễ mà nó tạo ra


    vd như vòng lặp mà ko làm gì thì thời gian trễ tính như thế nào, hàm trễ dùng timer em có đọc qua rồi nhưng anh có thể nói lại về cách tính và tạo ra hàm trễ thời gian cho em với
    tiendientu343
    tiendientu343
    Đại Tướng
    Đại Tướng


    Gender : Nam Số bài : 344
    Birthday : 03/01/1990
    Họ và tên : Bùi Duy Tiến Đến từ : Hải Dương
    Ước mơ : CEO
    Status : Biết lái máy bay ! Biết lái xe tăng.

    [HƯỚNG DẪN KỸ THUẬT] SỬ DỤNG LED ĐƠN Empty Re: [HƯỚNG DẪN KỸ THUẬT] SỬ DỤNG LED ĐƠN

    Bài gửi by tiendientu343 Tue Aug 09, 2011 11:02 am

    không dài đâu.Chú có thể xuất đồng thời ra các cổng
    Code:


     // cntt thai nguyen
    // duoc viet boi nhom handinhand dtvtk7a
    // tra loi cau hoi tren [You must be registered and logged in to see this link.]
    #include<reg52.h>
    #include<stdio.h>
    #include<intrins.h>
    unsigned int i,j,k;
    void delay(unsigned int ms)
    {
    unsigned int a;
    unsigned char b;
    for(a=0;a<ms;a++)
    {
    for(b=0;b<125;b++)
    {
    }
    }
    }
    void ok(void)
      {
      unsigned char mang[36]={0x01,0x02,0x04,0x08,0x10,0x20,0x40,0x80,
                              0x81,0x82,0x84,0x88,0x90,0xA0,0xC0,0xC1,
                        0xC2,0xC4,0xC8,0xD0,0xE0,0xE1,0xE2,0xE4,
                        0xE8,0xF0,0xF1,0xF2,0xF4,0xF8,0xF9,0xFA,
                        0xFC,0xFD,0xFE,0xFF};
      for(i=0;i<37;i++)                                  //8                            //8                        //8                              //8                    //5
          {
        P1=mang[i];
        P2=mang[36-i]; // em có thể xuất đồng thời các cổng như anh
        P3=mang[i]
        delay(500);
        }
      }
    void main(void)
      {
      while(1)
        {
        ok();
        }
      }

    Em có thể dùng như a ở bên trên. Đối với chương trình xuất trực tiếp ra như e nói , theo anh nếu mà có thuật toán vòng for thì sẽ rất khó nghĩ đấy. Tạm thời chú cứ dùng chương trình như anh điều khiển vậy.
    khi nào nghĩ ra anh sẽ bảo .Còn đơn giản thì mình dùng IC chốt.
    Mai ngày kia a rảnh anh sẽ viết cho e.
    //-----------------Còn đây là hướng dẫn tính thời gian ----------------------------------
    1. Tình thời gian trong vòng lặp for
    Mỗi một vòng lặp for ko làm gì có tg 8us. (Vậy làm cái vòng lặp 125 lần sẽ thành 125*8=1000us=1ms)
    2. Tính tg dùng timer: Cái này em phải hiểu rõ về timer của 8051. Thanh ghi đếm timer là 16bit, khi timer hoạt động (lúc cho TR0 hoặc TR1=1) thì timer sẽ đếm từ giá trị chúng ta nạp vào thanh ghi timer đến 65536 (ffff). Khi timer đếm đến 65536 nó trẽ bật cờ TF. Vậy cách tính timer:
    Tg timer = 65536-(tg nạp vào TH và TL)
    Giờ vấn đề của chúng ta là xét xem chúng ta muốn cần trễ bao nhiêu tg thôi (thông thường bạn nên lấy bội của 5 và 10us như 1000us,2000us,...50000us đối với trễ cao, mục đích là để lấy số vòng lặp lại timer cho chẵn-cái này tùy bạn). Ví dj ta lấy trễ 1ms là 1000us => tg timer = 1000
    1000 = 65536 - x
    x = 64536 là số cần nạp vào TH và TL. chuyển số này sang số hexa sẽ là FC18
    viết cái code TH0=0xfc
    TL0=0x18
    langtu_htd5
    langtu_htd5
    Thượng Sĩ
    Thượng Sĩ


    Gender : Nam Số bài : 87
    Birthday : 10/01/1991
    Họ và tên : Hoàng Thế Nam Đến từ : Hà Tây
    Ước mơ : Học đã, tính sau!
    Status : ĐTVT K8D

    [HƯỚNG DẪN KỸ THUẬT] SỬ DỤNG LED ĐƠN Empty Re: [HƯỚNG DẪN KỸ THUẬT] SỬ DỤNG LED ĐƠN

    Bài gửi by langtu_htd5 Wed Aug 17, 2011 12:01 am

    cái này dùng nguồn 5v hả anh
    Minh
    Minh
    Trung Úy
    Trung Úy


    Gender : Nam Số bài : 257
    Birthday : 22/01/1990
    Họ và tên : Lê Đức Minh Đến từ : ĐTVT.K7A
    Ước mơ : Làm việc tại Tập Đoàn Viettel.
    Status : Tu dưỡng đạo đức, học văn hóa, tập sống cho tốt hơn.

    [HƯỚNG DẪN KỸ THUẬT] SỬ DỤNG LED ĐƠN Empty Re: [HƯỚNG DẪN KỸ THUẬT] SỬ DỤNG LED ĐƠN

    Bài gửi by Minh Wed Aug 17, 2011 12:30 am

    Led trái tim dùng trở thanh trở treo chắc 5V là dc ah` Pro
    Capkama
    Capkama
    Admin
    Admin


    Gender : Nam Số bài : 271
    Birthday : 14/05/1989
    Họ và tên : Dương Vũ Kiên Đến từ : DTVT K7A
    Ước mơ : We are one family
    Status : It only takes a second to say I love you, but it will take a lifetime to show you how much...

    [HƯỚNG DẪN KỸ THUẬT] SỬ DỤNG LED ĐƠN Empty Re: [HƯỚNG DẪN KỸ THUẬT] SỬ DỤNG LED ĐƠN

    Bài gửi by Capkama Wed Aug 17, 2011 12:59 am

    Nguồn 5V để nuôi VĐK, còn nguồn nuôi led có thẻ là 5V, 9V, 12V tùy các bạn. Miễn sao các bạn tính toán đủ 15-20mA 1 LED (Ko hơn) cho led sáng đẹp là được. Lưu ý là tránh sử dụng cách mắc 1 trở nối tiếp 1 chùm led song song vì như vậy 1 led chết dẫn đến cả chùm led ko sáng được, rất khó cho việc tìm và thay thế led chết.
    [HƯỚNG DẪN KỸ THUẬT] SỬ DỤNG LED ĐƠN 16484078
    langtu_htd5
    langtu_htd5
    Thượng Sĩ
    Thượng Sĩ


    Gender : Nam Số bài : 87
    Birthday : 10/01/1991
    Họ và tên : Hoàng Thế Nam Đến từ : Hà Tây
    Ước mơ : Học đã, tính sau!
    Status : ĐTVT K8D

    [HƯỚNG DẪN KỸ THUẬT] SỬ DỤNG LED ĐƠN Empty Re: [HƯỚNG DẪN KỸ THUẬT] SỬ DỤNG LED ĐƠN

    Bài gửi by langtu_htd5 Wed Aug 17, 2011 8:28 am

    em thấy nguồn nuôi vdk và led đều đánh dấu là vcc vậy nó có dùng chung nguồn được ko anh
    tiendientu343
    tiendientu343
    Đại Tướng
    Đại Tướng


    Gender : Nam Số bài : 344
    Birthday : 03/01/1990
    Họ và tên : Bùi Duy Tiến Đến từ : Hải Dương
    Ước mơ : CEO
    Status : Biết lái máy bay ! Biết lái xe tăng.

    [HƯỚNG DẪN KỸ THUẬT] SỬ DỤNG LED ĐƠN Empty Re: [HƯỚNG DẪN KỸ THUẬT] SỬ DỤNG LED ĐƠN

    Bài gửi by tiendientu343 Wed Aug 17, 2011 11:42 am

    đc chứ . Vi điều khiển nguồn phải là 5V. Còn led thì nguồn phải đủ áp để led sáng là đc. 5 V là okj rồi
    langtu_htd5
    langtu_htd5
    Thượng Sĩ
    Thượng Sĩ


    Gender : Nam Số bài : 87
    Birthday : 10/01/1991
    Họ và tên : Hoàng Thế Nam Đến từ : Hà Tây
    Ước mơ : Học đã, tính sau!
    Status : ĐTVT K8D

    [HƯỚNG DẪN KỸ THUẬT] SỬ DỤNG LED ĐƠN Empty Re: [HƯỚNG DẪN KỸ THUẬT] SỬ DỤNG LED ĐƠN

    Bài gửi by langtu_htd5 Thu Aug 18, 2011 3:27 pm

    em làm chưa quen, vẽ mạch in cũng vất vả quá mấy anh ơi
    Minh
    Minh
    Trung Úy
    Trung Úy


    Gender : Nam Số bài : 257
    Birthday : 22/01/1990
    Họ và tên : Lê Đức Minh Đến từ : ĐTVT.K7A
    Ước mơ : Làm việc tại Tập Đoàn Viettel.
    Status : Tu dưỡng đạo đức, học văn hóa, tập sống cho tốt hơn.

    [HƯỚNG DẪN KỸ THUẬT] SỬ DỤNG LED ĐƠN Empty Re: [HƯỚNG DẪN KỸ THUẬT] SỬ DỤNG LED ĐƠN

    Bài gửi by Minh Thu Aug 18, 2011 10:19 pm

    langtu_htd5 đã viết:em làm chưa quen, vẽ mạch in cũng vất vả quá mấy anh ơi

    va chạm nhiều và có đầu óc là cao tay ngay.
    langtu_htd5
    langtu_htd5
    Thượng Sĩ
    Thượng Sĩ


    Gender : Nam Số bài : 87
    Birthday : 10/01/1991
    Họ và tên : Hoàng Thế Nam Đến từ : Hà Tây
    Ước mơ : Học đã, tính sau!
    Status : ĐTVT K8D

    [HƯỚNG DẪN KỸ THUẬT] SỬ DỤNG LED ĐƠN Empty Re: [HƯỚNG DẪN KỸ THUẬT] SỬ DỤNG LED ĐƠN

    Bài gửi by langtu_htd5 Sat Aug 20, 2011 1:54 pm

    cho em hỏi khi đổ đồng thì chọn như thế nào để làm mạch in thuận lợi nhất:

    [HƯỚNG DẪN KỸ THUẬT] SỬ DỤNG LED ĐƠN 13138232342087256399_574_0
    Hangvt_gc
    Hangvt_gc
    Ban cán sự lớp
    Ban cán sự lớp


    Gender : Nữ Số bài : 171
    Birthday : 15/10/1990
    Họ và tên : Vũ Thúy Hằng Đến từ : Ha Tay
    Ước mơ : giao vien day Toan
    Status : hoi kho tinh mot chut,hoi co hu mot chut,va khong nu tinh chut nao.

    [HƯỚNG DẪN KỸ THUẬT] SỬ DỤNG LED ĐƠN Empty Re: [HƯỚNG DẪN KỸ THUẬT] SỬ DỤNG LED ĐƠN

    Bài gửi by Hangvt_gc Sat Aug 20, 2011 4:05 pm

    Obstacle name: ko quan tâm.
    Obstacle Type: Chọn Copper pour (Đổ đồng).
    With:(Đang có số 10 đó). Khi đã chọn Copper pour rồi thì bỏ qua cái này. Nó là độ rộng của khung Obstacle.
    Obstacle Layer: Lớp đổ đồng (Vẽ mạch lớp nào chọn lớp đó)
    Clearance: Khoảng cách từ đồng đến dây hay đến chân lk.(Thường để độ rộng bằng độ rộng dây. Clearance càng nhỏ thì mạch càng đẹp và càng đỡ tốn nước rửa mạch nhưng khi hàn dễ bị dính thiếc sang mass do khoảng cách giữa mass và chân quá gần)
    Z oder: Ko quan tâm. Cũng ko rõ nó có td gì. Có thể là độ bo tròn góc hoặc độ đậm của lớp mass (Mình toàn để trống khi vẽ mạch)
    NetAttachment: Nếu để "-" thì chỗ nào trống nó sẽ đổ đồng, còn chọn "GND" thì nó sẽ đổ đất, toàn bộ dây GND sẽ bị dính vào lớp đồng. Nếu muốn chống nhiễu mạch thì để GND, còn nếu ko thì nên chọn là "-".

    Sponsored content


    [HƯỚNG DẪN KỸ THUẬT] SỬ DỤNG LED ĐƠN Empty Re: [HƯỚNG DẪN KỸ THUẬT] SỬ DỤNG LED ĐƠN

    Bài gửi by Sponsored content


      Hôm nay: Wed May 08, 2024 5:09 am