PIC Vietnam

PIC Vietnam (http://www.picvietnam.com/forum/index.php)
-   PIC32 - Bộ điều khiển tín hiệu số 32-bit (http://www.picvietnam.com/forum/forumdisplay.php?f=61)
-   -   32MX320F+PICKIT2 => Programming Flash Failed (http://www.picvietnam.com/forum/showthread.php?t=2751)

ngocthanh07 29-08-2008 09:21 AM

32MX320F+PICKIT2 => Programming Flash Failed
 
Các bạn cho mình hỏi
Mình dùng con PIC 32MX320F128H và mạch nạp PICKIT 2 mua của Microchip.
Dùng MPLAB C32 viết chuơng trình rồi Export ra file hex, lúc dùng Pickit 2 Programmer để nạp (Application Version 2.52,Device File Version 1.52, OS Firmware version 2.32)

Khi nạp nó luôn báo lỗi "Programing program flash failed" dù lúc dùng MPLAB C32 xuất file hex mình có chọn có Flash memory hay không.

Các bạn xem thêm hình đính kèm thứ nhất nhé.

Mình đọc lại nội dung đã nạp từ con PIC và so sánh thì thấy file nạp và file đọc được khác nhau ở đoạn cuối cùng.

Để ý kĩ mới thấy nội dung khác nhau đó là đuợc tự thêm vào khi nạp chuơng trình và thêm vào với bất kì file hex nào, nội dung thêm vào này là như nhau.

Các bạn xem thêm hình đính kèm thứ hai nhé


Điều lạ là mặt dù như vậy, chuơng trình nạp vẫn chạy đuợc, PIC32 sao khi nạp xong vẫn chạy đuợc bình thường.

Mình nạp PIC khác là 16F690 thì không thấy hiện tượng trên..

Các bạn cho mình hỏi làm sao để nạp chuơng trình cho PIC32 của mình mà thông báo sẽ là

Programming Successful


Cám ơn mọi nguời

ngocthanh07 29-08-2008 09:24 AM

Hình của câu hỏi trên
 
2 Attachment(s)
Xin lỗi, lúc nãy mình attach cái hình không đuợc, hình nó đây

dspic4011 29-08-2008 09:58 AM

Mach kít thí nghiệm dùng cho pic32 la ban tự thiết kế hay mua ở đâu? khi nạp chương trinh cho pic thì đã nạp rồi nhưng khi đọc lại để kiểm tra thí thấy sự khác biệt nên báo sai. Lỗi này la do mach bạn thiết kế đó ko phải do cái pickit2 đâu.

ngocthanh07 29-08-2008 01:45 PM

Trích:

Nguyên văn bởi dspic4011 (Post 18459)
Mach kít thí nghiệm dùng cho pic32 la ban tự thiết kế hay mua ở đâu? khi nạp chương trinh cho pic thì đã nạp rồi nhưng khi đọc lại để kiểm tra thí thấy sự khác biệt nên báo sai. Lỗi này la do mach bạn thiết kế đó ko phải do cái pickit2 đâu.

Có những vấn đề bạn dã hiểu ý mình chưa:

-Code vẫn chạy đuợc, vi xử lí hoạt động bình thường
-Mình thử chỉ nạp con PIC rời (chỉ hàn chân cấp nguồn thôi, không có gắn thạch anh hay cái gì khác) thì kết quả vẫn vậy, vẫn nạp đuợc, nhưng báo lỗi. đem ra chạy đuợc bình thường
-Phần mã HEX đuợc thêm vào là như nhau ở mọi chuơng trình nạp

Ý mình muốn hỏi là có set giá trị gì trong chuơng trình dịch và chuơng trình nạp không khi nào.

Phần cứng có thể là vấn đề nhưng nó không phải là duy nhất. Mạch là do mình tự làm.

dspic4011 29-08-2008 02:35 PM

Lỗi ở phần cứng bạn coi kỹ lại đi.

ngocthanh07 29-08-2008 02:59 PM

Trích:

Nguyên văn bởi dspic4011 (Post 18469)
Lỗi ở phần cứng bạn coi kỹ lại đi.

Bạn đã thấy phần cứng chưa, sao bạn chắc thế, nếu thế bạn có thể cho mình biết lỗi như vậy thường nằm ở chỗ nào không ! (nói thật mình chả biết cách nào để coi kĩ nữa)

Mình làm hai cái test khác nhau, có một cái là lấy dây hàn trực tiếp lên chân con PIC.
Nhưng hai mạch khác nhau điều có báo lỗi như nhau, kết quả như nhau.

Nếu bạn đã từng bị lỗi này rồi thì giúp mình còn nếu chưa thì xin đừng đoán mò.

Rất cám ơn

dspic4011 29-08-2008 03:27 PM

Đương nhiêu là mìng đã trả wa lỗi như thế này rồi. Nhưng bi lỗi chỗ nào trên cái phần cưng đó thì cân phải coi cai phân cứng đó nữa.
Bạn làm 2 mach khac nhau nhưng về nguyên lý là giống nhau??? Nếu vậy thì có làm thêm cái thứ 3 thi vẫn bị lỗi như thế.

ngocthanh07 25-03-2009 10:17 AM

Trích:

Nguyên văn bởi dspic4011 (Post 18471)
Đương nhiêu là mìng đã trả wa lỗi như thế này rồi. Nhưng bi lỗi chỗ nào trên cái phần cưng đó thì cân phải coi cai phân cứng đó nữa.
Bạn làm 2 mach khac nhau nhưng về nguyên lý là giống nhau??? Nếu vậy thì có làm thêm cái thứ 3 thi vẫn bị lỗi như thế.

Hôm nay mình mới quay lại với bài này.
Mấy hôm rày, Mình mới mua máy tính khác, cài lại phần mềm nạp... nói chung cài lại các cái phần mềm mới và mình dùng mạch cũ, nạp lại OK.

Điều này có nghĩa là gì? Mình thật sự không thích nhưng phải nói rằng: cách trả lời hết sức võ đoán như bạn sẽ làm rất nhiều người bị rắt rối. Sau này nếu chuyện gì chỉ là đoán thì bạn nên nói là "mình đoán là". Dù sao cũng cảm ơn bạn.

Có một điều rất may là từ đầu mình đã không tin câu trả lời của bạn.
Tuy nhiên hiện giờ mình vẫn chưa biết nguyên nhân tại sao.

dspic4011 25-03-2009 03:53 PM

Trích:

Nguyên văn bởi ngocthanh07 (Post 23974)
Hôm nay mình mới quay lại với bài này.
Mấy hôm rày, Mình mới mua máy tính khác, cài lại phần mềm nạp... nói chung cài lại các cái phần mềm mới và mình dùng mạch cũ, nạp lại OK.

Điều này có nghĩa là gì? Mình thật sự không thích nhưng phải nói rằng: cách trả lời hết sức võ đoán như bạn sẽ làm rất nhiều người bị rắt rối. Sau này nếu chuyện gì chỉ là đoán thì bạn nên nói là "mình đoán là". Dù sao cũng cảm ơn bạn.

Có một điều rất may là từ đầu mình đã không tin câu trả lời của bạn.
Tuy nhiên hiện giờ mình vẫn chưa biết nguyên nhân tại sao.

Bạn đã thiết bao nhiêu cái mạch ứng dụng trên pic32? Hiện tại mình đang làm việc trên dòng pic này. Việc lỗi như bạn gặp có thể có nhiều nguyên nhân gây ra mình ko biết cái mạch của bạn như thế nào thậm chí 1 cái hình cũng ko có. Những lỗi như thế mình gặp khá nhiều rồi và đều được giải quyết dựa vào thiết kế của phần cứng làm song ok ngay. Còn cái của bạn bị lỗi như thế bây giờ bạn mua pc mới và nạp tốt bạn cho là lỗi do đâu? Lỗi do pc có chắc vậy ko? Việc cấu hình ko đúng trong c32 cũng có thể dẫn đấn các lỗi như thế. Phần cứng có chỉnh sửa j ko, ngay cả sợ cáp kết nối pickit2 với pc bạn có thay sợ mới ko? Có rất nhiều câu hỏi như thế đều ảnh hưởng đến câu trả lời. Những j mình nói là những j mình đã trả qua những thứ như vậy người ta gọi là kinh nghiệm. Bạn có thể ko tin nhưng liệu bạn có giám chắc mình ko gặp những rắc rồi như vậy nữa ko?

ngocthanh07 26-03-2009 04:23 PM

Trích:

Nguyên văn bởi dspic4011 (Post 23977)
Bạn đã thiết bao nhiêu cái mạch ứng dụng trên pic32? Hiện tại mình đang làm việc trên dòng pic này. Việc lỗi như bạn gặp có thể có nhiều nguyên nhân gây ra mình ko biết cái mạch của bạn như thế nào thậm chí 1 cái hình cũng ko có. Những lỗi như thế mình gặp khá nhiều rồi và đều được giải quyết dựa vào thiết kế của phần cứng làm song ok ngay. Còn cái của bạn bị lỗi như thế bây giờ bạn mua pc mới và nạp tốt bạn cho là lỗi do đâu? Lỗi do pc có chắc vậy ko? Việc cấu hình ko đúng trong c32 cũng có thể dẫn đấn các lỗi như thế. Phần cứng có chỉnh sửa j ko, ngay cả sợ cáp kết nối pickit2 với pc bạn có thay sợ mới ko? Có rất nhiều câu hỏi như thế đều ảnh hưởng đến câu trả lời. Những j mình nói là những j mình đã trả qua những thứ như vậy người ta gọi là kinh nghiệm. Bạn có thể ko tin nhưng liệu bạn có giám chắc mình ko gặp những rắc rồi như vậy nữa ko?

Bạn đã nêu lên vấn đề rồi đó, tấc cả mọi thứ mình đều dùng lại cái cũ , chỉ trừ cái máy tính. Ngay cả file hex cũng là file cũ.

Mình không khi nào nói tại máy tính. Máy tính chỉ biết nghe lời chúng ta và làm, cái sai là chúng ta đã ra lệnh sai cho nó, hoặc nó không thể làm theo lệnh chúng ta.

Tuy bạn có nhiều kinh nghiệm, nhưng như bạn thấy đó, một vấn đề có nhiều nguyên nhân, không nên dựa vào kinh nghiệm của bạn (vì bạn nghĩ ai mới bắt đầu cũng sai chỗ giống nhau và giống như bạn sao?) Mình viết bài này để thực sự khuyên bạn, hãy cố gắng lắng nghe nguời khác nhiều hơn, kinh nghiệm thì quí nhưng biết suy nghĩ mới đáng quí.
Trích:

Bạn đã thiết bao nhiêu cái mạch ứng dụng trên pic32?
Nói thiệt là mình chưa thiết kế cái ứng dụng nào trên PIC32, thậm chí PIC, và mọi vi xử lí khác, thậm chí mình chưa bao giờ học 8051.
Chúng nó chỉ là công cụ thôi bạn àh!
Việc bạn gặp những lỗi như thế khá nhiều chỉ chứng tỏ đựoc một điều, bạn làm nhiều ứng dụng mà lần nào cũng gặp lỗi như vậy !

Nếu bạn đã gặp lỗi như vậy khá nhiều rồi thì bạn nói xem tại sao lỗi như thế mà chương trình vẫn chạy được?

namqn 26-03-2009 04:42 PM

Trích:

Nguyên văn bởi ngocthanh07 (Post 24032)
Bạn đã nêu lên vấn đề rồi đó, tấc cả mọi thứ mình đều dùng lại cái cũ , chỉ trừ cái máy tính. Ngay cả file hex cũng là file cũ.

Mình không khi nào nói tại máy tính. Máy tính chỉ biết nghe lời chúng ta và làm, cái sai là chúng ta đã ra lệnh sai cho nó, hoặc nó không thể làm theo lệnh chúng ta.

...

Điều bạn nghĩ rằng không thể xảy ra lại có thể xảy ra đấy. PICkit 2 được cấp nguồn từ qua cổng USB của máy tính, do đó hai máy tính khác nhau có thể cấp nguồn ở điện áp chênh lệch nhau (nhưng vẫn trong tiêu chuẩn của nhà sản xuất máy tính) cho PICkit 2.

Không rõ mạch PIC32 của bạn được cấp nguồn riêng hay cấp nguồn qua PICkit 2, nếu PIC32 được cấp nguồn từ PICkit 2 thì bạn cũng nên chú ý rằng khả năng cấp dòng của PICkit 2 rất hạn chế.

Do đó, dù bạn chỉ thay thế mỗi cái máy tính, kết quả thử nghiệm của bạn trong hai trường hợp vẫn có thể khác nhau. Ở đây, cần xem xét thêm khả năng vật lý của máy tính, bên cạnh khả năng xử lý thông tin.

Thân,

ngocthanh07 26-03-2009 08:50 PM

Trích:

Nguyên văn bởi namqn (Post 24033)
Điều bạn nghĩ rằng không thể xảy ra lại có thể xảy ra đấy. PICkit 2 được cấp nguồn từ qua cổng USB của máy tính, do đó hai máy tính khác nhau có thể cấp nguồn ở điện áp chênh lệch nhau (nhưng vẫn trong tiêu chuẩn của nhà sản xuất máy tính) cho PICkit 2.

Cảm ơn Anh Nam đã chỉ, truớc đây em dùng PICKIT2 để nạp cái mạch PIC32 của em, nạp faile nhưng chạy được. Cả nạp và chạy điều dùng nguồn máy tính. Có lẽ nào cái nguồn máy tính bị thiếu điện áp đến mức nạp failed (chính xác là verify faille) nhưng lại chạy OK.


Trích:

Do đó, dù bạn chỉ thay thế mỗi cái máy tính, kết quả thử nghiệm của bạn trong hai trường hợp vẫn có thể khác nhau.

Thật ra lúc truớc em ở trong công ty, đã thử bằng hai cái máy tính luôn. Sau đó em đem cái đống mạch đó vô bịch nylong và để tới giờ. Bây giờ đem ra thử lại với cái laptop thì cả nạp lẫn chạy đều OK.

Không phải tự dưng em đem bài này ra nói làm gì, chuyện đã cũ rồi, nhưng em không thể để như vậy đuợc, sau này nếu có bạn nào bị vấn đề như em cũng có thể hiểu rằng đây không hẳn là sai do phần cứng....


Trích:

Ở đây, cần xem xét thêm khả năng vật lý của máy tính, bên cạnh khả năng xử lý thông tin.

Thân,
Em đã nói "cái sai là chúng ta đã ra lệnh sai cho nó, hoặc nó không thể làm theo lệnh chúng ta", khả năng vật lý của máy không đủ tức là nó không thể làm theo lệnh của chúng ta đó


------------------------
P/S Nếu có ai biết đuợc nguyên nhân thì xin nêu thêm, còn không xin các mod vui lòng khóa luồng này lại giúp em.

namqn 26-03-2009 09:00 PM

Trích:

Nguyên văn bởi ngocthanh07 (Post 24041)
...
Em đã nói "cái sai là chúng ta đã ra lệnh sai cho nó, hoặc nó không thể làm theo lệnh chúng ta", khả năng vật lý của máy không đủ tức là nó không thể làm theo lệnh của chúng ta đó
...

Thực ra tôi không muốn tranh luận ở đây, mà chỉ muốn nhân sự việc này nhắc các bạn nên nhìn nhận vấn đề đầy đủ hơn.

Khả năng vật lý mà tôi nói là theo cách nhìn của mạch bên ngoài, chứ không phải từ phía máy tính. Như tôi đã nói ở trên, điện áp cổng USB có thể vẫn nằm trong quy định đối với phần cứng USB (như vậy là nó vẫn làm được cái yêu cầu là cấp nguồn cho mạch ngoại vi) nhưng ở mạch ngoại vi vì một lý do nào đó mà không thể làm việc với điện áp nguồn từ USB thấp hơn một mức nào đó.

Thân,

namqn 26-03-2009 09:20 PM

Về vấn đề mà bạn đã nêu ở post #1 và #2, tôi có các ý kiến như sau:

- Xem hình thứ nhất của bạn, tôi để ý phần mềm được dùng không hoàn toàn giống với phần mềm của Microchip, vì ở tiêu đề có thêm "T.T NEW TECH". Phần mềm này có thể được biên dịch lại từ source code của Microchip, điều này không có vấn đề gì, nhưng nhỡ khi sửa source code mà có chỗ nào đó bị sửa nhầm thì sao? Nếu mọi sự đều ok nhưng phần mềm được sửa đó lại báo nhầm thì sao?

- Xem hình thứ hai của bạn, tôi thử nhẩm tính thì đoạn dữ liệu được thêm vào là thuộc vùng boot flash của PIC32. Trong tập tin .hex của bạn không mô tả dữ liệu trong vùng boot flash, nhưng có khả năng khi đọc về từ PIC32 thì phần mềm đọc luôn dữ liệu từ vùng này.

Điều tôi muốn nói ở đây là chip của bạn được nạp thành công, và điều này đã được chứng minh trên mạch thật của bạn, còn những gì bạn thấy trên phần mềm chưa hẳn đã là sự lạ, nếu xem xét kỹ càng.

Thân,

dspic4011 26-03-2009 10:35 PM

Bạn ngocthanh07 mở cái luồng này ra để làm j? Bạn gặp rắc rối với pic32 và muốn mọi ngươì giúp bạn. Tôi đã cố giúp bạn bằng sự hiểu biết của tôi. Đùng 1 cái bạn giải quyết được vấn đề của mình mà bây giờ chắc bạn cũng ko hiều lý do tại sao. Rồi bạn quay lại nói với tôi,....... Có vậy lần sau tôi cũng ko giám ý kiến j nữa. Và 1 ai đó khác rơi vào tình trạng như tôi hiện tại chắc cũng chẳng giám ý kiếm j nữa.


Múi giờ GMT. Hiện tại là 05:50 AM.

Tên diễn đàn: vBulletin Version 3.8.11
Được sáng lập bởi Đoàn Hiệp.
Copyright © PIC Vietnam