Page 1 of 1

Debugging in MPLABIDE

Posted: Fri Aug 08, 2008 8:28 am
by Kumaran
I am getting following error message while I build the C program generated by flowcode in mplab IDe. I try to build it in mplab to check the program in debugging mode in actual target.
mplab ICD2 debugger is used.

MPLAB C18 v3.21 (demo)
Copyright 2000-2008 Microchip Technology Inc.
Days remaining until demo becomes feature limited: 58
H:\Rotary encoder\PortDFlicker.c:46:Warning [2002] unknown pragma 'CLOCK_FREQ'
H:\Rotary encoder\PortDFlicker.c:72:Error [1105] symbol 'adcon1' has not been defined
H:\Rotary encoder\PortDFlicker.c:72:Error [1101] lvalue required
H:\Rotary encoder\PortDFlicker.c:73:Error [1105] symbol 'ucfg' has not been defined
H:\Rotary encoder\PortDFlicker.c:73:Error [1101] lvalue required
H:\Rotary encoder\PortDFlicker.c:82:Error [1105] symbol 'trisc' has not been defined
H:\Rotary encoder\PortDFlicker.c:82:Error [1105] symbol 'trisc' has not been defined
H:\Rotary encoder\PortDFlicker.c:82:Error [1101] lvalue required
H:\Rotary encoder\PortDFlicker.c:84:Error [1105] symbol 'portc' has not been defined
H:\Rotary encoder\PortDFlicker.c:84:Error [1105] symbol 'portc' has not been defined
H:\Rotary encoder\PortDFlicker.c:84:Error [1101] lvalue required
H:\Rotary encoder\PortDFlicker.c:86:Error [1105] symbol 'portc' has not been defined
H:\Rotary encoder\PortDFlicker.c:86:Error [1105] symbol 'portc' has not been defined
H:\Rotary encoder\PortDFlicker.c:86:Error [1101] lvalue required
H:\Rotary encoder\PortDFlicker.c:86:Warning [2055] expression is always false
H:\Rotary encoder\PortDFlicker.c:91:Error [1105] symbol 'trisc' has not been defined
H:\Rotary encoder\PortDFlicker.c:91:Error [1105] symbol 'trisc' has not been defined
H:\Rotary encoder\PortDFlicker.c:91:Error [1101] lvalue required
H:\Rotary encoder\PortDFlicker.c:93:Error [1105] symbol 'portc' has not been defined
H:\Rotary encoder\PortDFlicker.c:93:Error [1105] symbol 'portc' has not been defined
H:\Rotary encoder\PortDFlicker.c:93:Error [1101] lvalue required
H:\Rotary encoder\PortDFlicker.c:95:Error [1105] symbol 'portc' has not been defined
H:\Rotary encoder\PortDFlicker.c:95:Error [1105] symbol 'portc' has not been defined
H:\Rotary encoder\PortDFlicker.c:95:Error [1101] lvalue required
H:\Rotary encoder\PortDFlicker.c:95:Warning [2056] expression is always true
H:\Rotary encoder\PortDFlicker.c:104:Error [1105] symbol 'trisd' has not been defined
H:\Rotary encoder\PortDFlicker.c:104:Error [1105] symbol 'trisd' has not been defined
H:\Rotary encoder\PortDFlicker.c:104:Error [1101] lvalue required
Halting build on first failure as requested.


Thanks for your answers

Re: Debugging in MPLABIDE

Posted: Fri Aug 08, 2008 9:30 am
by Benj
Hello

Im afraid that BoostC is not directly compatible with microchips C18 compiler.

Do a block find and replace to change the following values.

adcon1 -> ADCON1
ucfg -> UCFG
trisc -> TRISC
portc -> PORTC
trisd -> TRISD

Your program should hopefully compile correctly after these mods.

Re: Debugging in MPLABIDE

Posted: Fri Aug 08, 2008 9:48 am
by Kumaran
No effect in this chage

H:\Rotary encoder\PortDFlicker.c:46:Warning [2002] unknown pragma 'CLOCK_FREC'
H:\Rotary encoder\PortDFlicker.c:72:Error [1105] symbol 'ADCON1' has not been defined
H:\Rotary encoder\PortDFlicker.c:72:Error [1101] lvalue required
H:\Rotary encoder\PortDFlicker.c:73:Error [1105] symbol 'UCFG' has not been defined
H:\Rotary encoder\PortDFlicker.c:73:Error [1101] lvalue required
H:\Rotary encoder\PortDFlicker.c:82:Error [1105] symbol 'TRISC' has not been defined
H:\Rotary encoder\PortDFlicker.c:82:Error [1105] symbol 'TRISC' has not been defined
H:\Rotary encoder\PortDFlicker.c:82:Error [1101] lvalue required
H:\Rotary encoder\PortDFlicker.c:84:Error [1105] symbol 'PORTC' has not been defined
H:\Rotary encoder\PortDFlicker.c:84:Error [1105] symbol 'PORTC' has not been defined
H:\Rotary encoder\PortDFlicker.c:84:Error [1101] lvalue required
H:\Rotary encoder\PortDFlicker.c:86:Error [1105] symbol 'PORTC' has not been defined
H:\Rotary encoder\PortDFlicker.c:86:Error [1105] symbol 'PORTC' has not been defined
H:\Rotary encoder\PortDFlicker.c:86:Error [1101] lvalue required
H:\Rotary encoder\PortDFlicker.c:86:Warning [2055] expression is always false
H:\Rotary encoder\PortDFlicker.c:91:Error [1105] symbol 'TRISC' has not been defined
H:\Rotary encoder\PortDFlicker.c:91:Error [1105] symbol 'TRISC' has not been defined
H:\Rotary encoder\PortDFlicker.c:91:Error [1101] lvalue required
H:\Rotary encoder\PortDFlicker.c:93:Error [1105] symbol 'PORTC' has not been defined
H:\Rotary encoder\PortDFlicker.c:93:Error [1105] symbol 'PORTC' has not been defined
H:\Rotary encoder\PortDFlicker.c:93:Error [1101] lvalue required
H:\Rotary encoder\PortDFlicker.c:95:Error [1105] symbol 'PORTC' has not been defined
H:\Rotary encoder\PortDFlicker.c:95:Error [1105] symbol 'PORTC' has not been defined
H:\Rotary encoder\PortDFlicker.c:95:Error [1101] lvalue required
H:\Rotary encoder\PortDFlicker.c:95:Warning [2056] expression is always true
H:\Rotary encoder\PortDFlicker.c:104:Error [1105] symbol 'TRISD' has not been defined
H:\Rotary encoder\PortDFlicker.c:104:Error [1105] symbol 'TRISD' has not been defined
H:\Rotary encoder\PortDFlicker.c:104:Error [1101] lvalue required

Re: Debugging in MPLABIDE

Posted: Fri Aug 08, 2008 10:13 am
by Kumaran
I have solved some of the error by includind p18cxxx.h. finaly I got onr more error to solve.

Error - could not find definition of symbol 'delay_ms' in file 'C:\Program Files\Matrix Multimedia\Flowcode V3\fcd\PortDFlicker.o'.
Errors : 1


Thanks for your advice

Re: Debugging in MPLABIDE

Posted: Fri Aug 08, 2008 10:18 am
by Kumaran
I tried to build using .asm generated using flowcode. in that case also, I amgetting an following error

Error - could not find definition of symbol 'main' in file 'C:\MCC18\lib/c018i.o'.
Errors : 1


Thanks for your answers

Re: Debugging in MPLABIDE

Posted: Fri Aug 15, 2008 9:09 am
by Kumaran