Thông báo

Collapse
No announcement yet.

[HELP] Đồng hồ số có thể hẹn giờ dùng VĐK

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

  • [HELP] Đồng hồ số có thể hẹn giờ dùng VĐK

    Hiện giờ em đang làm đồ án là đồng hồ số chỉ chạy giờ phút giây và chỉnh giờ . Em muốn làm thêm tính năng hẹn giờ báo thức nhưng vẫn ko nghĩ ra cách nào để chỉnh vì khi chỉnh thì phải ấn nút nhấn để thay đổi giờ phút giây muốn báo thức ( hiển thị lên 6 led 7 đoạn của đồng hồ luôn) , sau khi chỉnh xong thì đồng hồ tiếp tục chạy , lúc này thì đồng hồ sẽ bị chậm mất 1 khoảng thời gian . Chẳng lẽ phải chỉnh lại . AI có cách nào giúp em ko ?

  • #2
    ko bik bạn làm đồng hồ số dùng ds1307 hay dùng timer của vdk.Nếu dùng ds1307 thì ko mắc phải tình trạng này, còn dùng vdk thì bạn dùng ngắt timer để tăng thời gian, trong lúc đó bạn vẫn chỉnh dc thời gian hẹn giờ cho vdk, khi nào timer tràn xảy ra ngắt thì nó mới vào chuơng trình ngắt timer để tăng thời gian và thoát chuơng trình ngắt quay lại chuơng trình hẹn giờ.

    Comment


    • #3
      trong này có hẹn giờ tại hải thời điểm
      http://www.dientuvietnam.net/forums/...%BB%93-89C2051
      Còn bạn ko biết là dùng DS hay ko, nếu ko dùng DS thì có thể tham khảo mạch trên luôn. Mạch trên dù có trong chế độ nào thì mạch vẫn luôn chạy đúng vì luôn ưu tiên ngắt để quản lý thời gian

      Comment


      • #4
        Nguyên văn bởi trimen Xem bài viết
        ko bik bạn làm đồng hồ số dùng ds1307 hay dùng timer của vdk.Nếu dùng ds1307 thì ko mắc phải tình trạng này, còn dùng vdk thì bạn dùng ngắt timer để tăng thời gian, trong lúc đó bạn vẫn chỉnh dc thời gian hẹn giờ cho vdk, khi nào timer tràn xảy ra ngắt thì nó mới vào chuơng trình ngắt timer để tăng thời gian và thoát chuơng trình ngắt quay lại chuơng trình hẹn giờ.
        Anh chỉ rõ hơn về cái ngắt timer dc ko ? Em đọc nhưng ko hiểu lắm

        Nguyên văn bởi chung1608 Xem bài viết
        trong này có hẹn giờ tại hải thời điểm
        http://www.dientuvietnam.net/forums/...%BB%93-89C2051
        Còn bạn ko biết là dùng DS hay ko, nếu ko dùng DS thì có thể tham khảo mạch trên luôn. Mạch trên dù có trong chế độ nào thì mạch vẫn luôn chạy đúng vì luôn ưu tiên ngắt để quản lý thời gian
        Em dùng IC 89C51

        Comment


        • #5
          Đầu tiên em khởi tạo timer với các thông số cần thiết , sau đó em cho phép ngắt timer khi tràn bằng cách set bit các cờ EA và TR0, ví dụ ở đây em khởi tạo timer với giá trị 50ms thì ngắt 1 lần, vậy để có được 1s thì em dùng 1 biến dem, 1 lần ngắt biến dem tăng lên 1 , khi đủ 20 lần thì ta có thời gian là 50x20=1s (chính xác tuơng đối), khi đủ 1s thì em tăng giây lên 1 đơn vị, đủ 60s thì tăng phút 1 đơn vị và tuơng tự với giờ.
          Vậy việc em phải làm trong chuơng trình chính là giải mã các biến giây, phút, giờ ra mã bcd ,hiển thị mã đó lên led 7 đoạn và kiểm tra xem nút hengio có nhấn không. Nhờ dùng ngắt nên vi điều khiển không mất thời gian để kiểm tra cờ tràn của timer do đó em có thời gian để hẹn giờ do chỉ khi nào có ngắt thì vdk mới nhảy vào chuơng trình ngắt làm các lệnh yêu cầu trong đó và thoát ra làm tiếp chuơng trình đang làm trong chuơng trình chính. Chúc em thành công

          Comment


          • #6
            Nguyên văn bởi vippro1610 Xem bài viết
            Anh chỉ rõ hơn về cái ngắt timer dc ko ? Em đọc nhưng ko hiểu lắm



            Em dùng IC 89C51
            chip 89 40 chân hay 20 chân đều giống nhau về mọi thứ chỉ có con 20 chân ít port hơn thôi. Theo như em thì em ko dùng DS. Nếu như dùng ngắt timer để đếm giây thì em phải tính chính xác thời gian ngắt để đúng 1 s. Nhưng dù có tính đúng thì mạch cũng sẽ chạy ko được đúng lắm vì ngắt luôn chỉ đúng tương đối về thời gian (cái này phải đọc hiểu phần nói về hoạt động ngắt trong sách). Cách hiện giờ là dùng mạch tạo xung 1Hz (có thể dùng 2 IC số 4060 và 4013 để chia tần số thạch anh 32768Hz ra còn 1 Hz hoặc dùng cách như bài viết trên) để ngắt ngoài quản lý việc chạy thời gian.

            Comment


            • #7
              Mấy a nói ngắt em mới nhớ. Hôm bữa lên chợ Nhật Tảo thấy tụi nó bán boar đồng hồ đơn giản lắm, chỉ có mỗi con 89 vs cục bin vs một số linh kiện lằng nhằng. Tụi nó bán thì nó nói là chính xác 100% ko biết có đúng ko nữa. Em sợ ko giám mua khoảng 180k. Vậy nếu dùng ngắt timer thì ko cần dùng DS hả mấy a.
              PCCC

              Comment


              • #8
                Nguyên văn bởi lep140389 Xem bài viết
                Mấy a nói ngắt em mới nhớ. Hôm bữa lên chợ Nhật Tảo thấy tụi nó bán boar đồng hồ đơn giản lắm, chỉ có mỗi con 89 vs cục bin vs một số linh kiện lằng nhằng. Tụi nó bán thì nó nói là chính xác 100% ko biết có đúng ko nữa. Em sợ ko giám mua khoảng 180k. Vậy nếu dùng ngắt timer thì ko cần dùng DS hả mấy a.
                linh kiện lằng nhằng là sao, 89 và có thêm cục pin + 1 con IC 8 chân (là con DS ấy) hay là sao. Vấn đề ngắt thì tùy mục đích em à, DS là 1 đồng hồ thời gian thực (RTC).
                Nếu em cần hiển thị giờ phút giây ngày tháng năm ,có khả năng back up thời gian khi mạch mất điện, thì dùng DS
                Nếu chỉ hiển thị giờ phút giây, mất điện chịu khó chỉnh lại, thích mạch nhỏ gọn để trên bàn thì dùng ngắt timer hoặc cái gì đó có thể tạo xung 1 Hz.

                Comment


                • #9
                  Nguyên văn bởi chung1608 Xem bài viết
                  linh kiện lằng nhằng là sao, 89 và có thêm cục pin + 1 con IC 8 chân (là con DS ấy) hay là sao. Vấn đề ngắt thì tùy mục đích em à, DS là 1 đồng hồ thời gian thực (RTC).
                  Nếu em cần hiển thị giờ phút giây ngày tháng năm ,có khả năng back up thời gian khi mạch mất điện, thì dùng DS
                  Nếu chỉ hiển thị giờ phút giây, mất điện chịu khó chỉnh lại, thích mạch nhỏ gọn để trên bàn thì dùng ngắt timer hoặc cái gì đó có thể tạo xung 1 Hz.
                  Em nhìn kỹ lắm chả có con DS nào, nhìn mạch nhỏ gọn lắm, mỗi con 89 + pin thôi, muốn kéo led 7 đoạn thì phải mua thêm cái boar nữa có gắn IC kéo về GND, nó mài số ko bit la ic j`.Ko tin anh lên đó hỏi nhiều lắm. Em mà nói xạo em đập đầu vào mông anh chết liền.
                  PCCC

                  Comment


                  • #10
                    Nguyên văn bởi lep140389 Xem bài viết
                    Em nhìn kỹ lắm chả có con DS nào, nhìn mạch nhỏ gọn lắm, mỗi con 89 + pin thôi, muốn kéo led 7 đoạn thì phải mua thêm cái boar nữa có gắn IC kéo về GND, nó mài số ko bit la ic j`.Ko tin anh lên đó hỏi nhiều lắm. Em mà nói xạo em đập đầu vào mông anh chết liền.
                    mạch 89 nhỏ gọn mà ko có DS giá 180k thì thôi mắc quá, tự là chắc ăn em ơi.

                    Comment


                    • #11
                      Nguyên văn bởi chung1608 Xem bài viết
                      mạch 89 nhỏ gọn mà ko có DS giá 180k thì thôi mắc quá, tự là chắc ăn em ơi.
                      Em cũng đang làm cái đồng hồ dùng con 555 tạo xung 1 hz giống a nè, mà khó wa', định làm xong tết về quê dụ mấy thàng bạn.hehe
                      PCCC

                      Comment


                      • #12
                        Nguyên văn bởi lep140389 Xem bài viết
                        Em cũng đang làm cái đồng hồ dùng con 555 tạo xung 1 hz giống a nè, mà khó wa', định làm xong tết về quê dụ mấy thàng bạn.hehe
                        anh nghỉ chơi 555 lâu rồi, mạch đó ko dùng 555 mà dùng mạch trong đồng hồ cơ, vừa có xung 1 hz vừa có thêm loa báo giờ nhỏ gọn, khó phần thiết kế mạch cho nhỏ thôi. Vừa rồi vô tình tạo được PWM cho mạch luôn.

                        Comment

                        Về tác giả

                        Collapse

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

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

                        Collapse

                        Đang tải...
                        X