Stack_Size_Of_PIC16F877A

J

jjeevan007

Guest
Hi to all, i am mới với PIC ai có thể cho tôi biết kích thước ngăn xếp của PIC 16F877A là những gì. Xin vui lòng cho tôi biết làm thế nào để tìm ra kích thước stack trong vi điều khiển bất kỳ. Kính trọng. Jeevan
 
Gia đình PIC16F87XA có một 8-cấp sâu x 13-bit ngăn xếp phần cứng rộng. Ngăn xếp không gian không phải là một phần của một trong hai chương trình hoặc dữ liệu không gian và con trỏ ngăn xếp là không thể đọc được hoặc có thể ghi. PC (đếm chương trình) được đẩy vào stack khi một lệnh CALL được thực thi, hoặc một ngắt gây ra một chi nhánh. Ngăn xếp được POP'ed trong trường hợp của một RETURN, RETLW hoặc hướng dẫn thực hiện retfie. PCLATH không bị ảnh hưởng bởi một PUSH hoặc hoạt động POP. Ngăn xếp hoạt động như một bộ đệm tròn. Điều này có nghĩa là sau khi ngăn xếp đã được đẩy tám lần, đẩy thứ chín ghi đè các giá trị đã được lưu trữ từ việc đẩy mạnh đầu tiên. Sự thúc đẩy thứ mười ghi đè đẩy thứ hai (và do đó trên). Lưu ý: 1: không có bit trạng thái để chỉ ra tràn stack hoặc điều kiện underflow ngăn xếp. 2: Có không có hướng dẫn / mnemonics gọi là PUSH hoặc POP. Đây là những hành động xảy ra từ việc thực hiện của các hướng dẫn CALL, RETURN, RETLW và retfie hoặc vectoring một địa chỉ ngắt. Để tìm hiểu làm thế nào ngăn xếp được thực hiện trong vi điều khiển bất kỳ, bạn sẽ có để đọc các thông số kỹ thuật cho các UC trong câu hỏi.
 
Tôi cũng có thể đề cập đến, một số thiết bị thực hiện kích thước ngăn xếp trong phần mềm hơn là phần cứng. Do đó đối với các loại thiết bị, bạn sẽ cần phải tham khảo bộ công cụ trình biên dịch hoặc mã khởi động. ARM biến thể là một ví dụ tốt về một thiết bị thiết lập kích thước ngăn xếp trong các mã khởi động. BigDog
 

Welcome to EDABoard.com

Sponsor

Back
Top