Check alle échte Black Friday-deals Ook zo moe van nepaanbiedingen? Wij laten alleen échte deals zien
Toon posts:

MPLAB error 113

Pagina: 1
Acties:

Verwijderd

Topicstarter
UPDATE: oplossing, zie onderaan deze post

Heb er nu al een halve dag op zitten zoeken, incluis google...

De error die ik krijg is devolgende:
code:
1
2
Error[113]   D:\ELECTRONICS\WORKING LCD\LCDX_TEST.ASM 17 : Symbol not previously defined (MAIN)
Error[113]   D:\ELECTRONICS\WORKING LCD\LCDX_TEST.ASM 20 : Symbol not previously defined (MAIN)



Dit is een stukje van mijn code:
code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
;***** COMPILATION MESSAGES & WARNINGS *****

    ERRORLEVEL -207     ; Found label after column 1.
    ERRORLEVEL -302     ; Register in operand not in bank 0.

;***** PROCESSOR DECLARATION & CONFIGURATION *****

    PROCESSOR 16F84
    #include p16f84.inc
    
    ; embed Configuration Data within .asm File.
    __CONFIG   _CP_OFF & _WDT_OFF & _PWRTE_ON & _XT_OSC

;***** MEMORY STRUCTURE *****

    ORG     0x00        ; processor reset vector
    goto    MAIN

    ORG     0x04        ; interrupt vector location
    goto    MAIN        ; no ISR

;***** PORT DECLARATION *****


;***** CONSTANT DECLARATION *****

    CONSTANT BASE = 0x0C    ; Base address of user file registers   

;***** REGISTER DECLARATION *****   

    TEMP1   equ BASE+d'6'   ; Universal Temporary Register

    FLAGreg equ BASE+d'7'
    #define LCDbusy FLAGreg,0x00    ; LCD busy flag declared within flag register
    #define LCDcflag FLAGreg,0x01

;***** INCLUDE FILES *****

    #include "m_bank.inc"
    #include "m_wait.inc"


    ;*** LCD module versions for fixed ports (e.g. PortB) ***
    LCDtris equ TRISB
    LCDport equ PORTB

    #include "m_lcd.inc"

;***** MACROS *****


;***** SUBROUTINES *****


;************** MAIN **************

MAIN
    LCDinit         ; LCD Initialization
    
    LCDchar 'C'
    LCDchar 'h'
    LCDchar 'a'
    LCDchar 'r'
    LCDchar 'a'
    LCDchar 'c'
    LCDchar 't'
    LCDchar 'e'
    LCDchar 'r'
(enzoverder)


Enig idee waarom ie het MAIN label niet vind? Bij alle andere labels geeft ie geen error.
Is er iemand die al een gelijkaardig probleem tegengekomen is?

Kheb al vanalles geprobeerd: andere naam, case sensitivity nagegaan.
Ik heb zelfs het org gedeelte (regel 14 tem 21) tot vlak vóór de MAIN label geplaatst. Toen vond ie 't wel, compileerde zonder probleem, maar de HEX file die hij maakte, bevatte niets, ttz deze 3 regeltjes, veel te weinig voor zoveel code:
code:
1
2
3
:020000040000FA
:02400E00F13F80
:00000001FF


Ik hoop dat 't maar iets stoms is wat ik over het hoofd zie...

Bedankt!

UPDATE: de oplossing:
In mijn MPLAB project had ik de *.inc files ook als header files aangegeven in de workspace. Dit mag dus niet! Die includes zorgen voor een inline expantion van de code in de hoofd asm file. Ze moeten dus enkel gedeclareerd worden in de hoofdfile en dit is ook het enige bestand dat je in de MPLAB workspace moet aangeven.

[ Voor 13% gewijzigd door Verwijderd op 20-08-2004 11:38 ]


  • Krankenstein
  • Registratie: Augustus 2000
  • Laatst online: 06-09 20:06
Probeer eens een dubbele punt achter MAIN (label) te zetten.
Ik zie dat je een andere naam al geprobeerd hebt, maar hoe heette dat andere label dan? Ik kan me voorstellen dat MAIN een speciaal woord is dat je niet voor labels kan gebruiken maar dat weet ik niet zeker.

  • SA007
  • Registratie: Oktober 2002
  • Laatst online: 24-11 21:56

SA007

Moderator Tweaking
moet je niet bovenaan aangeven welke procedures er zijn?

(net als c, delphi, en nog de nodige andere)

Hij zegt ook: not previously defined, ofwel,computer:" dit is de eerste keer dat het tegenkom, en ik weet niet wat het is"

Hij staat ook onder waar jij 'm opvraagt

(Btw, wat doet dit in CME? hoord dit niet in P&W?)

Verwijderd

Topicstarter
Dit is assembly voor de PIC µC, dus ga 'k de meeste hulp vinden in CME denk ik zo.

* dubbele punt ook al geprobeerd, geen hulp.
* Als andere woorden heb ik inderdaad nederlandse labels geprobeerd om er zeker van te zijn dat ze niet reserved zijn op de één of andere manier.

Verwijderd

Topicstarter
oplossing, zie TS