PDA

View Full Version : Giúp em giải quyết lỗi này với


nguoimatri
23-01-2008, 11:31 PM
processor 16f877a
include <p16f877a.inc>
__CONFIG _CP_OFF & _WDT_OFF & _BODEN_OFF & _PWRTE_ON & _XT_OSC & _WRT_OFF & _LVP_ON & _CPD_OFF
;----------------------------------------
ORG 0x000
GOTO start
start
BCF STATUS,RP1
BSF STATUS,RP0 ;chon Bank 1
CLRF TRISB
BCF STATUS,RP0; Chon Bank 0
MOVLW b'10001111'
MOVWF PORTB
loop
GOTO loop
END

Em build all thì nó báo lỗi liên kết.Loay hoay suốt từ hôm qua đến giờ. Bó tay thật rồi.

Clean: Deleting intermediary and output files.
Clean: Deleted file "C:\Documents and Settings\successisajourney\Desktop\PIC\vidu1.o".
Clean: Deleted file "C:\Documents and Settings\successisajourney\Desktop\PIC\vidu1.lst".
Clean: Deleted file "C:\Documents and Settings\successisajourney\Desktop\PIC\vidu1.mcs".
Clean: Done.
Executing: "C:\Program Files\Microchip\MPASM Suite\MPAsmWin.exe" /q /p16F877A "vidu1.asm" /l"vidu1.lst" /e"vidu1.err" /o"vidu1.o"
Message[302] C:\DOCUMENTS AND SETTINGS\SUCCESSISAJOURNEY\DESKTOP\PIC\VIDU1.ASM 10 : Register in operand not in bank 0. Ensure that bank bits are correct.
Executing: "C:\Program Files\Microchip\MPASM Suite\MPLink.exe" "C:\Program Files\Microchip\MPASM Suite\LKR\16f877a.lkr" "C:\Documents and Settings\successisajourney\Desktop\PIC\vidu1.o" /o"vidu1.cof" /M"vidu1.map" /W
MPLINK 4.14, Linker
Copyright (c) 2007 Microchip Technology Inc.
Error - section '.org_0' can not fit the absolute section. Section '.org_0' start=0x00000000, length=0x00000010
Errors : 1

Link step failed.
BUILD FAILED: Wed Jan 23 11:24:36 2008

namqn
23-01-2008, 11:42 PM
Bạn sửa lại như sau:
processor 16f877a
include <p16f877a.inc>
__CONFIG _CP_OFF & _WDT_OFF & _BODEN_OFF & _PWRTE_ON & _XT_OSC & _WRT_OFF & _LVP_ON & _CPD_OFF
;----------------------------------------
ORG 0x000
GOTO start
ORG 0x005 ;Thêm dòng này vào
start
BCF STATUS,RP1
BSF STATUS,RP0 ;chon Bank 1
CLRF TRISB
BCF STATUS,RP0; Chon Bank 0
MOVLW b'10001111'
MOVWF PORTB
loop
GOTO loop
END
Thân,

nguoimatri
24-01-2008, 12:01 AM
cám ơn anh.ORG 0x005 có tác dụng gì thế ạ

david
24-01-2008, 12:31 AM
0x004 là địa chỉ vector ngắt, đặt Start ở địa chỉ 0x005 đảm bảo cho chương trình chính không viết lên địa chỉ ngắt