PIC Vietnam

Go Back   PIC Vietnam > Microchip PIC > Các ngôn ngữ lập trình khác (CCS C, HT PIC,...)

Tài trợ cho PIC Vietnam
Trang chủ Đăng Kí Hỏi/Ðáp Thành Viên Lịch Tìm Kiếm Bài Trong Ngày Ðánh Dấu Ðã Ðọc Vi điều khiển

Trả lời
 
Ðiều Chỉnh Xếp Bài
Old 25-07-2005, 10:42 AM   #1
tuanva
Đệ tử 2 túi
 
Tham gia ngày: Jun 2005
Bài gửi: 33
:
Trích:
Nguyên văn bởi falleaf
Đó thực ra là debug, vậy thì đâu có khác gì. Riêng với PIC6F628A, có chương trình ELAB628 cho phép visiual debug.

Chúc vui.
Nếu như Falleaf nói và như noisePIC đã làm thì viết chương trình C bắt buộc phải nắm vững ASM ( ). Tôi đang rất băn khoăn về điều này, không biết debug chương trình như thế nào cho tốt. Một số chương trình tôi dùng thử (ví dụ MikroC) cho phép mô phỏng chíp để debug, nhưng như thế thì debug các chương trình truyền thông và xử lý ngắt như thế nào? Có cách nào debug chương trình ngay trên chip không nhỉ?

Về điều này Falleaf đã từng nói:
Trích:
Nguyên văn bởi falleaf
ICD2 = In Circuit Debuger, là một mạch debug thời gian thực với con PIC thật được cắm trên bo mạch. Hoàn toàn không liên quan gì đến việc debug chương trình cả.

Mình sẽ viết một bài hướng dẫn debug chương trình bằng MPLAB IDE và gửi lên trong thời gian sớm nhất.
Tôi vẫn đợi cậu câu trả lời đấy nhé.

Cám ơn diễn đàn và mọi người,
Chúc vui.
__________________
I'm beginner.
tuanva vẫn chưa có mặt trong diễn đàn   Trả Lời Với Trích Dẫn
Old 25-07-2005, 11:18 AM   #2
falleaf
PIC Bang chủ
 
falleaf's Avatar
 
Tham gia ngày: May 2005
Bài gửi: 2,631
:
Send a message via Yahoo to falleaf
ICD2 giúp các bạn debug trên chip, có nghĩa là nó sẽ chạy và thay vì bạn thấy con chip của bạn nó nhấp nháy đèn trên chân của chương trình mô phỏng ảo, thì ở đây, bạn cắm con PIC vào mạch, và nó cũng chạy y hệt như vậy, chỉ có cái khác là nó chạy với mạch thật. Đó chính là chức năng ICD.

Tuy nhiên, làm sao để debug thời gian thực. Cũng như khi debug với ngôn ngữ cấp cao, bạn phải tạo ra các khóa để dừng chương trình. Vd: Bạn muốn gửi dữ liệu vào máy tính, mà bạn bấm từng nút cho nó chạy từng lệnh, thì không ổn, vì lúc đó máy tính sẽ không hiểu. Mà bạn phải gửi luôn 1 lần. Có nghĩa là bạn phải chạy luôn cả một đoạn chương trình nào đó. Vậy vd để xem khi vào ngắt chương trình có chạy đúng không, thì bạn phải thêm một lệnh NOP ở đầu chương trình ngắt, một lệnh NOP ở cuối trình ngắt, sau đó đặt break point tại 2 điểm này. Nó chạy xong, bạn tìm cách xem lại kết quả. Đó là phương pháp. Tất nhiên, đây là phương pháp debug cho những cái về truyền dữ liệu, hoặc một loạt các thao tác liên tục nào đó, chẳng hạn như timer...

Sau khi nó làm xong nhiệm vụ gửi, những nhiệm vụ điều khiển, thì các bạn phải debug chậm để xem nó đúng không.

Tôi sẽ viết bài về MPLAB IDE, còn bài về ICD2 đành chờ batbatdieu viết vậy, vì cậu này chuyên làm việc với ICD2.
falleaf vẫn chưa có mặt trong diễn đàn   Trả Lời Với Trích Dẫn
Trả lời

Ðiều Chỉnh
Xếp Bài

Quyền Sử Dụng Ở Diễn Ðàn
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is Mở
Smilies đang Mở
[IMG] đang Mở
HTML đang Tắt

Chuyển đến

Similar Threads
Ðề tài Người gửi Chuyên mục Trả lời Bài mới
các công cụ debug tranhuyky Chương trình dịch & các công cụ mô phỏng 0 22-11-2006 11:03 PM
Hoi ve debug Luanquangnam Các ngôn ngữ lập trình khác (CCS C, HT PIC,...) 8 29-08-2006 11:44 AM


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


Được sáng lập bởi Đoàn Hiệp
Powered by vBulletin®
Page copy protected against web site content infringement by Copyscape
Copyright © PIC Vietnam