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

  • mình vừa đi mua tụ cỡ pF nhưng không có
    mà tụ pF, lại còn tụ hóa nữa thì lại càng hiếm (trong mạch reset) ???
    Last edited by nickname2606; 07-03-2009, 17:14.
    Say thanks with any post you think it's helpful...

    Comment


    • Tụ hóa ở mạch reset là 10uF, không phải là 10pF. Tụ cỡ pF là tụ sứ. bạn hỏi tụ hóa pF không có là phải.

      Comment


      • các anh ơi em mới học lập trình keil em ko hiểu họ viết câu lệnh có đoạn là:
        TMOD=0X01;
        WHILE(1)
        {
        TH0=-2500/256;
        TL0=-2500%256;
        TR0=1;
        while(!TF0);
        TF0=0;
        TR0=0;
        F=~F;}
        .....
        con nua...
        các anh giải thích kĩ một chút nhé.em đọc sách nhiều rồi họ viết em ko hiểu gì hết.em cảm ơn rất nhiều

        Comment


        • sao ko ai giúp em vậy

          Comment


          • bạn phải post code lên thì mọi người mới thấy sai mà giúp được chứ. nói như vậy ai hiểu gì mà giúp.

            Comment


            • [QUOTE=hoang_hai;168927]các anh ơi em mới học lập trình keil em ko hiểu họ viết câu lệnh có đoạn là:
              TMOD=0X01;// khởi tạo chế độ định thời 16 bit của timer 0
              WHILE(1)
              {
              TH0=-2500/256;//lấy phần nguyên của phép chia gán vào TH0
              TL0=-2500%256;// lấy phần dư của phép chia gán vào TL0
              TR0=1;//cho timer 0 chạy
              while(!TF0);//nhảy tại chỗ cho dến khi cờ tràn TF0 được set thì thoát ra.
              TF0=0;// xóa cờ tràn
              TR0=0;// cho timer 0 ngừng
              F=~F;}//Đảo trạng thái của F
              .....
              chú ý TH0,TL0 là giá trị đặt trước của bộ định thời.
              bạn nên tìm hiểu về bộ định thời trong cuốn 8051 của Tống Văn Ôn để hiểu rõ hơn. các kết quả của phép gán bạn nên chuyển về số Hexa sẽ dễ hiểu hơn.
              cố gắng lên nhé.

              Comment


              • vâng đẻ chút nưa em post lên.nhưng mà.
                ví dụ TH0=-9;
                vậy -9 có ý nghĩa như thế nào trong câu lệnh.
                Last edited by hoang_hai; 07-03-2009, 21:57.

                Comment


                • đổi số -9 ra số hexa có gia trị là F7. đó là giá trị dặt trước vào byte cao.khi giá tri timer đến F7 thì sẽ chuyển về 0 đếm lại lên F7 tiếp tục.hiểu rồi chứ.chú ý là giá trị đếm bắt đầu từ byte thấp nha.sau mỗi lần tràn sẽ tăng byte cao lên 1.

                  Comment


                  • Nguyên văn bởi hoang_hai Xem bài viết
                    vâng đẻ chút nưa em post lên.nhưng mà.
                    ví dụ TH0=-9;
                    vậy -9 có ý nghĩa như thế nào trong câu lệnh.
                    Đặt như vậy để dễ tính thôi. 255-9=246. Bạn có thể thay TH0=-9 bằng lệnh TH0=246.
                    Nghĩa là bạn muốn lặp lại 9 lần thì trong câu lệnh có thể gán TH0=-9 hoặc TH0=246. Cách gán = -9 dễ tính hơn vì mình biết rằng cần lặp lại 9 lần mà không phải tính toán gì cả.

                    Comment


                    • giả sử bạn muốn đếm 10ms thì có thể dùng lệnh:
                      mov tho,#high(-10000);byte cao
                      mov tl0,#low(-10000);byte thấp

                      Comment


                      • sory nha. lâu rồi quên mất.mình giải thích -9 bi sai rồi.nhu ban Tan đúng đó.

                        Comment


                        • sao tui co vao trinh dich READS51 no toan bao loi vay?

                          Comment


                          • cám on nhiều nhá.các đại ca ơi.nếu mình muốn 1 đèn sáng trong 5s thì phải làm thế nào vậy.em thay đổi delay(nhiều rồi) sao mà nó vẫn nhấp nháy nhanh lắm mặc dù thay đổi giá tri rất lớn (trả lời cho em ý trên trước nhé)
                            .em co ý tưởng như thế này:
                            mới đầu ta có 4
                            chữ A B C D
                            mới đầu D sáng A B C tắt trong 2s
                            rồi C sáng ABD tắt trong 2s
                            B sáng ACD tắt 2s
                            A sáng BCD tắt
                            đay là sáng từ trái qua phải cuối cùng tất cả cùng sáng trong 10s anh nào có thể viết chương trình cho em tham khảo khảo được không
                            viết càng rễ hiểu càng tốt nhá.em mới học VDK mà.chỉ muốn tham khảo một chút thôi

                            Comment


                            • tại sao em không dùng thêm 1 biến nhỉ.em chỉ cần tạo chương trình delay với 1 thời gian cố định.chẳng hạn 10ms. muốn được bao nhiêu s thì chỉ cần nhân với giá tri biến của mình trong vòng lặp "for".nếu em đã viết được chương trình delay 1s thì yêu cầu thứ 2 của e ko khó nữa đâu.hiểu rồi chứ. chúc e thành công. Cố gắng lên nhé.

                              Comment


                              • anh có thể viết chương trình trên giúp em được ko.em làm hoài mà không được.

                                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