Xin lỗi bạn vì tôi trả lời chậm (tôi đang bận viết luận án nên không có thời gian ngồi đào code của bạn).
Có vẻ như bạn port code xử lý ngắt cho PIC16 sang, vì người ta thường không viết như vậy cho PIC18. Bạn xem thêm mục 8.9 trong datasheet của PIC18F458 về việc lưu ngữ cảnh khi xử lý ngắt trong PIC18. Tôi chưa từng dùng CAN nên không giúp cho bạn được về phần này, tuy nhiên, nếu bạn đã biết phải đặt những giá trị nào vào thanh ghi nào thì dùng C hay hợp ngữ cũng chẳng có gì khác nhau.
Tôi thường dùng ACCESS bank khi thao tác các thanh ghi đặc biệt (SFR) nên không quan tâm đến BSR.
Thân,
|