![]() |
|
Tài trợ cho PIC Vietnam |
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 |
|
Ðiều Chỉnh | Xếp Bài |
![]() |
#11 |
Nhập môn đệ tử
Tham gia ngày: Mar 2008
Bài gửi: 6
: |
PIC16 thì em không biết nhưng với PIC18F4580 thì không cần lưu lại giá trị của PCLATH :
1>Bình thường nếu không có tác động trực tiếp thì thanh ghi PCLATH sẽ không thay đổi giá trị, kể cả khi PC thay đổi từ địa chỉ 0xFF đến 0x100. Lúc đó PCL=00 và PCLATH=00. ( Kết quả có được nhờ giả lập MPLAB SIM) 2>Sau lenh RETIF hoặc RET thì chương trình đọc PC từ Stack (TOSL, TOSH, TOSU). Lúc này PC sẽ được phục hồi như ngay tại thời điểm gặp ngắt, hoặc lệnh CALL. Nhưng PCLATH vẫn không bị thay đổi nếu không có lệnh tác động trực tiếp (chẳng hạn MOVWF PCLATH) 3>Thanh ghi PCLATH chỉ có tác dụng khi ta tác động ghi lên thanh ghi PCL, chẳng hạn: + với PCLATH=1 thì lệnh MOVWF PCL sẽ làm cho PC=0x100 ( với WREG=0) Nói túm lại bình thường PC không tham khảo đến thanh ghi PCLATH, chỉ khi có tác động ghi trực tiếp lên thanh ghi PCL thì PC mới tham khảo đến nó. Theo em thấy thì khi sử dụng bảng mới thực sự cần đến thanh ghi PCLATH Em là Newbie, có sai sót gì thì nhẹ nhàng chỉ bảo em ^^ thay đổi nội dung bởi: thaile, 13-04-2008 lúc 09:51 PM. |
![]() |
![]() |
|
|