Thông báo

Collapse
No announcement yet.

89c2051

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

  • 89c2051

    Em là newbie. Em đang làm mạch điều khiển LED (8 con LED) bằng IC AT89C2051, ngõ ra là P1. Em mắc xong cả rồi (Có cả mạch reset và em dùng thạch anh 12MHz) nhưng không hiểu sao mạch không chạy. Khi mở công tắc thì các LED sáng bất kì (lúc sáng mạnh lúc sáng yếu, có lúc chẳng LED nào sáng). Khi bấm reset thì 6 LED sáng, 2 LED tắt. Em làm đúng theo hướng dẫn trong sách nhưng không hiểu sao lại như vậy nữa. Mong mấy anh giúp cho.
    Click image for larger version

Name:	2012-10-30 16.47.31.jpg
Views:	1
Size:	56.3 KB
ID:	1414752

  • #2
    Nguyên văn bởi phuthinhbk Xem bài viết
    Em là newbie. Em đang làm mạch điều khiển LED (8 con LED) bằng IC AT89C2051, ngõ ra là P1. Em mắc xong cả rồi (Có cả mạch reset và em dùng thạch anh 12MHz) nhưng không hiểu sao mạch không chạy. Khi mở công tắc thì các LED sáng bất kì (lúc sáng mạnh lúc sáng yếu, có lúc chẳng LED nào sáng). Khi bấm reset thì 6 LED sáng, 2 LED tắt. Em làm đúng theo hướng dẫn trong sách nhưng không hiểu sao lại như vậy nữa. Mong mấy anh giúp cho.
    [ATTACH=CONFIG]54623[/ATTACH]

    Bạn ơi. Thường thì mắc giống bạn thì nên dùng điện trở kéo lên nguồn cung cấp thêm dòng cho Led. Vì dòng ra của con 89 hơi nhỏ <<10mA. Hoặc là bạn nối Anot của led tới Vcc. Mà cái con 89C2051 này dễ chết lắm. Lúc trước mình làm mạch cũng dùng nó được một lúc là nó toi luôn ( không biết có phải mua nhầm hàng made in china không nữa). Bạn nên dùnng 89S52 để lập trình cho đỡ tốn kém.

    Comment


    • #3
      bạn chú ý 2 chân analog của P1, xem kỹ datasheet nhé

      Comment


      • #4
        nếu IC chết là không LED nào sáng phải ko mấy anh? IC của em vẫn còn nạp dc chương trình. Mà agnort nói chú ý 2 chân analog của P1 là sao? Giải thích dùm em tí dc ko?

        Comment


        • #5
          cung còn phải xem chương trình bạn nạp IC nữa nếu chương trình sai thi LED nó vẫn sáng nhưng ko chạy. nó chỉ chớp chớp mờ mờ thôi.

          Comment


          • #6
            Đây là code của em, viết bằng Keil C. Em nạp bằng Willar Programmer.
            #include <AT892051.H>

            main() {
            unsigned char j;
            unsigned int i;
            P1=0x00;
            j=0x01;
            while (1) {
            P1=j;
            j++;
            for(i=1;i<=60000;i++) {
            }
            }
            }

            Comment


            • #7
              à quên nói thêm , mạch của em đếm từ 1 đến 2^8. Các LED sáng theo kiểu số nhị phân (ví dụ: 1 là 0000 0001, 2 là 0000 0010)

              Comment


              • #8
                ban mac dung nhung chuong trinh nap sai
                <học học mãi> duy tới
                điện tử -hà nam 01674662632

                Comment


                • #9
                  sai thế nào vậy bạn?

                  Comment


                  • #10
                    Nguyên văn bởi phuthinhbk Xem bài viết
                    Đây là code của em, viết bằng Keil C. Em nạp bằng Willar Programmer.
                    j=1;// 0000.0001 led 1 sáng
                    j=2;// 0000.0010 led 2 sáng
                    j=3;// 0000.0011 led 1 và 2 cùng sáng
                    j=4;// 0000.0100 led 3 sáng
                    j=5;// 0000.0101 led 1 va 3 sáng
                    kết luận: không đúng ý đồ thớt (à quên nói thêm , mạch của em đếm từ 1 đến 2^8. Các LED sáng theo kiểu số nhị phân (ví dụ: 1 là 0000 0001, 2 là 0000 0010))

                    Sửa:
                    #include <AT892051.H>

                    main()
                    {
                    unsigned char j;
                    unsigned int i;
                    j=0x01;
                    while (1)
                    {
                    j<<=1;
                    P1=j;
                    for(i=1;i<=60000;i++) {}
                    }
                    }

                    Comment


                    • #11
                      Bạn lấy dòng ra từ vđk nên ko đc là phải,thường thì người ta nối K của led vào chân vđk,còn A thì nối nguồn thông qua trở (tích cực mức 0),như vậy sẽ đảm bảo về dòng để led sáng đẹp
                      vanduc0211@gmail.com

                      Comment


                      • #12
                        cậu này định làm led vẩy bằng tay tặng người iu ah.? cái mạch này có lâu rồi mà. trên diễn đàn có đấy. chịu có search đi

                        Comment


                        • #13
                          Để em làm lại, mắc giống như viboyth.haui nói thử xem. Thanks mấy anh.

                          Comment


                          • #14
                            Em đã mắc lại mạch theo như viboyth.haui nói (tức là mắc chung cực dương của LED wa trở 470 ôm và mắc lên nguồn, còn cực âm mắc vào IC). LED sáng rất tốt nhưng tiếc là mạch lại giữ nguyên trạng thái, cả 8 LED cứ sáng hoài mà ko thay đổi trạng thái khác. Em đã đổi IC khác nhưng vẫn ko thay đổi dc gì. MOng các anh giúp với.

                            Comment

                            Về tác giả

                            Collapse

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

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

                            Collapse

                            Đang tải...
                            X