Thông báo

Collapse
No announcement yet.

Watchdog ( PIC16F877A) ngủm thì làm thế nào?

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

  • #31
    Cái này thì trời wd cũng không gỡ được.

    Code:
    main()
    {
        bit ennable;
        //Bo qua mấy dòng khởi tạo 
        ennable=0;
        while(1)
        {
           CLRWDT();
           if(enable && (RD2==0)) QuaTai;
        }
    }
    //------------
    void QuaTai()
    {
          RD5=1;
    }
    Thực tế bit enable không bao giờ gán = 1 nhưng chương trình vẫn nhảy vào Mode Quá tải khi cao áp đánh lửa.

    Comment


    • #32
      Nguyên văn bởi queduong Xem bài viết
      --- Còn vấn đề xử lý bọc kim thì tôi làm 89 vẫn chạy ầm ầm ở công suất 30W .
      Đệ tử của tui chắc bác vẫn biết, cái mạch có dùng con LMX2316, làm chơi chơi công suất 10w nó chẳng cần bọc kim nhưng PIC16F877A vẫn ko treo.

      Comment


      • #33
        Nguyên văn bởi queduong Xem bài viết
        Nó có nghĩa riêng của nó , Bản chất nó chạy Fuse ROM nên rõ ràng là ổn định hơn hệ Flash.

        Hoặc như các chip đời mới bây giờ , sau khi lập trình thì có thể coi như nó " như là IC cứng chuyên dụng " vậy.
        Không phải đâu đâu bác, Fuse ROM - 1 lần - chết cứng và Flash - nhiều lần - dễ thay đổi - ko ổn định như bác đoán đâu. Khi reset lại thấy Flash có bị thay đổi nội dung đâu. Bản chất là do công nghệ chế tạo của nhà sản xuất giữa 2 công nghệ ROM và Flash và công nghệ khi interface giữa ROM/Flash và các thành phần cấu tạo nên uC. Vấn đề sâu xa này mong Mod Nam hay bác BA có thời gian thì cho anh em mở rộng tầm mắt với.
        Bác Falleaf có thời gian thì trao đổi các hiện tượng trên với Microchip xem sao. Hỏi họ trường hợp nào thì dùng dòng C, F.. ở các môi trường khác nhau.

        Comment


        • #34
          Nguyên văn bởi BinhAnh Xem bài viết
          PICxxF cũng không kém như bác VNarmy nghĩ. Vì ở môi trường đến 3 cái máy tính cách 25m cũng treo thì cũng không thể nói gì hơn được. Mà chế độ hàn hồ quangm dòng mỗi lên tới cả trăm ampe, phóng hồ quang đỏ rực nhưng PIC18F458 không sao, nó chỉ đơ khi hàn xung cao áp đánh lửa. Trong khi đó 1 con PIC16C nằm ngay trên board không sao cả.

          Về chuyện so sánh giữa AVR và PIC thì tui đến giờ cũng chỉ nghe nói chứ chưa ai cam đoan điều đó mà ngược lại. Một người bạn tôi từng biết làm bên quân đội về cao tần(có dùng con LMX chắc bác QD biết nó làm gì)đã phải dùng F88 thay cho avr và đi đến kết luận PIC16F88 tốt hơn trong RF. Anh bạn này F biết vì chính con LMX đó F mua hộ anh ta.
          Cái em làm nó ở công ty thép cán nguội Hòa Phát. Bác có thể ghé qua tham quan. Khi nó hàn thì màn hình máy tính rung bần bật ấy chứ.
          Còn chuyện so sánh giữa AVR và PIC thì xưa đến nay vẫn được xếp vào đề tài stupid. Bác nào dùng quen cái nào thì thích cái đó thôi. Ít có ai như bác QD đá song song cả hai cái. Ngày xưa làm 89 nhiều chương trình một đằng chạy một nẻo là chuyện bình thường. Bây giờ lên đời AVR, PIC cứ viết là chạy xướng quá còn gì.
          Như ở cái Viện của em chẳng hạn. Bây giờ đang chuộng AVR vì em phục vụ tận nơi, giá rẻ hơn hẳn PIC. Nhưng mấy năm nữa chú MinhPic chú ấy lên chú ấy lại đổi hết sang PIC thì sao.
          Còn trong các hệ xử lý lớn của QĐ như Radar và TL thì cái loại 8 bit như PIC với AVR sức mấy mà vào đó. Trong đó toàn dùng mấy con FPGA, FPAA hay 8086(loại cũ), i80196.
          Về công nghiệp thì em thấy bọn Hàn rất hay dùng 80196, bọn Taiwan thì dùng dòng Winbond.
          Riêng thiết bị y tế của Bayer thì thường xuyên dùng i80196.

          Mà thôi các bác tập trung vào vấn đề chính của bác MH đi. Em rất muốn nghe các ý kiến của các bác. Đặc biệt của F với danh nghĩa là nhà support chính thức của Microchip.
          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


          • #35
            Nguyên văn bởi BinhAnh Xem bài viết
            Cái này thì trời wd cũng không gỡ được.

            Code:
            main()
            {
                bit ennable;
                //Bo qua mấy dòng khởi tạo 
                ennable=0;
                while(1)
                {
                   CLRWDT();
                   if(enable && (RD2==0)) QuaTai;
                }
            }
            //------------
            void QuaTai()
            {
                  RD5=1;
            }
            Thực tế bit enable không bao giờ gán = 1 nhưng chương trình vẫn nhảy vào Mode Quá tải khi cao áp đánh lửa.


            He he , bác đã thử với ATMEGA 128L chưa mà kết luận vội vàng thế

            tôi mới chỉ nói AVR và PIC16 ở cái WDT thôi những họ MCU tôi đã gặp và làm thì còn nhiều con mạnh hơn nhiều (ở khả năng chống nhiễu).

            Tôi không thông thạo nhiều nhưng tôi dùng khá nhiều loại .
            Ở đây anh em đang thảo luận về vấn đề watchdog của con PIC nó đã không hoạt động hiệu quả .

            Bác ít lên diễn đàn nhưng nếu để ý sẽ thấy từ lâu lắm rồi có một bài của tôi đã từng hỏi " Làm sao để watchdog ( nội ) hoạt động có hiệu quả ( bác có thể search để minh chứng )
            Đấy là vấn đề tôi gặp đã từ quá lâu rồi nhưng chưa được lời giải đáp thỏa đáng .
            Nếu không có vấn đề thì nói thẳng là tôi đã không viết bài đó để nhờ các " Gọi là cao thủ " ra tay ...
            ( Và bây giờ thì không biết cái chủ đề còn hay trôi dạt chỗ nào )


            ----------

            Bác phải biết rằng , thằng đệ của bác nó làm con 877A trong cái bài về điều tần FM , nói thật là không dùng WDT nó cũng chẳng treo .

            Ở đây anh em bàn luận vui vẻ ( bác đừng nghĩ gì nhiều ) , nếu có giải pháp gì thì bác chia sẻ cho anh em .

            Còn nếu cần kiểm chứng PIC877A , 876A , 88 tôi sẽ bớt thời gian để tổ chức làm mạch phát xung RF ( như những mạch thu phát bình thường thôi ) ( sử dụng phương pháp điều tần xung hoặc OOK ) ...

            với công suất 1,5W thôi , nếu thằng Đệ của bác mà làm không bị treo pic thì lúc đó tôi mới phục nó được .


            --- CÒN khi đã bị treo thì vấn đề là ta đi tìm giải pháp để giải quyết , Nhiễu vẫn là nguy cơ tiềm ẩn của bất cứ người thiết kế nào chứ không phải đánh giá ở cấp độ hay trình độ.

            --- LMX là dòng IC tốt nhưng cổ đại rồi, bây giờ người ta dùng thứ khác


            @@@ Còn bài toán trên bác đưa ra nếu sử dụng dòng 48HR của hãng HOLTEK thì chẳng xi nhê gì đâu ( AVR thì tôi chưa dám đảm bảo 100% nhưng có điều kiện tôi sẽ test thử)

            --- Không phải ngẫu nhiên mà mạch phát tôi dùng AVR mạch thu tôi dùng PIC . Tất cả đều có lý do của nó.


            Kể cả trong giới hạn của chủ đề này , có nhiều cái liên quan đến " vấn đề muôn thủa " tôi không tiện trình bày .


            VẪN CẦN LẮNG NGHE Ý KIẾN CỦA CÁC CHUYÊN GIA HAY ĐẠI DIỆN NHÀ CUNG CẤP .

            ( Còn nếu thực sự như PIC877A không đủ năng lực ( và cũng không muốn dùng watchdog ngoài ) thì dùng con khác cũng được chứ sao . Đành thiết kế lại thôi ( đó cũng là cách đúc kết kinh nghiệm )

            --- Cứ tầm 40 chân dòng phổ thông đó mà chơi em 68HC của moto rola thì khỏi phải nghĩ . Bây giờ đang mắc cạn ở PIC rồi , có rút ra thì cũng mệt ( cho nên có giải pháp là có TIỀN rồi ).
            Module RF chuyên dụng điều khiển, truyền dữ liệu, thiết kế đề tài, dự án điện tử - chuyển giao công nghệ... ĐT: 0904964977 - email: dientuqueduong@yahoo.com

            Comment


            • #36
              Bác hoàn toàn hiểu sai vấn đề. Tôi đang nói về ví dụ PIC tôi đã gặp phải, không nói những chuyện khác.
              Bác đọc kỹ ví dụ tôi post chút nữa.Bác hiểu sai kiến thức cơ bản về Watchdog nội. Tôi đưa ví dụ trên để bác hiểu là khi có nhiễu nó thay đổi nội dung thanh ghi thì wd bó tay, đơn cử cho bác, nếu 1 biến bác gán = 10, nhiễu khiến nó thay đổi =0.
              Nếu bác cần thì search lại bài gì đó về wd nội của bác, nếu trong trình độ cho phép, tui sẽ giải thích giúp bác. Không thể bắt wd làm cái việc nó không làm được. Làm thế nào biến x=2, khi bị nhiễu nó thay đổi =3, wdog không thể phát hiện để gán nó = 2 được. Do biến x=3 nên nó sẽ nhảy vào rẽ nhánh nào đó mà mình không biết trước được

              Comment


              • #37
                Nguyên văn bởi BinhAnh Xem bài viết
                Bác hoàn toàn hiểu sai vấn đề. Tôi đang nói về ví dụ PIC tôi đã gặp phải, không nói những chuyện khác.
                Bác đọc kỹ ví dụ tôi post chút nữa.Bác hiểu sai kiến thức cơ bản về Watchdog nội. Tôi đưa ví dụ trên để bác hiểu là khi có nhiễu nó thay đổi nội dung thanh ghi thì wd bó tay, đơn cử cho bác, nếu 1 biến bác gán = 10, nhiễu khiến nó thay đổi =0.
                Nếu bác cần thì search lại bài gì đó về wd nội của bác, nếu trong trình độ cho phép, tui sẽ giải thích giúp bác. Không thể bắt wd làm cái việc nó không làm được. Làm thế nào biến x=2, khi bị nhiễu nó thay đổi =3, wdog không thể phát hiện để gán nó = 2 được. Do biến x=3 nên nó sẽ nhảy vào rẽ nhánh nào đó mà mình không biết trước được


                SORRY ! tôi đã hiểu sai vấn đề . ( Giữa thay đổi nội dung và treo không chạy nữa là 2 vấn đề khác nhau ).

                --- Để giải quyết vấn đề treo rồi RESET bằng wdt nội thì có nhiều cái tốt hơn PIC ạ .

                --- Còn cái vấn đề thay đổi nội dung ( ít hay nhiều ) chắc sẽ phải luận bàn vì mỗi con , mỗi dòng một kiểu .
                Module RF chuyên dụng điều khiển, truyền dữ liệu, thiết kế đề tài, dự án điện tử - chuyển giao công nghệ... ĐT: 0904964977 - email: dientuqueduong@yahoo.com

                Comment


                • #38
                  Nguyên văn bởi queduong Xem bài viết
                  SORRY ! tôi đã hiểu sai vấn đề . ( Giữa thay đổi nội dung và treo không chạy nữa là 2 vấn đề khác nhau ).

                  --- Để giải quyết vấn đề treo rồi RESET bằng wdt nội thì có nhiều cái tốt hơn PIC ạ .

                  --- Còn cái vấn đề thay đổi nội dung ( ít hay nhiều ) chắc sẽ phải luận bàn vì mỗi con , mỗi dòng một kiểu .
                  Hi vọng luồng này sẽ có nhiều cao thủ Bắc Nam cùng xây dựng, càng đưa ra nhiều ví dụ càng tốt, PIC hay AVR càng bị chửi nhiều càng tốt, lúc đó sẽ có nhiều kinh nghiệm cho anh em trên diễn đàn.
                  Gửi anh MinhHa: anh tạo ra luồng giật gân quá, anh đổi cái tên khác nghe nó mượt mà hơn tý. Vụ treo PIC có giải quyết được ko?

                  Comment


                  • #39
                    Nguyên văn bởi BinhAnh Xem bài viết
                    Hi vọng luồng này sẽ có nhiều cao thủ Bắc Nam cùng xây dựng, càng đưa ra nhiều ví dụ càng tốt, PIC hay AVR càng bị chửi nhiều càng tốt, lúc đó sẽ có nhiều kinh nghiệm cho anh em trên diễn đàn.
                    Gửi anh MinhHa: anh tạo ra luồng giật gân quá, anh đổi cái tên khác nghe nó mượt mà hơn tý. Vụ treo PIC có giải quyết được ko?
                    Đã đổi tên
                    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


                    • #40
                      Nếu để WD phải ra tay chỉ là đỡ ê mặt khi mang sản phẩm về từ khách hàng thôi.
                      Chống nhiễu mới là cái cần quan tâm các cao thủ ah............
                      Tôi thấy một số cao thủ vì vấn đề giá cả mà muốn bớt nhiều thứ là không nên (khác gì Rút ruột công trình đâu); trong sản phẩm nên có nhiều phương án dự phòng cho nhau thiết bị thế mới xịn chứ
                      Hôm nay trời nắng chang chang.
                      Mèo con đi học chẳng mang thứ gì.
                      Chỉ mang một cái bút chì.
                      Và mang một mẩu bánh mì con con.

                      Comment


                      • #41
                        Nguyên văn bởi Acxen_lupine Xem bài viết
                        Nếu để WD phải ra tay chỉ là đỡ ê mặt khi mang sản phẩm về từ khách hàng thôi.
                        Chống nhiễu mới là cái cần quan tâm các cao thủ ah............
                        Tôi thấy một số cao thủ vì vấn đề giá cả mà muốn bớt nhiều thứ là không nên (khác gì Rút ruột công trình đâu); trong sản phẩm nên có nhiều phương án dự phòng cho nhau thiết bị thế mới xịn chứ
                        Một sản phẩm đưa ra thị trường phải tối ưu chứ không phải là cái kit phát triển bạn ạ.

                        Comment


                        • #42
                          vấn đề k phải vậy bạn ạ. Dự phòng là tất yếu. Mình dùng WD ngoài thì OK rồi. Có nhiều trường hợp cần WD chứ không phải là phòng treo MCU. Vì coder con PIC ma để chạy bị treo thì nói làm gì nữa.
                          Mình làm con này cũng để test là chính. Cái con 18F87J10 cũng vậy. Làm có 1 cái. Còn dòng công nghiệp mình dùng Intel 8088,80196 và bây giờ 80386.

                          Mình nói vậy không chỉ mang tính chất nhờ mọi người giúp đâu, mà để anh em mình biết ngoài vô số ưu diểm thì nó cũng có nhược điểm hay anh em mình chưa biết kỹ về nó.
                          Vậy thôi, nhưng đây là nền móng. Làm tốt nền móng trước đã kẻo làm xong sản phẩm rồi thì hết thuốc chữa.
                          Thất bại không nằm trong những cái cao siêu mà ở trong chính cái mà ta xem là tầm thường nhất.
                          Nhà sản xuất chuyên nghiệp các sản phẩm OEM cho gia dụng và công nghiệp.

                          Biến tần
                          Máy giặt
                          Lò vi sóng
                          Bếp từ.
                          Tủ lạnh.
                          Điều hòa

                          Comment


                          • #43
                            Còn về dự phòng thì mình chắc ở VN mà làm thật như bọn mình chỉ có vài ông là cùng.
                            Này nhé. Cho phép thay thế CPU mà chương trình vẫn chạy. Người sử dụng không hề biết là hệ thống vừa được bảo dưỡng hay thay thế.
                            Nhà sản xuất chuyên nghiệp các sản phẩm OEM cho gia dụng và công nghiệp.

                            Biến tần
                            Máy giặt
                            Lò vi sóng
                            Bếp từ.
                            Tủ lạnh.
                            Điều hòa

                            Comment


                            • #44
                              Chào bác MinhHa! Tôi mới gia nhập nên chưa hiểu nhiều lắm về tinh thần trên diễn đàn, Có gì không đúng mong bác chỉ giáo thêm.
                              Các bác nghĩ sao về xuất xứ của linh kiện, vì hiện nay có nhiều nơi làm nhái linh kiện lắm. Có những vấn đề mà ta làm đã rất tốt rồi nhưng nhiều lúc vẫn vấp mà không hiểu do đâu, đã có một vài lần tôi vẫn giữ nguyên giải pháp chỉ thay linh kiện đảm bảo chất lượng (mua của chính hãng, vẫn tên tuỗi linh kiện đó) thế là ổn.
                              Hôm nay trời nắng chang chang.
                              Mèo con đi học chẳng mang thứ gì.
                              Chỉ mang một cái bút chì.
                              Và mang một mẩu bánh mì con con.

                              Comment


                              • #45
                                Nguyên văn bởi MinhHa Xem bài viết
                                Còn về dự phòng thì mình chắc ở VN mà làm thật như bọn mình chỉ có vài ông là cùng.
                                Này nhé. Cho phép thay thế CPU mà chương trình vẫn chạy. Người sử dụng không hề biết là hệ thống vừa được bảo dưỡng hay thay thế.
                                Cái vụ này hay đấy. Hôm nào qua anh MH chỉ thêm cho em vài đường cơ bản. Thằng em vẫn còn kém lắm.
                                Rise your Ideas.
                                Ethernet-RS232, PIC Webserver, RFID Reader
                                CallerID, Cảnh báo BTS, ...
                                0988006696
                                linhnc308@gmail.com
                                http://linhnc308.blogspot.com

                                Comment

                                Về tác giả

                                Collapse

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

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

                                Collapse

                                Đang tải...
                                X