PIC Vietnam

Go Back   PIC Vietnam > Microchip PIC > Cơ bản về vi điều khiển và 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

Cơ bản về vi điều khiển và PIC Những bài hướng dẫn cơ bản nhất để làm quen với vi điều khiển PIC

Trả lời
 
Ðiều Chỉnh Xếp Bài
Old 23-11-2009, 12:00 AM   #1
namqn
Trưởng lão PIC bang
 
Tham gia ngày: Feb 2006
Nơi Cư Ngụ: Tp. HCM, Việt Nam
Bài gửi: 3,025
:
Send a message via Yahoo to namqn
Trích:
Nguyên văn bởi pk178 View Post
...
Em cũng đã xem 1 số tài liệu hướng dẫn cách lập trình, người ta có nói là chương trình cho ngắt không nên quá dài. Em nghĩ cũng có thể là chương trình ngắt của em dài quá (em có sử dụng kiểu biến int32 trong đó) nên nó bị lỗi này.

Em muốn hỏi các bác xem có cách nào khắc phục lỗi này được không, em có ý tưởng là sau 1 lệnh, mình có thể xóa ngay dữ liệu trong stack đi, rồi tiếp tục thực hiện lệnh tiếp theo, như vậy sẽ ko bị tràn stack nữa.

Cái khó là em không biết thao tác thế nào với ý tưởng này. Bác nào biết thì hướng dẫn em với ạ, làm trên C càng tốt, nếu không thì các bác cứ hướng dẫn trên asm cũng được, em có thể chèn đoạn mã asm vào trong C
Đúng là chương trình xử lý ngắt không nên quá dài, bạn chỉ cần bật 1 cờ, và kiểm tra cờ đó trong chương trình chính. Nếu cờ báo hiệu cần gọi 1 loạt hàm thì bạn gọi các hàm đó. Không có lý do gì để nhét các lệnh gọi hàm mà bạn đã dùng vào chương trình xử lý ngắt.

Stack của PIC tầm trung là stack phần cứng, chứ không phải là stack phần mềm để bạn có thể dùng lệnh C hay hợp ngữ mà thao tác.

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

Đang gặp vấn đề cần được giúp đỡ? Hãy dành ra vài phút đọc luồng sau:
http://www.picvietnam.com/forum/showthread.php?t=1263
namqn 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


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


Đượ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