Tạo trễ dùng C

Collapse
X
 
  • Giờ
  • Show
Clear All
new posts
  • hatnang87
    Thành viên chính thức
    • Oct 2007
    • 95

    #16
    em cũng xin cảm ơn các anh tiền bối!
    em cũng đã hiểu sơ sờ rồi
    Trái tim anh chia 3 phần tươi đỏ
    Anh dành riêng cho học phần nhiều
    Phần cho chơi và phần để em yêu

    Comment

    • daominhchien
      Thành viên tích cực
      • Jul 2008
      • 452

      #17
      thú thật Chiến đã viết thử rất nhiều lần cứ chuyển file.hex thì báo hành đống lỗi, mà còn chẳng biết do đâu nữa.
      nhưng xem các bạn bàn luận thì khoái thật. Vì trình độ của mình kém Chiến k0 dám
      tham gia nhưng chắc chắn sẽ thử nghiệm.
      - cảm ơn tất cả các bài viết của các bạn!
      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

      • daominhchien
        Thành viên tích cực
        • Jul 2008
        • 452

        #18
        nghe nói có thể thực hiện viết CT cho 8051/52 trên Reads51 cũng được, vậy Thầy nào biết hướng dẫn tôi với
        xin cảm ơn!
        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

        • saoden1102
          Thành viên mới
          • Sep 2006
          • 2

          #19
          nhưng nếu muốn hiện LED 5s rồi tắt đi chờ 10s thì thêm j vậy bạn ngohaibac.

          Comment

          • llmta1989
            Thành viên mới
            • Oct 2011
            • 7

            #20
            Nguyên văn bởi qmk Xem bài viết
            while(time--){
            AL0 = 0x66;
            AH0 = 0xFC;// nạp giá trị cho timer
            TF = 0;//Xóa cờ tràn lần trước
            while( TF0); // chờ khi nào cờ TF0 =1
            };

            Cái này là viết delay bằng timer. Đã dùng delay thì ngắt không enable. Không enable ngắt thì phải tự xóa TF.
            Đương nhiên là timer phải đang chạy. Chứ nó không chạy thì nói làm gì. Đầu tiền vào chương trình cứ cho timer chạy. Muốn chạy thế nào thì chạy có ảnh hưởng gì đâu (tốn nguồn ????) Lúc nào muốn delay.
            Như Trang nói là trường hợp này dùng được nhưng trường hợp khác thì không. Quan trọng mình hiểu cái gì mình viết.
            Em Trang nói đúng đó không vào ngắt thì nó không tự xóa cờ mà đã dùng ngắt thì chẳng ai chơi delay kiểu này cả.
            ban ơi! cái này đúng là phải xóa cờ TF. chứ ko tự động, vì ko fai ngắt mà.
            đoạn cuối viết while(TF) có vẻ ko ổn lắm. while(TF != 1) {}. đợi nó đếm tràn rồi mới lạp lại giá trị cho timer.

            Comment

            • autokhin010
              Thành viên chính thức
              • Feb 2011
              • 54

              #21
              cho mình hỏi chổ này nha!
              While(TF0) hay là While(!TF0)
              cái nào đúng hơn và có thể giải thích được hok? thanks!!!

              Comment

              • vantatdt
                Thành viên mới
                • Feb 2012
                • 12

                #22
                Các bác cho em hỏi xem thời gian Debug trên Keil C như thế nào vậy? em muốn kiểm tra lại thời gian debug 1 vòng lặp có phải là 8.28us như bác chủ top nói ko nữa.
                thank.

                Comment

                • duong_act
                  Thành viên tích cực
                  • Nov 2008
                  • 4903

                  #23
                  Lúc Debug bạn nhìn thời gian của mỗi dòng lệnh.
                  Tuy nhiên theo mình nghĩ không phải vòng lặp nào cũng là 8.28us với thạch anh 11.0592M
                  Last edited by duong_act; 14-09-2012, 01:24.

                  Comment

                  • vantatdt
                    Thành viên mới
                    • Feb 2012
                    • 12

                    #24
                    Nguyên văn bởi duong_act Xem bài viết
                    Lúc Debug bạn nhìn thời gian của mỗi dòng lệnh.
                    Tuy nhiên theo mình nghĩ không phải vòng lặp nào cũng là 8.28us với thạch anh 11.0592M
                    Nhưng mình không biết thời gian debug hiển thị chỗ nào trên KeilC nữa. Bạn chụp lại cái ảnh lúc debug với thời gian của nó t với.

                    Comment

                    • namctmc
                      Thành viên mới
                      • May 2011
                      • 16

                      #25
                      Các anh ơi giúp em cái này với ạ
                      So sánh 2 phương pháp lập trình tạo trễ trong 8051 là
                      1. Dùng Timer.
                      2. Dùng vòng lặp.
                      Em cảm ơn các anh trước ạ.

                      Comment

                      • namctmc
                        Thành viên mới
                        • May 2011
                        • 16

                        #26
                        HIx có ai không ạ giúp em với huhu

                        Comment

                        • vanhai0303
                          Thành viên tích cực
                          • Feb 2010
                          • 446

                          #27
                          Nguyên văn bởi namctmc Xem bài viết
                          Các anh ơi giúp em cái này với ạ
                          So sánh 2 phương pháp lập trình tạo trễ trong 8051 là
                          1. Dùng Timer.
                          2. Dùng vòng lặp.
                          Em cảm ơn các anh trước ạ.
                          cần thời gian chính xác thì dùng timer,
                          cần 1 khoảng thời gian mà ko cần chính xác lắm thì dùng vòng lặp
                          Học Điện Tử - Learn Electronic

                          Comment

                          Về tác giả

                          Collapse

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

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

                          Collapse

                          Đang tải...