Thông báo

Collapse
No announcement yet.

Tổng hợp các đề tài cho 8051-ASM-Keil(Học tập)

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

  • #46
    Chủ đề này hay quá. Up lên cho anh em xem vậy.
    Mình cũng đang tập tành viết C cho 8051. Mấy cái ví dụ cụ thể và file mô phỏng nàỳ thật sự rất hữu ích!

    Comment


    • #47
      anh nào có chương trình điều khiển 4led ma trận 8*8 chạy chữ "happy new year " thì cho em xin với?viết bằng asm nhé!
      ĐẠI HỌC SƯ PHẠM KỸ THUẬT I

      Nợ cha một sự nghiệp - Nợ mẹ một nàng dâu

      Comment


      • #48
        chào cả nhà mình thấy topic này khá là sôi nổi nhưng không đúng như đầu để topic cho lắm. mình không thấy nhiều đề tai hay ví dụ để cùng tham khảo và thảo luận. Mong sao mọi người biết nhiều ví dụ về VDK thì post lên đây để anh em cùng test và sửa chữa thảo luận đưa ra phương án tối ưu nhất
        Mình thì không được học gì về VDK nhưng cũng muốn biết thêm nên tham gia chút với anh em cho thêm phần sôi nổi nhỉ
        Điện tử Nga Nhung
        Số 43 ngõ 259 Yên Hòa, Phường Yên Hòa, Cầu Giấy, Hà Nội
        ĐT 0988441961 hoặc 0979387040

        Comment


        • #49
          cảm ơn các bài viết rất có giá trị (cống hiến)

          Comment


          • #50
            cac ban oi minh neu viet chuong trinh cho vdk bang c co dc ko vay?

            Comment


            • #51
              Nguyên văn bởi xuanchien309 Xem bài viết
              cac ban oi minh neu viet chuong trinh cho vdk bang c co dc ko vay?
              Tất nhiên là được rồi và còn dễ học hơn là ASM, Mình có tài liệu này hướng dẫn lập trình C cho VDK 8051, bạn tải về tham khảo thêm nhá: http://www.ziddu.com/download/976741...h8051.pdf.html
              Chúc thành công!

              Comment


              • #52
                các báccho e hỏi 1 chút em down bài mẫu asm về nhưng mà lỗi phông tùm lum , không biết mở bằng phần mềm nào để khỏi bị lỗi thế các bác , e xử mãi mà không đc. vì em mới học nên muốn tìm hiểu kỹ các câu lệnh mà không dịch đc

                Comment


                • #53
                  chào các bác, em dùng MCS 51 ICE để biên dịch chương trình asm, làm thế nào để chuyển sang file *.hex thế các bác?
                  Phần mềm mô phỏng proteus có cho nạp file asm không?

                  To chủ topic: thanks bác vì mở ra mọt đề tài có ích cho toàn bộ anh em. Bác có sơ đồ nguyên lý của các code asm không? nếu có bác post lên cho a e học tập nhé!
                  - -

                  Comment


                  • #54
                    viết code cho 8951 điều khiển đèn giao thông như thế nào jay
                    pác nào cóa code gửi cho e nha thanks!!!!!!
                    Duong The Ngoan(Mr.)/Sales1
                    Tel: 0903398248
                    Skype: proface.hlc.sales1

                    Comment


                    • #55
                      bạn xem cai này nhe!


                      #include<AT89X51.h>
                      unsigned char thoi_gian0,thoi_gian1,thoi_gian2,thoi_gian3;
                      unsigned int over=0;
                      unsigned char ma[10]={192,249,164,176,153,146,130,248,128,144};

                      void delay(unsigned char time)
                      {
                      unsigned char x,y;
                      for(x=0;x<time;x++)
                      {
                      for(y=0;y<13;y++);

                      }
                      }
                      void time0() interrupt 1
                      { //cu 200 us thi tran 1 lan
                      over++;
                      if(over==4950) //gia tri tinh toan la 5000, tinh chinh lai 4950
                      {
                      over=0;
                      thoi_gian0--;
                      thoi_gian1--;
                      thoi_gian2--;
                      thoi_gian3--;
                      }
                      }

                      void h_thi0()
                      {
                      unsigned char k,chuc,donvi;
                      for(k=0;k<2;k++)
                      {
                      donvi=thoi_gian0%10;
                      chuc=thoi_gian0/10;
                      }
                      P2=ma[donvi];
                      P0=0xfe;
                      delay(1);
                      P0=0xff;
                      delay(1);
                      P0=0xfb;
                      delay(1);
                      P0=0xff;
                      delay(1);
                      P2=ma[chuc];
                      P0=0xfd;
                      delay(1);
                      P0=0xff;
                      delay(1);
                      P0=0xf7;
                      delay(1);
                      P0=0xff;
                      delay(1);
                      }


                      void h_thi1()
                      {
                      unsigned char k,chuc,donvi;
                      for(k=0;k<2;k++)
                      {
                      donvi=thoi_gian1%10;
                      chuc=thoi_gian1/10;
                      }
                      P2=ma[donvi];
                      P0_4=0;
                      delay(1);
                      P0_4=1;
                      delay(1);
                      P0_6=0;
                      delay(1);
                      P0_6=1;
                      delay(1);
                      P2=ma[chuc];
                      P0_5=0;
                      delay(1);
                      P0_5=1;
                      delay(1);
                      P0_7=0;
                      delay(1);
                      P0_7=1;
                      delay(1);
                      }

                      void h_thi2()
                      {
                      unsigned char k,chuc,donvi;
                      for(k=0;k<2;k++)
                      {
                      donvi=thoi_gian2%10;
                      chuc=thoi_gian2/10;
                      }
                      P2=ma[donvi];
                      P0_4=0;
                      delay(1);
                      P0_4=1;
                      delay(1);
                      P0_6=0;
                      delay(1);
                      P0_6=1;
                      delay(1);
                      P2=ma[chuc];
                      P0_5=0;
                      delay(1);
                      P0_5=1;
                      delay(1);
                      P0_7=0;
                      delay(1);
                      P0_7=1;
                      delay(1);
                      }


                      void h_thi3()
                      {
                      unsigned char k,chuc,donvi;
                      for(k=0;k<2;k++)
                      {
                      donvi=thoi_gian3%10;
                      chuc=thoi_gian3/10;
                      }
                      P2=ma[donvi];
                      P0_0=0;
                      delay(1);
                      P0_0=1;
                      delay(1);
                      P0_2=0;
                      delay(1);
                      P0_2=1;
                      delay(1);
                      P2=ma[chuc];
                      P0_1=0;
                      delay(1);
                      P0_1=1;
                      delay(1);
                      P0_3=0;
                      delay(1);
                      P0_3=1;
                      delay(1);
                      }
                      void main()
                      {
                      P0=255;
                      P2=255;
                      TMOD=2; //timer0 o che do 2 tu nap lai
                      TH0=54; //gia tri nap lai
                      TR0=1; //cho phep timer0 chay
                      ET0=1; //cho phep ngat timer0
                      EA=1;
                      while(1)
                      {
                      thoi_gian0=20;
                      thoi_gian1=24;

                      do
                      {
                      P1=0x21;
                      h_thi0();
                      h_thi1();
                      }
                      while(thoi_gian0!=0);

                      thoi_gian0=5;
                      thoi_gian1=5;
                      do
                      {
                      P1=0x22;
                      h_thi0();
                      h_thi1();
                      }
                      while(thoi_gian0!=0);

                      thoi_gian2=20;
                      thoi_gian3=24;

                      do
                      {

                      P1=0x0c;

                      h_thi2();
                      h_thi3();
                      }
                      while(thoi_gian2!=0);


                      thoi_gian2=5;
                      thoi_gian3=5;
                      do
                      {
                      P1=0x14;
                      h_thi2();
                      h_thi3();
                      }
                      while(thoi_gian2!=0);
                      }
                      }

                      Comment


                      • #56
                        code dung 100%,mach dây ne ban..chúc bạn thành công và chúc mọi người vui vẻ..
                        http://www.zshare.net/image/80811827bd3f60a4/

                        Comment


                        • #57
                          các báccho e hỏi 1 chút em down bài mẫu asm về nhưng mà lỗi phông tùm lum , không biết mở bằng phần mềm nào để khỏi bị lỗi thế các bác , e xử mãi mà không đc. vì em mới học nên muốn tìm hiểu kỹ các câu lệnh mà không dịch đc
                          file asm thì có gì đâu mà lỗi font bạn. toàn là từ không dấu, nên hầu hết tất cả các font đều đọc được chỉ có điều có một số font khó nhìn thôi. muồn thay font thì bạn dùng notepad để thay font nhé nếu ko được thì dùng notepad++.
                          Nguyên văn bởi sonnv_hp Xem bài viết
                          chào các bác, em dùng MCS 51 ICE để biên dịch chương trình asm, làm thế nào để chuyển sang file *.hex thế các bác?
                          Phần mềm mô phỏng proteus có cho nạp file asm không?

                          To chủ topic: thanks bác vì mở ra mọt đề tài có ích cho toàn bộ anh em. Bác có sơ đồ nguyên lý của các code asm không? nếu có bác post lên cho a e học tập nhé!
                          proteus không nạp được file asm hầu hết các mô phỏng hay kể cả nạp cho vdk đều phải dùng file .hex còn phần mềm đó thì mình chưa xài nên chưa biết. minh chỉ dùng Keil uVision3 để viết và xuất file thôi.

                          Comment


                          • #58
                            Xin hỏi cho em biết cách truyền code đó vô chíp như thế nàovayaj ??
                            cảm ơn

                            Comment


                            • #59
                              ý bạn là nạp vào 8051 ở mô phỏng hay là ngoài thực tế. bạn dịch file .c hoặc .asm ra file .hex nhé tiếp đến nếu nạp trong phần mềm mô phỏng thì kick chuột đúp lên con vdk của bạn rồi chọn đường dẫn đến file .HEX của bạn bám ok hai lần là được. giờ chỉ còn việc xem thử chương trình mình viết thôi. còn nạp cho con vdk thực thì bạn cần có một phần mềm nạp và một mạch nạp thế là ok. chúc bạn thành công.

                              Comment


                              • #60
                                các pác giúp e với!!! e hoc IT mà thầy ra đề tài về vi điều khiển 8051 nên ko biết làm thế nào cả!
                                Đề tài: "Viết chương trình đo tốc độ động cơ bằng Encorder. ""
                                Các pro giúp e với! Thank nhiều!

                                Comment

                                Về tác giả

                                Collapse

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

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

                                Collapse

                                Đang tải...
                                X