Thông báo

Collapse
No announcement yet.

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

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

  • Em mới học lớp 11, đang mò mẫm cái VĐK này nhưng tức 1 điều là khi nạp lại ra cái này ... (mạch nạp mua ở Nhật Tảo -> dùng cổng COM -> cáp chuyển COM-USB nên mặc định là cổng COM9)




    Các anh/chị giúp em tìm ra lỗi với
    --- --- --- --- --- --- --- --- ---
    Lê Bá Tiến Triển
    11 Lý
    PTNK - ĐHQG HCM

    Comment


    • Hic, sao không có ai giải thích giùm em hết vậy ??? em đang nghi là cái mạch nạp có vấn đề, chẳng lẽ lại bỏ tiền ra mua cái mạch nạp mới sao ta, bạn bè em chẳng có đứa nào hứng thú nên ko có mạch nạp khác để test, làm sao giờ ???

      Àh các anh có bản full keil không cho em xin đi, em lục trong diễn đàn toàn tháy link die không àh
      Các anh coi giùm + nạp test thử cái code của em thử (viết trên Keil uvision3 full cr**ck và test okie trên Proteus)
      LINK : http://mega.1280.com/file/WNYK3TATWJ/ hoặc http://www.mediafire.com/?1mdnkwmeqnn
      Last edited by tientrien; 03-01-2010, 15:13.
      --- --- --- --- --- --- --- --- ---
      Lê Bá Tiến Triển
      11 Lý
      PTNK - ĐHQG HCM

      Comment


      • Nguyên văn bởi tientrien Xem bài viết
        Hic, sao không có ai giải thích giùm em hết vậy ??? em đang nghi là cái mạch nạp có vấn đề, chẳng lẽ lại bỏ tiền ra mua cái mạch nạp mới sao ta, bạn bè em chẳng có đứa nào hứng thú nên ko có mạch nạp khác để test, làm sao giờ ???

        Àh các anh có bản full keil không cho em xin đi, em lục trong diễn đàn toàn tháy link die không àh
        Các anh coi giùm + nạp test thử cái code của em thử (viết trên Keil uvision3 full cr**ck và test okie trên Proteus)
        LINK : http://mega.1280.com/file/WNYK3TATWJ/ hoặc http://www.mediafire.com/?1mdnkwmeqnn
        trc nạp cho thằng 89.mình chỉ dùng proload 4.1 thôi.chẳng dùng 5.4 bao giờ nên không biết.
        mà giờ sao phải khổ thế nhỉ.dùng dòng 89Sxx ấy có phải nhàn hơn bao nhiêu không.nạp có thể qua cổng LPT hoặc cổng COM
        mạch nạp đơn giản và rẻ nữa chứ.nạp trực tiếp trên board luôn không phải nhổ chip
        tổng cộng chi phí cho 1 cái mạch nạp vào khoảng 15k

        Comment


        • Nguyên văn bởi duong_act Xem bài viết
          Đó chính là điểm yếu của VDK.
          thực ra thì bộ VDK cũng có 1 nhân VXL bên trong. vì vậy nó có phần giống với máy tính ,trong 1 thời điểm chỉ thực hiện 1 lệnh thôi.
          tùy vào bài toán của mình mà mình chạy các chương trình kiểu nào chứ .nhân của nó hay bộ CPU chạy 1 lệnh tại 1 thời điểm .nhưng các ngoại vi của nó thì lại song song. vậy là có hướng giải quyết các bài toán rồi

          Comment


          • Nguyên văn bởi tientrien Xem bài viết
            Hic, sao không có ai giải thích giùm em hết vậy ??? em đang nghi là cái mạch nạp có vấn đề, chẳng lẽ lại bỏ tiền ra mua cái mạch nạp mới sao ta, bạn bè em chẳng có đứa nào hứng thú nên ko có mạch nạp khác để test, làm sao giờ ???

            Àh các anh có bản full keil không cho em xin đi, em lục trong diễn đàn toàn tháy link die không àh
            Các anh coi giùm + nạp test thử cái code của em thử (viết trên Keil uvision3 full cr**ck và test okie trên Proteus)
            LINK : http://mega.1280.com/file/WNYK3TATWJ/ hoặc http://www.mediafire.com/?1mdnkwmeqnn
            cai nay phai ***** do nah
            http://www.4shared.com/file/18881893...08a_Krack.html

            Comment


            • sao cai nay em hoc chang hieu j ca
              chan wa troi luon

              Comment


              • Nguyên văn bởi thanhminhhau Xem bài viết
                sao cai nay em hoc chang hieu j ca
                chan wa troi luon
                hic.thế này thì chịu

                Comment


                • Xin hỏi đoạn code này có thể mở rộng ra 8x24 như thế nào vậy

                  XIN HỎI ĐOẠN CODE NÀY CÓ THỂ MỞ RỘNG RA 8X24 NHƯ THẾ NÀO VẬY
                  /////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
                  #include <REGX51.H>
                  /* Cot tu P0.0 den P0.7
                  Hang tu P2.0 den P2.7
                  De quet dua muc logic 0 lan luot ra cong 0
                  */
                  /* Ham tre */
                  void delay(long time)
                  {
                  long n;
                  for(n=0; n<time; n++)
                  {
                  ;
                  }
                  }
                  unsigned char kytu1[9];// Mang 9 phan tu chua gia tri cac hang day ra cong 2
                  unsigned char k=0;// Bien xac dinh cac ky tu
                  /* Ham nap gia tri hien thi cac ky tu vao mang kytu1
                  co 8 gia tri dua ra va 1 gia tri khong bat den nao de cac ky tu cach nhau 1 cot */
                  void mahoa(unsigned char x)
                  {
                  switch(x)
                  {
                  // Dau trang
                  case 0: { kytu1[0]=0x00; kytu1[1]=0x00; kytu1[2]=0x00; kytu1[3]=0x00;
                  kytu1[4]=0x00; kytu1[5]=0x00; kytu1[6]=0x00; kytu1[7]=0x00; kytu1[8]=0x00;
                  break; }
                  // Chu M
                  case 1: { kytu1[0]=0x00; kytu1[1]=0xFF; kytu1[2]=0x02; kytu1[3]=0x04;
                  kytu1[4]=0x08; kytu1[5]=0x04; kytu1[6]=0x02; kytu1[7]=0xFF; kytu1[8]=0x00;
                  break;
                  }
                  // Chu T
                  case 2: { kytu1[0]=0x00; kytu1[1]=0x01; kytu1[2]=0x01; kytu1[3]=0x01;

                  kytu1[4]=0xFF; kytu1[5]=0x01; kytu1[6]=0x01; kytu1[7]=0x01; kytu1[8]=0x00;
                  break;
                  }
                  // Chu C
                  case 3: { kytu1[0]=0x00; kytu1[1]=0x7E; kytu1[2]=0x81; kytu1[3]=0x81;
                  kytu1[4]=0x81; kytu1[5]=0x81; kytu1[6]=0x42; kytu1[7]=0x00; kytu1[8]=0x00;
                  break; }
                  // Dau trang
                  case 4: { kytu1[0]=0x00; kytu1[1]=0x00; kytu1[2]=0x00; kytu1[3]=0x00;
                  kytu1[4]=0x00; kytu1[5]=0x00; kytu1[6]=0x00; kytu1[7]=0x00; kytu1[8]=0x00;
                  break; }
                  }
                  }
                  /* Ham quet led ma tran_ vua hien thi vua dich ky tu dan sang trai*/
                  void hienthi(void)
                  {
                  unsigned char n,m,lap;
                  unsigned char cot[8]={0xFE,0xFD,0xFB,0xF7,0xEF,0xDF,0xBF,0x7F}; // Cac phan tu quet cot
                  for(m=0; m<8 ; m++)// Dich hien thi
                  {
                  for(lap=0; lap<10; lap ++) // Lap hien thi
                  {
                  for(n=0; n<8 ; n++)// Quet cot
                  {
                  if((n+m)<9 )// Neu n+m < 9 hien thi ky tu 1
                  {
                  mahoa(k); // Nap cac gia tri ma hoa ky tu dua ra cac hang (Cong 2)
                  P0=cot[n]; // Day gia tri 0V ra cong 0 (cac cot)
                  P2=kytu1[n+m];// Day cac gia tri cac hang (ma hoa ky tu) ra cong 2(cac hang)
                  delay(45);// Tre du de led sang
                  }
                  if((n+m) > 7)// Neu n+m >7 hien thi ky tu 2
                  {
                  mahoa(k+1);// Nap gia tri ma hoa ky tu tiep de dua ra cac hang(Cong 2)
                  P0=cot[n];// Day gia tri logic 0V ra cong 0(cac cot)
                  P2=kytu1[n+m-8];// Day cac gia tri cac hang (ma hoa ky tu) ra cong 2(cac hang)
                  delay(45);// Tre du de led sang

                  }
                  P0=0xFF;// Day cac cot len cao
                  P2=0x00;// Dua cac hang xuong thap de tat toan bo cac led.
                  }
                  }
                  }
                  }
                  void main(void)
                  {
                  while(1)// Vong lap vo han.
                  {
                  hienthi(); // Hien thi 2 ky tu dau tien dau trang va chu M
                  k=k+1; // Tang k de hien thi chu M va chu T lan tiep
                  if(k==4) k=0;// Quay vong hien thi
                  }
                  }
                  //////////////////////////////////////////////////////////////////


                  MONG ANH EM CHỈ GIÚP

                  Comment


                  • Lưu giá trị lớn hơn 255 trong VKD

                    Ví dụ chia 1.000.000 cho 9 thì giá trị 1.000.000 được lưu thế nào trong qua trình tính.

                    Comment


                    • Các bạn lập trình bằng c cho mình hỏi mấy lệnh trog c đc ko ? Mình muốn hỏi 2 lệnh modf và floor đều là lệnh lấy phần nguyên đúng ko ? Chúng khác nhau thế nào Tại mình đag cần học c để lt cho con vdk .
                      |

                      Comment


                      • Nguyên văn bởi MicroDuyphi Xem bài viết
                        CHO THAM GIA VỚI NHE CÔ BẠN
                        Khi báo phần mở đầu để bộ dịch biết là chúng ta đang sử dụng loại VDK nào
                        Phần 1: HEADER
                        #include<regx51.h>
                        Phan 2: Khai bao các hàm
                        Đây là delay- ước lượng 1 vòng for 1 lần lặp<=> mất 8us
                        Như vậy ta có: ms*(125*8)=1000*1000 ~= 1s
                        Code:
                        void delay(usnigned int ms)//hàm này tạo độ trễ thời gian, dơn vị là ms
                        {
                           usigned char i,j;//khai báo kiểu "char"mỗi biến chỉ chiếm 1 byte
                           for(i=0;i<ms;i++)
                              {
                                for(j=0;j<120;j++);
                             }  }
                        Phan 3: PHAN CHINH  CUA CHUONG TRINH- LUON LUON MO DAU BANG TU KHÓA main()
                        
                        main()
                        {
                          unsigned char m,tem;
                          tem=0x01;      
                          while(1)
                            {    P1=tem;delay(1000);
                                  tem<<=1;if(tem==0x00)then tem=0x01;   //dich sang trai 1 bit
                            }     
                        } // DAY LA DAU KET THUC CHUONG TRINH : THE END
                        ---------------- Chuong tinh duoc viet lai la-------------------
                        Code:
                        #include<regx51.h>
                        void delay(usnigned int ms)//hàm này tạo độ trễ thời gian, dơn vị là ms
                        {
                           usigned char i,j;//khai báo kiểu "char"mỗi biến chỉ chiếm 1 byte
                           for(i=0;i<ms;i++)
                              {
                                for(j=0;j<120;j++);
                             } 
                        }
                        main()
                        {
                        unsigned char m,tem;
                        tem=0x01;     
                        while(1)
                        {    P1=tem;delay(1000);
                             tem<<=1;if(tem==0x00)then tem=0x01;   //dich sang trai 1 bit
                        }
                        "unsigned" viet sai kia!

                        Comment


                        • mình cũng đang học vi điều khiển 8051 , quả thật nó rất khó học đối với những người mới bắt đầu.
                          Mình thấy 2 tài liệu này có ích với mọi người, hãy chịu khó và kiên trì 1 chút nhé!
                          Chúc các bạn thành công.
                          link dowload: http://www.megaupload.com/?d=VCWVZJU4
                          http://www.megaupload.com/?d=YY93U08T

                          Comment


                          • Nguyên văn bởi banbe
                            mình mới tập lập trình tro 89 với led ma trix có một vấn đề găp phải khi sử lí mảng dữ liệu minh dùng asm nên khi mảng dữ liệu có số địa chỉ lơn hơn 256 gia trị thì mình không có cách nào de quét cả vi thanh ghi của 89 chỉ toan 8 bit ah
                            các ban chỉ mình với nêu dùng c để lập trình thi có cần quan tâm đên già trị lơn nhât của thanh ghi không nêu lâp trình đc thi các ban viêt hộ mình một bài code tham khảo với quet côt dùng 74ls138 quét hàng đùng con trốt hoac suất ra ba port voi 24 hang va 40 cot
                            nếu không sư dụng con 89 đc thì nên sư dụng con nao để lập trình cũng cho mình mọt bài ví dụ bang c hoặc ám đều đc
                            dùng con trỏ dữ liệu DPTR, đây là thanh ghi 16bit
                            0945061338(vocam.h@gmail.com,lehanhdtk3@gmail.com)
                            ||
                            PROGRAMING(C,ASM),HARDWARE,LMD,RTC,GPRS,GPS....ALL OF VDK

                            Comment


                            • em muốn hỏi anh là.mình tạo ra file .hẽ như thế nào.em đã đọc nhiều,nhưng mà tự làm khó quá,không đúng,anh có thể hướng dẫn em đc không?cám ơn anh nhiều
                              Sir_Tuyen

                              Comment


                              • Nguyên văn bởi quynh Xem bài viết
                                Các bạn thân mến!
                                Vào các diễn đàn tui thấy số người hỏi về 8051 khá nhiều, đa số họ toàn là những người lần đầu tiên tiếp xúc với 8051.Vì vậy tui mạo muội mở topic này để giúp đỡ những người mới tiếp xúc với 8051.Thực ra tui cũng mới làm wen với 8051 thôi, nhưng thiết nghĩ ít ra thì cũng giúp chút gì nho nhỏ cho người mới học 8051.
                                Đối với những người mới học, theo tôi đây là những vd cụ thể, rõ ràng giúp bạn nắm bắt nhanh nhất về phần cứng, các tính năng của 8051,lập trình, còn những đã học qua 8051 rất mong dc sự góp ý của các bạn, để tui, bạn, tất cả chúng ta cùng tiến bộ.
                                Chào bạn!
                                Bạn giúo mình với.
                                Khi minh viết xong code và build target xong rồi nhưng đến lúc debug thì nó báo như trong hình bên dưới. mình không biết phải giải quyết như thế nào vì chương trình đâu có dài lắm.
                                Cám ơn bạn trước nhé

                                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...
                                X