Thông báo

Collapse
No announcement yet.

Dọc nhiệt độ 18b20 help?

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

  • Dọc nhiệt độ 18b20 help?

    chào cả nhà mình làm vừa xong cái nhiệt độ nhưng hông hiễu sao chỉ đo được tới 5 mươi mấy độ thui theo mình thiết kế thì phải đo được đến 99 độ trên mô phòng thì chạy ngon mà ra mạch thật chỉ đo được tới 5 mấy độ quá mức nó hiện ra zero ai có kinh nghiệm biết tại sao không
    MOV20130101 002 - YouTube

  • #2
    vấn đề nằm ở code

    Comment


    • #3
      nhưng mô phỏng nó chạy ok mà anh chung

      Comment


      • #4
        Nguyên văn bởi thanhnha220 Xem bài viết
        nhưng mô phỏng nó chạy ok mà anh chung
        bạn dùng nguồn kí sinh hay nguồn cấp ngoài. Thời gian giao tiếp của 18B20 trong mô phỏng có chút khác biệt so với thực tế, thực tế phải kiểm tra chân tín hiệu xung DQ lúc đang chạy nó có đáp ứng code hay ko

        Comment


        • #5
          em dùng nguồn trực tiếp

          Comment


          • #6
            kiểm tra dq làm sao anh gợi ý cho em với nguốn kí sinh là gì zậy anh nguồn kí sinh và nguồn trực tiếp nếu dùng cho ds18b20 thì khác nhau chỗ nào zậy anh
            Last edited by thanhnha220; 01-01-2013, 21:33.

            Comment


            • #7
              Nguyên văn bởi thanhnha220 Xem bài viết
              kiểm tra dq làm sao anh gợi ý cho em với nguốn kí sinh là gì zậy anh nguồn kí sinh và nguồn trực tiếp nếu dùng cho ds18b20 thì khác nhau chỗ nào zậy anh
              bạn phải có oscilloscope hoặc cái gì đó hiệu sóng chân DQ để biết thời gian convert là bao nhiêu, với nhiệt độ càng caothì thời gian convert càng lâu. Nếu cứ gửi lệnh convert liên tục thì 18b20 sẽ bị lỗi, khi áp nhiệt độ vào con 18b20 ko nên đốt trực tiếp trên lửa mà phải ép 1 tấm kim loại nóng lên thì sẽ đỡ hư 18b20

              Comment


              • #8
                oscilloscope là gí anh nói rỏ hơn chút em hông hiểu

                Comment


                • #9
                  Ds18b20 đọc nhiệt độ từ 2 thanh ghi theo chế độ 9, 10, 11, 12 bit. Mình nghĩ bạn mới chỉ đọc 8bit thấp nên chỉ hiển thị đc khoảng 50 độ
                  AVR đã quay trở lại: ATMEGA32: 66k, ATMEGA8A: 30k, ATMEGA48: 30k.
                  Xem thêm tại Online Store ---> Click here
                  Mob: 0982.083.106

                  Comment


                  • #10
                    Nguyên văn bởi thanhnha220 Xem bài viết
                    chào cả nhà mình làm vừa xong cái nhiệt độ nhưng hông hiễu sao chỉ đo được tới 5 mươi mấy độ thui theo mình thiết kế thì phải đo được đến 99 độ trên mô phòng thì chạy ngon mà ra mạch thật chỉ đo được tới 5 mấy độ quá mức nó hiện ra zero ai có kinh nghiệm biết tại sao không
                    MOV20130101 002 - YouTube
                    bạn có thể đưa đoạn code ở chỗ đọc được nhiệt độ và đưa hiển thị được không. có khi đoạn đó có vấn đề.
                    đây là đoạn code của mình đọc ok :

                    ReadTemp(&MyTemp[0]); /// lenh doc t
                    tp = MyTemp[0];tp1 = MyTemp[1]; // lay 2 byte dau tien
                    tp1=tp1<<4;tp1=tp1&0x70; // cho nay xu li thanh nhiet do dang thap phan
                    tp=tp>>4;tp=tp&0x0f;
                    tp=tp|tp1;
                    Last edited by daohuytien; 01-01-2013, 21:57.
                    chỉ có tâm hồn là nơi duy nhất: có thể biến thiên đường thành địa ngục và ngược lại có thể biến địa ngục hóa thiên đường
                    Everything should be made as simple as possible, but not simpler

                    Comment


                    • #11
                      Nguyên văn bởi VNarmy Xem bài viết
                      Ds18b20 đọc nhiệt độ từ 2 thanh ghi theo chế độ 9, 10, 11, 12 bit. Mình nghĩ bạn mới chỉ đọc 8bit thấp nên chỉ hiển thị đc khoảng 50 độ
                      byte thấp, nửa trên là 1 phần của phần nguyên, nửa dưới là phần thập phân của nhiệt độ mà anh.

                      Comment


                      • #12
                        mình đọc hết 12 bit luon mà mình nghĩ anh chung nói dúng vì mình dọc con ds18b20 mà chua có chan dq xác nhận

                        Comment


                        • #13
                          Đúng thế. Ý mình là cần đọc cả 12bit về để convert khác với loại 18s20 chỉ dùng 8bit.
                          AVR đã quay trở lại: ATMEGA32: 66k, ATMEGA8A: 30k, ATMEGA48: 30k.
                          Xem thêm tại Online Store ---> Click here
                          Mob: 0982.083.106

                          Comment


                          • #14
                            ua có con 18b20 8bit hả anh mới làm con này nên không hiểu nhiều chứ hông phải nào củng 12 bit hết hả anh làm sao mua mà phan biệt bậy giờ

                            Comment


                            • #15
                              Nguyên văn bởi thanhnha220 Xem bài viết
                              ua có con 18b20 8bit hả anh mới làm con này nên không hiểu nhiều chứ hông phải nào củng 12 bit hết hả anh làm sao mua mà phan biệt bậy giờ
                              ko phải 18B20 8 bit mà là con 18B20 có thể khai báo độ phân giải để giảm thời gian convert, để khai báo độ phân giải bạn đọc mo tả thanh ghi Configuration trong datasheet, nhưng dù chế độ 8 bit hay 12 bit thì cũng phải đọc 2 byte về xử lý.

                              Comment

                              Về tác giả

                              Collapse

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

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

                              Collapse

                              Đang tải...
                              X