Thông báo

Collapse
No announcement yet.

Một lỗi cực kỳ khó hiểu. Giống như ảo thuật vậy.

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

  • Một lỗi cực kỳ khó hiểu. Giống như ảo thuật vậy.

    Mình sử dụng chip dspic33FJ16GS502 sài dao động nội ở maximum là 40Mips.
    Kích I/O cho 1 con LED với mức 0 là sáng, 1 là tắt.
    Mọi chuyện có vẻ đơn giản nhưng có 1 lỗi như sau: Lúc mình để tay gần board (k đụng chạm về vật lý, gần khoảng 10cm) thì LED sáng, còn lấy tay ra xa một tí thì LED tắt. Board mình đặt trên một miếng cách điện. Sau đó mình mới dùng ossiloscope đo thử thì lúc để tay xa thì kích mức 0 ~ 1V, mức 1 ~ 2V. Lúc tay lại gần thì 0~0V, 1~3.3V.
    Mình đã thử với tất cả các I/O khác đều bị. Và mình hàn 1 board khác thì lỗi trên vẫn xảy ra.
    Mình nghĩ có thể do lỗi của layout làm nhiễu gì đó chăng?

    Bạn nào đã gặp lỗi này thì tư vấn giúp mình nhé?
    The goal of power electronics is control the flow of energy from an electrical source to an electrical load with high efficiency, high availability, high reliability, light weight and low cost.

  • #2
    Mình chưa gặp hiện tượng nào mà chip lại nhiễu khi đưa tay gần tới 10cm. trong khi mọi người đang lục lọi, tìm kiếm các mạch cảm biến thì ở đây lại có luôn một mạch thật đơn giản như vậy. bạn thay thử con khác vào chưa ?
    Mình chia xẻ thêm là đã thử chạm tay vào chân thạch anh của 89s52. hiện tượng là xung clock bị trễ lại gấp khoảng 10 lần.
    Nhà phân phối, đại lý bán biến tần,PLC,HMI,AC Servo... Delta

    Mr.Quỳnh 0978706839

    Comment


    • #3
      Nguyên văn bởi quynhnb Xem bài viết
      Mình chưa gặp hiện tượng nào mà chip lại nhiễu khi đưa tay gần tới 10cm. trong khi mọi người đang lục lọi, tìm kiếm các mạch cảm biến thì ở đây lại có luôn một mạch thật đơn giản như vậy. bạn thay thử con khác vào chưa ?
      Mình chia xẻ thêm là đã thử chạm tay vào chân thạch anh của 89s52. hiện tượng là xung clock bị trễ lại gấp khoảng 10 lần.
      Nếu debug dc lỗi này, có thể sử dụng làm cảm biến dc đấy nhỉ .
      The goal of power electronics is control the flow of energy from an electrical source to an electrical load with high efficiency, high availability, high reliability, light weight and low cost.

      Comment


      • #4
        Nguyên văn bởi chestnut Xem bài viết
        Nếu debug dc lỗi này, có thể sử dụng làm cảm biến dc đấy nhỉ .
        Chắc chắn là vậy. nhưng phải biết chính xác độ ổn định của mạch.
        Nhà phân phối, đại lý bán biến tần,PLC,HMI,AC Servo... Delta

        Mr.Quỳnh 0978706839

        Comment


        • #5
          Lỗi này là lỗi thường gặp, do cấu hình dao động sai. Lỗi này đã được cộng đồng công bố cách đây mấy năm rồi.

          Chúc vui.
          Falleaf
          Công ty TNHH Thương mại và Giao nhận R&P
          58/57 Nguyễn Minh Hoàng - Phường 12 - Quận Tân Bình - TP.HCM
          mail@falleaf.net - VP: (04) 36408561 - (08) 38119870

          Comment


          • #6
            nó làm thay đổi điện dung của mạch RC dao động nội ý mà, đây cũng làm nguyên tắc làm công tắc cảm ứng điện dung

            Comment


            • #7
              Nguyên văn bởi falleaf Xem bài viết
              Lỗi này là lỗi thường gặp, do cấu hình dao động sai. Lỗi này đã được cộng đồng công bố cách đây mấy năm rồi.

              Chúc vui.
              Anh có thể nói rõ hơn được k?
              The goal of power electronics is control the flow of energy from an electrical source to an electrical load with high efficiency, high availability, high reliability, light weight and low cost.

              Comment


              • #8
                Nguyên văn bởi falleaf Xem bài viết
                Lỗi này là lỗi thường gặp, do cấu hình dao động sai. Lỗi này đã được cộng đồng công bố cách đây mấy năm rồi.

                Chúc vui.
                Cái này có lý. Nên xem lại cấu hình OSC

                Comment


                • #9
                  Nếu như cấu hình OSC sai thì chip sẽ sai dao động tần số thôi chử nhỉ ? cái này là sai mức điện áp mà . Mình có dùng timer để config xem có chạy có đúng 40Mhz hay không, thì đo tần số set timer vẫn đúng lúc có tay chạm gần . (Trong interrrupt timer mình có toggle 1 pin để đo )
                  The goal of power electronics is control the flow of energy from an electrical source to an electrical load with high efficiency, high availability, high reliability, light weight and low cost.

                  Comment


                  • #10
                    Nguyên văn bởi chestnut Xem bài viết
                    Nếu như cấu hình OSC sai thì chip sẽ sai dao động tần số thôi chử nhỉ ? cái này là sai mức điện áp mà . Mình có dùng timer để config xem có chạy có đúng 40Mhz hay không, thì đo tần số set timer vẫn đúng lúc có tay chạm gần . (Trong interrrupt timer mình có toggle 1 pin để đo )
                    Cậu post thử đoạn config lên AE góp ý xem. Chứ nó dễ bị nhiễu thế thì MicroChip phá sản mất

                    Comment


                    • #11
                      _FOSCSEL(FNOSC_FRC);
                      // Enable clock switching and configure
                      _FOSC(FCKSM_CSECMD & OSCIOFNC_OFF);

                      int main()
                      {
                      // Configure PLL prescaler, PLL postscaler, and PLL divisor
                      PLLFBD = 41; // M = 43
                      CLKDIVbits.PLLPRE=0; // N1 = 2
                      CLKDIVbits.PLLPOST=0; // N2 = 2
                      // Initiate clock switch to internal FRC with PLL (NOSC = 0b001)
                      __builtin_write_OSCCONH(0x01);
                      __builtin_write_OSCCONL(0x01);
                      // Wait for clock switch to occur
                      while (OSCCONbits.COSC != 0b001);
                      // Wait for PLL to lock
                      while(OSCCONbits.LOCK!=1) {};

                      init_gpio();
                      //RTDM_Start();
                      RLED = LED_ON;
                      GLED = LED_OFF;
                      while(1)
                      {
                      //RTDM_ProcessMsgs();
                      }

                      return 0;
                      }

                      Code rất đơn giản như vầy, nhưng vẫn bị problem đó.
                      The goal of power electronics is control the flow of energy from an electrical source to an electrical load with high efficiency, high availability, high reliability, light weight and low cost.

                      Comment


                      • #12
                        Rất đơn giản nên nó mới bị lỗi, nếu cấu hình cho đầy đủ và chính xác tính năng cần cấu hình thì sẽ hết bị thôi.
                        Xem trong file .h xem có bao nhiêu cấu hình thì phải cấu hình cho đúng và đủ nhé.

                        Đọc kỹ cái đoạn hướng dẫn dao động của dsPIC33 bên picvietnam á.


                        Chúc vui.
                        Falleaf
                        Công ty TNHH Thương mại và Giao nhận R&P
                        58/57 Nguyễn Minh Hoàng - Phường 12 - Quận Tân Bình - TP.HCM
                        mail@falleaf.net - VP: (04) 36408561 - (08) 38119870

                        Comment


                        • #13
                          Em đã coi phần osc này kỹ lắm rồi trong tài liệu của microchip, và với cấu hình như vậy, sau khi build em xem lại trên tool configuration bit của MPLAB và đã chắc chắn rằng phần cấu hình không sai .
                          Đọc qua các bài viết mấy năm về trước, có rất nhiều lỗi tương tự như vậy, nhưng cuối cùng chẳng có ai giải quyết được lỗi này cả .Chỉ là những cách giải quyết tình thế thôi .

                          Sau một vài lần config đi, config lại em quyết định tin tưởng vào phần mềm, và chắc chắn đây là lỗi phần cứng . Cuối cùng sau một vài phút kiểm tra chi tiết từng phần, thì mới phát hiện ra rằng chân reset chưa dc gắn con điện trở kéo nguồn. Lúc này chân MCLR bị float -> hiện tượng này( nếu mình lại gần mạch trong khoảng 10cm thì chân MCLR sẽ lên 3V, nếu ra xa thì nó sẽ float từ 1V-2V) . Nếu test hiện tượng này chạy ổn định , thì có thể chế được nhiều thứ từ vấn đề này đấy nhi?
                          The goal of power electronics is control the flow of energy from an electrical source to an electrical load with high efficiency, high availability, high reliability, light weight and low cost.

                          Comment


                          • #14
                            Làm mạch thứ 2 nó không thế đâu, còn tùy con IC nữa mạch đến gần trong 10cm thì tác động có khó gì mà phải dùng 1 con DsPic để làm...
                            Vẫn biết mỗi lần xa là một lần về lại...

                            Comment


                            • #15
                              Tại em đã thử cả 2 mạch như nhau, đều bị như vậy . Nên giờ về hàn thêm vài mạch nữa coi có như vậy k mới kết luận dc.
                              Vấn đề đâu phải là khó làm mạch tác động hay k? Mà với một hiện tượng như vậy , nếu ổn định như vậy thì có thêm một circuit ngộ ngộ để làm .
                              The goal of power electronics is control the flow of energy from an electrical source to an electrical load with high efficiency, high availability, high reliability, light weight and low cost.

                              Comment

                              Về tác giả

                              Collapse

                              chestnut funy+fat Tìm hiểu thêm về chestnut

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

                              Collapse

                              Đang tải...
                              X