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

  • Chào các bác, em nghiên cứu cái topic này nhiều lần rồi mà không tìm ra giải pháp cho mình, nay xin đưa ra đây nhờ các bác giúp:

    Em viết chương trình điều khiển motor bước 5 phase, dùng AT89C52 và thạch anh 12MHz, ngôn ngữ C, và VB viết bên computer để điều khiển. Mọi chuyện khá oke rồi, chỉ có điều 1ms xuất 1 xung thì motor quay khá chậm, mất khá nhiều thời gian chờ nó di chuyển. Nay em muốn tăng tốc độ của nó lên mà chưa tìm ra giải pháp, các bác xem xét giúp xem em với.
    |

    Comment


    • Help me ! em muốn tìm hiểu mục đích và chức năng của VĐK 8051.

      Comment


      • bạn nên đọc threat này từ trang đầu bởi vì mọi người giới thiệu rất kĩ.bạn có thể đọc cuốn 8051 của tống văn ôn.hay bất kì cuốn sách nào viết về vdk để hiểu thêm.chúc bạn thành công.

        Comment


        • fien cac bac ea.co bac nao jup e cach lap trinh mo fong AT8951 bang Proteus k.em chua co dk dg fan cung danh ngam tam cai ni vay

          Comment


          • 125 trong(125*8)là tại sao vậy à?,còn unsigned có ý nghĩa gì vậy?.Anh phi giải đáp thắc mắc giúp em nhé!thank!!

            Comment


            • unsigned có nghĩa là số k có dấu (số dương)!

              Comment


              • thank! ga con ha.Vậy bạn có biết 125 trong page1 của topic này anh phi viết
                ms*(125*8)=1000*1000=1s là tại sao ko?

                Comment


                • Nguyên văn bởi vava Xem bài viết
                  thank! ga con ha.Vậy bạn có biết 125 trong page1 của topic này anh phi viết
                  ms*(125*8)=1000*1000=1s là tại sao ko?
                  Bạn này vui tính quá nhỉ ?

                  1ms = 1000us ( Nếu thạch anh bạn sử dụng là 12mhz thì mỗi chu kì máy xử lý bạn hết 1us ).
                  125*8 = 1000.

                  ms*(125*8) = 1.000.000us = 1s.

                  Comment


                  • thấy vui quá Chiến xin góp 1 bài:
                    #include<regx52.h>
                    #include<stdio.h> //khai báo các thư viện
                    #include<intrins.h>
                    int j;
                    unsigned char x; // x chiếm 1 bye
                    void delay()
                    {
                    unsigned long int i;
                    for(i=1;i<=5000;++i);// ở đây 5000=~1/2 giây
                    }
                    void main (void)
                    {
                    while(1)
                    {
                    x=0xfe;// giá tri này =11111110
                    for(j=1;j<=8;++j)// lấy cả 8 bít
                    {
                    P1=x;// thực hiện ở cổng P1
                    delay();
                    x =_crol_(x,1);// quay x để bit 0 tại P1_0 dịch chuyển lên kiểu tuần tự
                    }
                    }
                    }
                    // ở đây led sáng=0; nếu muốn led sáng =1, ta đặt x=0x01;// giá tri này =00000001.
                    // để led nháy chậm hơn thay giá trị 5000 trong: for(i=1;i<=5000;++i); =
                    //for(i=1;i<=10000;++i);// led nháy=~1s
                    Tôi thích cái cầu kỳ của kỹ thuật
                    Nhưng ghét mọi phức tạp trong tính cách con người

                    Comment


                    • học tốt 1VDK để làm bậc thang cho các VDK khác.
                      Tôi thích cái cầu kỳ của kỹ thuật
                      Nhưng ghét mọi phức tạp trong tính cách con người

                      Comment


                      • Nguyên văn bởi rongconn2t Xem bài viết
                        cái chương trình này mình đã chạy rồi,đưa lên ocilo đo độ rộng xung thì chạy khoảng 1 phút thì lêch mất 1s.chán lắm,không biết làm sao cho chuẩn nữa.học MR Kiên anh ấy bảo là tạo khoảng thời gian chính sác thì phải sd timer, nhưng chả biết làm sao mà anh ấy làm thì nó đúng
                        Dùng Timer thi cũng chẳng thể chính xác được
                        Dùng Thạch annh 12M thì sau 1000 vòng delay (nếu mỗi vòng delay này là 1ms) thì thời gian có được sẽ là 1s
                        Nhưng còn phải "trừ hao" đề VDK thục hiện những lệnh khác
                        .: Lê Tiến Mạnh :.
                        Phone number : 0989 735 804
                        YM,Skype,mail : [leemanhj916]@gmail.com

                        Comment


                        • minh can rut ra dc nhung bai hoc cua cac anh chi!keke

                          Comment


                          • em la gà!e moi bat dau lam bai tap lon ve mon vixuly len bat dau vao lam e van chua dinh huong minh lam nhung gi ve 1detai,anh chi chi dum e phai lam nhung gi dc ko? detai cua e la "thiet ke mach do nhiet do d 8051 xuat ra LCD" giup dum e nhe! neu dc ae gui vao hom thu cua e nhe! xuanhunggtvt@gmail.com

                            Comment


                            • Mình thấy có tài liệu "Lập trình C cho VXL" của tác giả Lê Ngọc Tuấn nói về lập trình C cho VDK 8051 (bằng tiếng Việt) khá hay nên đưa link lên đây để anh em download về tham khảo.
                              http://car.vagam.dieukhien.net/vagam%20-%20C.pdf
                              Bạn có thể dùng tên tài liệu làm từ khóa để tìm kiếm ở trang google nếu link này có vấn đề!
                              Chúc các bạn thành công!

                              Comment


                              • Nếu muốn làm đồng hồ bạn nên tham khảo các IC thời gian thực chuyên dụng như ds1307,ds12887...Như vậy mới tiện lợi và chính xác hơn.
                                Dùng nó kết hợp với vdk thì code cũng ngắn hơn nhiều.
                                Chúc thành công!

                                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