Theo tui, các bạn đừng dùng khởi tạo stack mặc nhiên là mov sp, #07 vì như vậy là bạn chỉ còn đúng 8 thanh ghi bank0 dùng cho chương trình của bạn, phần còn lại là stack!
on_reset:
mov sp, #50H ; khởi tạo stack pointer
Bạn nên dùng đoạn code trên để khởi tạo stack, đương nhiên có thể gia giảm số 50H nhưng đại khái nó phải cao cao 1 tí.
Và bài toán của thanhnguyen0 thì chỉ cần 1 lệnh jmp 0000 hoặc jmp on_reset là xong.
Không cần tính toán thêm gì nữa cả. Vì vào chương trình chính bạn đã tạo lại SP rồi.
Không biết các bạn thấy chưa ổn chỗ nào?
on_reset:
mov sp, #50H ; khởi tạo stack pointer
Bạn nên dùng đoạn code trên để khởi tạo stack, đương nhiên có thể gia giảm số 50H nhưng đại khái nó phải cao cao 1 tí.
Và bài toán của thanhnguyen0 thì chỉ cần 1 lệnh jmp 0000 hoặc jmp on_reset là xong.
Không cần tính toán thêm gì nữa cả. Vì vào chương trình chính bạn đã tạo lại SP rồi.
Không biết các bạn thấy chưa ổn chỗ nào?
Comment