Dành cho người mới tìm hiểu 8051

Collapse
X
 
  • Giờ
  • Show
Clear All
new posts
  • ngohaibac
    Moderator
    • Sep 2005
    • 600

    #46
    chết thật có mấy quyển sách thôi mà các bác om sòm quá. Các bác chỉ cần mấy chục ra hàng photo gần kí túc xá bkhn mà mua hoặc nhờ ai mua cho thì mua. Chớ mang sách điện tử về mà nghiền dài thế đọc mỏi mắt lắm. Đằng nào cũng mất công để in. Mua đi cho thấy Cường còn kiếm chút lời chứ phí công thầy bỏ ra.
    Em cho các bác quyển C51 Primes đây. Đọc cũng rất hay đấy về viết code trong Keil C( phân tích rất rõ):
    Technical sale at WT Microelectronics S'pore
    Hỗ trợ dự án sử dụng các hãng Texas Instrument, STMicro, Freescale, Fairchild, International Rectifier, Ublox, Lumiled, Maxim
    Liên hệ: 0915.560.511 hoặc ngo.haibac@wtmec.com

    Comment

    • svngheo
      Thành viên tích cực
      • Oct 2005
      • 126

      #47
      Cái này anh Quỳnh giảng cũng kĩ nhỉ nhưng mà kỉ quá mình lai thay rườm rà!anh quynh chưa nói tới quét led à!ở đây minh mạn phép bạn Hải Bắc giúp đở anh em cái wets led nho nhỏ từ 00->99.Mình cũng mới biết về 8051 (nhờ Hải Bắc) nên cí gì sai sót mong anh em bỏ qua cho.
      Khó nhất trên đời làm trang nam tử
      Ý chí vững vàng mà tình cảm lại mênh mang

      Comment

      • svngheo
        Thành viên tích cực
        • Oct 2005
        • 126

        #48
        O day minh dung hai led anot chung.Chan P3 dieu khien hai anot chung,chan P2 dieu khien 7 dau vao led.
        Khó nhất trên đời làm trang nam tử
        Ý chí vững vàng mà tình cảm lại mênh mang

        Comment

        • svngheo
          Thành viên tích cực
          • Oct 2005
          • 126

          #49
          Chương trình như sau:
          #include <regx51.h>
          unsigned char i;
          unsigned char j;
          int tg;
          const unsigned char Font[]={0xC0,0xF9,0xA4,0xB0,0x99,0x92,0x82,0xF8,0x80,0x9 0};
          unsigned char a[3]={0x01,0x02};

          void tang()
          {
          i=i+1;
          if (i==10)
          {j=j+1;
          i=0;
          if (j==10) j=0;
          };
          }
          void delay(unsigned int ms)
          {
          unsigned int k,l;
          for (k=0;k<ms;k++)
          for (l=0;l<120;l++)
          {};
          }
          void main()

          {while(1)
          {
          tg=121;
          while(tg--)
          {P3=a[0];
          P2=Font[i];
          delay(3);
          P3=a[1];
          P2=Font[j] ;//hi?n th? s? 1 trên led 1
          delay(3);};
          tang();
          }
          }
          Khó nhất trên đời làm trang nam tử
          Ý chí vững vàng mà tình cảm lại mênh mang

          Comment

          • svngheo
            Thành viên tích cực
            • Oct 2005
            • 126

            #50
            bạn quynh hình như viết vắn tắc nên câu cú có đôi lúc thiếu ;
            mình tiếp tục nói sơ về chương trình thôi!
            Khó nhất trên đời làm trang nam tử
            Ý chí vững vàng mà tình cảm lại mênh mang

            Comment

            • svngheo
              Thành viên tích cực
              • Oct 2005
              • 126

              #51
              or đây có khai báo mảng là hơi mới phải không:
              cái mảng Font đó có 10 phần tử:
              mình giải thích phần tử thứ nhất tức là Font[0] là:C0 tuc la 11000000 so 0 hiển thị trên led .Ở đây số 1 đầu tiên mình không wan tâm vì mình không nối vào led!
              Khó nhất trên đời làm trang nam tử
              Ý chí vững vàng mà tình cảm lại mênh mang

              Comment

              • svngheo
                Thành viên tích cực
                • Oct 2005
                • 126

                #52
                Mình edit lại bài cho dễ đọc nhé!
                Code:
                #include <regx51.h>
                unsigned char i;
                unsigned char j;
                int tg;
                const unsigned char Font[]={0xC0,0xF9,0xA4,0xB0,0x99,0x92,0x82,0xF8,0x80,0x90};
                unsigned char a[3]={0x01,0x02};
                
                void tang()
                {
                 i=i+1;
                 if (i==10)
                  {j=j+1;
                   i=0;
                   if (j==10) j=0;
                };
                }
                void delay(unsigned int ms)
                {
                unsigned int k,l;
                for (k=0;k<ms;k++)
                for (l=0;l<120;l++)
                {};
                }
                void main()
                
                {while(1)
                {
                tg=121;
                while(tg--)
                {P3=a[0];
                P2=Font[i];
                delay(3);
                P3=a[1];
                P2=Font[j] ;//hi?n th? s? 1 trên led 1
                delay(3);};
                tang();
                }
                }
                Khó nhất trên đời làm trang nam tử
                Ý chí vững vàng mà tình cảm lại mênh mang

                Comment

                • svngheo
                  Thành viên tích cực
                  • Oct 2005
                  • 126

                  #53
                  con so 1 tiep theo ung voi chu g(trên kí hiệu led)
                  con so 0 tiep theo ung voi chu f
                  tương tự
                  0->e
                  0->d
                  0->c
                  0->b
                  0->a
                  Khó nhất trên đời làm trang nam tử
                  Ý chí vững vàng mà tình cảm lại mênh mang

                  Comment

                  • svngheo
                    Thành viên tích cực
                    • Oct 2005
                    • 126

                    #54
                    Các font khác giải thích tương tự cho so 1 2 3 4 5 6 7 8 9!
                    tiếp theo là cái mảng a[]:
                    a[0] ứng với P3.0=1
                    a[1] ứng với P3.1=1
                    Khó nhất trên đời làm trang nam tử
                    Ý chí vững vàng mà tình cảm lại mênh mang

                    Comment

                    • svngheo
                      Thành viên tích cực
                      • Oct 2005
                      • 126

                      #55
                      tiếp theo là hàm tang:
                      ham tang này mục đích là để khi số bên trái hiển thị từ 0->9 thì số bên phải tăng 1!
                      Tiếp theo là hàm delay bạn quynh da giai thich roi
                      trong cai ham main thì minh cũng đã dùng một hàm main nho nhỏ(tg=121;
                      while(tg--)) mục đích là mình gây trễ được 1s(mục đích gây trễ một giây để mình còn nhìn thây led hiển thị):Trong một giây đó mình thực hiện wetled nhiều lần.Mỗi laanf wet gây trể 3 ms!
                      Khó nhất trên đời làm trang nam tử
                      Ý chí vững vàng mà tình cảm lại mênh mang

                      Comment

                      • sadmind
                        Thành viên mới
                        • Jun 2006
                        • 20

                        #56
                        không hiểu có ai copy and paste mấy đoạn code này chạy thử chưa nhỉ?
                        Mấy đoạn code về led tôi chạy thử thấy báo lỗi tùm lum.C phân biệt chữ hoa với chữ thường mà bạn viết While thì nó bó tay.Đề nghị trước khi post các đoạn code dành cho người mới học các bạn chạy thử trước,sau đó chỉ việc copy lên,chả nhẽ copy cugnx bị lỗi font?
                        Thx

                        Comment

                        • Thanhtn
                          Thành viên mới
                          • Jun 2006
                          • 19

                          #57
                          Chào các bạn !
                          Mình là Thành U40 rồi, nhưng rất thích học 89c51.
                          Các bạn cho Thành hỏi cách giao tiếp của NE555 để lấy xung cấp cho AT89C51 với, và phải khai báo gì cho 89C51 hiểu là mình dùng xung ngoài không ?
                          Mong các bạn giúp đỡ và đừng cười mình nha.
                          Quan niệm của mình là không giấu dốt , các gì không biết thì phải học hỏi .
                          E-mail của Thành là : Ngocquynh.ds@gmail.com hoặc Ngocquynhdesign@yahoo.com - Đt : 090.714.7968.
                          Mong nhận được sự giúp đỡ của các bạn.
                          Chào thân ái.
                          Last edited by Thanhtn; 04-08-2006, 16:26.

                          Comment

                          • svngheo
                            Thành viên tích cực
                            • Oct 2005
                            • 126

                            #58
                            Nguyên văn bởi sadmind
                            không hiểu có ai copy and paste mấy đoạn code này chạy thử chưa nhỉ?
                            Mấy đoạn code về led tôi chạy thử thấy báo lỗi tùm lum.C phân biệt chữ hoa với chữ thường mà bạn viết While thì nó bó tay.Đề nghị trước khi post các đoạn code dành cho người mới học các bạn chạy thử trước,sau đó chỉ việc copy lên,chả nhẽ copy cugnx bị lỗi font?
                            Thx
                            Hic bạn phải viết lại chứ !Đó là đoạn code bạn tham khảo .Còn tất nhiên là mấy đoạn code chạy bình thường mà !Mình nghx bạn cứ thử trên proteus đi rồi thử mạch thật cũng được !Như nhau mình làm rồi!
                            Khó nhất trên đời làm trang nam tử
                            Ý chí vững vàng mà tình cảm lại mênh mang

                            Comment

                            • hiodong
                              Thành viên tích cực
                              • Sep 2005
                              • 433

                              #59
                              Có bác nào viết chương trình điều khiển động cơ cho em học tập với , điều khiển led thì em cũng tàm tạm rồi, thanks các bác trước
                              Cung cấp Oscilocope , Inverter , Switching , DC power supply , AC millivolt meter ....

                              Comment

                              • svngheo
                                Thành viên tích cực
                                • Oct 2005
                                • 126

                                #60
                                Nguyên văn bởi hiodong
                                Có bác nào viết chương trình điều khiển động cơ cho em học tập với , điều khiển led thì em cũng tàm tạm rồi, thanks các bác trước
                                Điều khiển như thế nào!Đảo chiều thì dùng cầu H ,rơle .Ngaòi ra điều khiển tốc độ thì bác băm xung .Ý bác thế nào!
                                Khó nhất trên đời làm trang nam tử
                                Ý chí vững vàng mà tình cảm lại mênh mang

                                Comment

                                Về tác giả

                                Collapse

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

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

                                Collapse

                                Đang tải...