PIC Vietnam

PIC Vietnam (http://www.picvietnam.com/forum/index.php)
-   MPASM (http://www.picvietnam.com/forum/forumdisplay.php?f=34)
-   -   Giúp em giải quyết lỗi này với (http://www.picvietnam.com/forum/showthread.php?t=1940)

nguoimatri 23-01-2008 11:31 PM

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

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:
Code:

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


Múi giờ GMT. Hiện tại là 06:08 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