Lỗi do lập trình hay do trình biên dịch ?
Tại sao khi viết chương trình ngắt trong MPLAB (7.31) mặc dù đã theo đúng khung chương trình ngắt do bác falleaf giới thiệu nhưng chưong trình vẫn bị Faile(Lỗi).
Cụ thể là viết chương trình như sau : Code:
PROCESSOR PIC16F877 Phiền các bạn giải thích hộ ? Thanks ! |
Lỗi báo như thế nào? Bạn phải post dòng thông báo lỗi lên thì mới trả lời cụ thể được
|
Chỉ thấy bạn có 1 cái sai là lặp 2 lần "org 0x00", bỏ cái bên dưới là ok.
Bạn cũng không cần đặt thêm cái org 0x50 làm chi, bây giờ thì chưa sai, nhưng rất dễ sai. Không hiểu = cách nào mà bạn dịch được cho dù đổi thành org 0x05. Bạn nên coi lại tut xem chỉ thị org nghĩa là gì. |
Nếu bạn viết đúng như đoạn chương trình trên đây thì mình tìm thêm được vài lỗi nữa của bạn. Bạn viết là :
ISR_NGAT MOVWF W_save MOVWF STATUS_SAVE MOVF PCLATH,W CLRF PCLATH MOVF FSR,W MOVWF FSR_SAVE ..... Phải sửa lại là : ISR_NGAT: MOVWF W_save ; Save WREG MOVF STATUS,W ; Save STATUS CLRF STATUS MOVWF STATUS_SAVE MOVF PCLATH, W MOVWF PCLATH_SAVE MOVF FSR, W MOVWF FSR_SAVE ........ Thoat: CLRF STATUS MOVF FSR_SAVE, W MOVWF FSR MOVF PCLATH_SAVE, W MOVWF PCLATH MOVF STATUS_SAVE, W MOVWF STATUS SWAPF W_save, F SWAPF W_save, W RETFIE |
Múi giờ GMT. Hiện tại là 11:33 AM. |
Tên diễn đàn: vBulletin Version 3.8.11
Được sáng lập bởi Đoàn Hiệp.
Copyright © PIC Vietnam