Thông báo

Collapse
No announcement yet.

Không bit lỗi này là lỗi gì trong con Dspic30F4011

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

  • #16
    Nguyên văn bởi chestnut Xem bài viết
    Thử xem lại cáp nạp, nếu cáp nạp quá dài cũng xảy ra hiện tượng lỗi trên, nếu cáp nạp dài quá, bác cắt ngắn bớt rồi nạp thử xem.
    Cáp nạp của tôi chỉ có dài 30Cm thôi!

    Comment


    • #17
      Nguyên văn bởi namqn Xem bài viết
      Mạch thử nghiệm của bạn chắc là tự làm? Sơ đồ mạch thử nghiệm ra sao?

      Thân,
      Em cắm nó lên bo mạch thử mầu trắng để test ( BO mạch cắm). Để điều khiển 1 con LED! Sơ đồ em cắm như hình vẽ trên!

      Comment


      • #18
        Nguyên văn bởi hang1988 Xem bài viết
        Em cắm nó lên bo mạch thử mầu trắng để test ( BO mạch cắm). Để điều khiển 1 con LED! Sơ đồ em cắm như hình vẽ trên!
        Test board (đặc biệt loại thường mua được tại VN) không tốt cho việc thử nghiệm vi điều khiển với tần số clock vài MHz trở lên.

        Trong sơ đồ bạn vẽ phác họa, còn hai cặp chân VDD và VSS chưa được cấp nguồn. Mọi cặp chân nguồn đều cần được cấp nguồn, và nên có một tụ lọc nhiễu loại ceramic, giá trị 100 nF, nối giữa các chân VDD và VSS, đặt càng gần các cặp chân nguồn càng tốt.

        Khi PICkit 2 thả nổi chân MCLR, cần có điện trở kéo lên với giá trị khoảng 10k - 33k nối giữa MCLR và VDD.

        Thân,
        Biển học mênh mông, sức người có hạn

        Comment


        • #19
          Nguyên văn bởi hang1988 Xem bài viết
          Cáp nạp của tôi chỉ có dài 30Cm thôi!
          30 cm thực ra vẫn còn dài, cáp ICSP của ICD 2 chính gốc chỉ dài 15 cm, còn PICkit 2 thì nối vào mạch thử nghiệm qua đầu nối, chứ không dùng cáp ICSP.

          Thân,
          Biển học mênh mông, sức người có hạn

          Comment


          • #20
            Nguyên văn bởi hang1988 Xem bài viết
            Nhứng cái anh nói ở trên em đã check và ko bị như anh nói?
            Pickit 2 em mua ở pnLad anh à!
            Sơ đồ phần cứng của em rất đơn giản thôi : Em vẽ phác họa qua!

            Bạn có thể nhờ PNLab hỗ trợ trong việc làm quen với cách sử dụng PICkit 2 của họ. Chỉ cần 1 lần là bạn có thể sử dụng được.

            Thân,
            Biển học mênh mông, sức người có hạn

            Comment


            • #21
              Nguyên văn bởi hang1988 Xem bài viết
              Cáp nạp của tôi chỉ có dài 30Cm thôi!
              30cm là hơi dài đúng rồi, lúc trước mình cũng sài khoảng 30cm, từ khi gặp hiện tượng không nạp được cho 1 con chip, [lúc nạp giữ chừng báo lỗi] mình debug lòi con mắt cũng không biết nguyên nhân, thậm chí còn khò con chip dán ra rồi hàn con chip mới vô vẫn không tìm được lý do, cuối cùng buồn buồn cắt ngắn cáp nạp ra khoảng 5-10cm mới nạp thành công. Từ đó không bao giờ sài cáp nạp dài cả.
              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


              • #22
                Nguyên văn bởi namqn Xem bài viết
                Test board (đặc biệt loại thường mua được tại VN) không tốt cho việc thử nghiệm vi điều khiển với tần số clock vài MHz trở lên.

                Trong sơ đồ bạn vẽ phác họa, còn hai cặp chân VDD và VSS chưa được cấp nguồn. Mọi cặp chân nguồn đều cần được cấp nguồn, và nên có một tụ lọc nhiễu loại ceramic, giá trị 100 nF, nối giữa các chân VDD và VSS, đặt càng gần các cặp chân nguồn càng tốt.

                Khi PICkit 2 thả nổi chân MCLR, cần có điện trở kéo lên với giá trị khoảng 10k - 33k nối giữa MCLR và VDD.

                Thân,
                Ở đây em muốn dùng luôn nguồn nạp anh à! Em tưởng chỉ cần cấp nối 1 cặp Vss và Vdd là các cặp cặp chân kia nó cũng có điện. Có nghĩa là mình phải đầu nối tất cả các chân nguồn chung vào nhau với chân 2 và 3 của Pickit đúng ko al? Em cũng đã làm như vậy nhưng sao vẫn ko đựoc anh à!
                Hay là mình test trên bo mạch ko được? Psoc em test trên bo mạch cứ chạy ầm ầm. Trường hợp này có bị dei chip ko? NHưng mà Pickit2 vẫn nhận ra chip!

                Comment


                • #23
                  Nguyên văn bởi chestnut Xem bài viết
                  30cm là hơi dài đúng rồi, lúc trước mình cũng sài khoảng 30cm, từ khi gặp hiện tượng không nạp được cho 1 con chip, [lúc nạp giữ chừng báo lỗi] mình debug lòi con mắt cũng không biết nguyên nhân, thậm chí còn khò con chip dán ra rồi hàn con chip mới vô vẫn không tìm được lý do, cuối cùng buồn buồn cắt ngắn cáp nạp ra khoảng 5-10cm mới nạp thành công. Từ đó không bao giờ sài cáp nạp dài cả.
                  Pác à
                  Của tôi nó vẫn báo nạp thành công pác à! Chứ có nạp dở trừng mà ko nạp đựoc đâu! Nhưng có hiện tựong này là :
                  Tôi có câu lệnh như thế này :
                  Code:
                          LATEbits.LATE0 = 0; 
                          for(t=0;t<10000;t++)
                          for(t=0;t<2000;t++);    
                          LATEbits.LATE0 = 1; 
                          for(t=0;t<10000;t++)
                          for(t=0;t<2000;t++);
                  lệnh này là LED nó sáng nhưng ko tắt.
                  Sau đó tôi thay đổi lại :
                  Code:
                          LATEbits.LATE0 = 1; 
                          for(t=0;t<10000;t++)
                          for(t=0;t<2000;t++);    
                          LATEbits.LATE0 = 0; 
                          for(t=0;t<10000;t++)
                          for(t=0;t<2000;t++);
                  Lện này tắt nhưng ko sáng!
                  TÔi cũng ko hiểu được nữa!

                  Comment


                  • #24
                    Nguyên văn bởi hang1988 Xem bài viết
                    Ở đây em muốn dùng luôn nguồn nạp anh à! Em tưởng chỉ cần cấp nối 1 cặp Vss và Vdd là các cặp cặp chân kia nó cũng có điện. Có nghĩa là mình phải đầu nối tất cả các chân nguồn chung vào nhau với chân 2 và 3 của Pickit đúng ko al? Em cũng đã làm như vậy nhưng sao vẫn ko đựoc anh à!
                    Hay là mình test trên bo mạch ko được? Psoc em test trên bo mạch cứ chạy ầm ầm. Trường hợp này có bị dei chip ko? NHưng mà Pickit2 vẫn nhận ra chip!
                    Mạch nạp nhận diện và nạp chương trình được không có liên quan với việc chip có thể chạy chương trình hay không. Vì khi nạp thì không cần xung clock cho chip, mà chỉ có clock dữ liệu ICSP, còn khi chạy chương trình thì chip phải có xung clock. Ngoài ra, nếu chân MCLR không được xác định mức logic '1' thì chip có thể sẽ vẫn ở trạng thái reset, dẫn đến không chạy chương trình ứng dụng.

                    Thân,
                    Biển học mênh mông, sức người có hạn

                    Comment


                    • #25
                      ANh Nam đã rất nhiệt tình! Những anh nam có xem trường hợp bị treo chip ko anh! Hay khẳ năng cấu hình cho dspic ko phù hợp với thạch anh. Cái này em tham khảo của anh!
                      Hôm nay em quuết định đầu tư thêm 1 chú Dspic nữa? Hay là lần trước em mua thế nào có 80K/dspic30f4011. Hay là loại Pic đểu rồi!

                      Comment


                      • #26
                        Nguyên văn bởi hang1988 Xem bài viết
                        Pác à
                        Của tôi nó vẫn báo nạp thành công pác à! Chứ có nạp dở trừng mà ko nạp đựoc đâu! Nhưng có hiện tựong này là :
                        Tôi có câu lệnh như thế này :
                        Code:
                                LATEbits.LATE0 = 0; 
                                for(t=0;t<10000;t++)
                                for(t=0;t<2000;t++);    
                                LATEbits.LATE0 = 1; 
                                for(t=0;t<10000;t++)
                                for(t=0;t<2000;t++);
                        lệnh này là LED nó sáng nhưng ko tắt.
                        Sau đó tôi thay đổi lại :
                        Code:
                                LATEbits.LATE0 = 1; 
                                for(t=0;t<10000;t++)
                                for(t=0;t<2000;t++);    
                                LATEbits.LATE0 = 0; 
                                for(t=0;t<10000;t++)
                                for(t=0;t<2000;t++);
                        Lện này tắt nhưng ko sáng!
                        TÔi cũng ko hiểu được nữa!
                        Tôi không thích dùng loại vòng for lồng mà chỉ có một biến đếm. Không rõ trình dịch có xử lý gì ở chỗ này vì nó quá thông minh hay không.

                        Bạn thử thay hai vòng for đó bằng lệnh __delay32(4000000) (để làm trễ 4 triệu chu kỳ máy) xem có khá hơn hay không (nhớ dùng #include <libpic30.h> để khỏi gặp lỗi biên dịch).

                        Thân,
                        Biển học mênh mông, sức người có hạn

                        Comment


                        • #27
                          Ngàn lần cảm ơn anh nam! Thay kiểu delay của anh vào thì OK! Những xua tan vưỡng mắc đã được giải quết!Thanks.Thanks,Thanks.....Nhưng mà sao vòng for kiểu trên không được thế anh?

                          Comment


                          • #28
                            Nguyên văn bởi hang1988 Xem bài viết
                            Ngàn lần cảm ơn anh nam! Thay kiểu delay của anh vào thì OK! Những xua tan vưỡng mắc đã được giải quết!Thanks.Thanks,Thanks.....Nhưng mà sao vòng for kiểu trên không được thế anh?
                            Dựa vào hiện tượng mà bạn mô tả, tôi đoán rằng trình biên dịch đã tối ưu hóa đoạn mã, làm cho vòng lặp for bị rút ngắn, hoặc có thể bị loại bỏ, dẫn đến chương trình của bạn có vẻ như chỉ thực thi được lệnh sau cùng trong hai lệnh đặt trạng thái bit LATE0 (thực ra cả hai lệnh vẫn được thực thi, nhưng lệnh sau có thời gian chờ lâu hơn một chút, do thực thi lệnh while).

                            Thân,
                            Biển học mênh mông, sức người có hạn

                            Comment


                            • #29
                              Nguyên văn bởi hang1988 Xem bài viết
                              Dùng delay thì không đựoc chính xác. Nhưng ở đây tôi test chip và code xem sao! Các pác làm nhiều nên nó cũng có nhiểu nguyên nhân các pác cũng đã bit!
                              Ở đây em dùng nguồn từ mạch nạp để điều khiển 1 con LED, Khi nạp xong thì có cần chú ý những gì nữa ko? Hay là cứ gắn cả mạch nạp trên đó để chạy (Vì em gắn lên bo thử mà).
                              Liệu rằng chip có dei ko? chả nhé 2 con cùng dẫn nhau đi à! Khi nạp file hex cho chương trình Pickit2 thì nó có cảnh báo thế này ko bit có sao ko?
                              Lỗi wanning này tôi cũng đã gặp và đã giải quyết được rồi. Lúc nào rảnh tôi sẽ giúp.

                              Comment


                              • #30
                                Nguyên văn bởi haidangptn Xem bài viết
                                Lỗi wanning này tôi cũng đã gặp và đã giải quyết được rồi. Lúc nào rảnh tôi sẽ giúp.
                                Pác chỉ dạy luôn đi cho anh em còn học tập! TÔi cũng làm đựoc cái này hết warming:
                                Tôi vào file -> export -> file hex nạp vào cũng ko bị thế?.KO bit pác thế nào/

                                Comment

                                Về tác giả

                                Collapse

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

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

                                Collapse

                                Đang tải...
                                X