Sign in

username:

password:



Not a member?

Search piclist



Search tips

Subscribe to piclist



piclist by Keywords

12F675 | 16F628 | 16F84 | 16f877 | 16F877A | 16F88 | 18F458 | ADC | AVR | Bootloader | CAN | CCS | CRC | EAGLE | EEPROM | ICD | ICSP | IDE | JDM | LED | Macros | Microchip | MPLAB | PCB-CAD | PIC10F | Pic12f675 | PIC16F84 | PIC16F84A | PIC16F877 | PIC18 | PIC18F452 | PicBasic | PICC | PICSTART | PWM | RS-485 | RS232 | SMT | SPI | UART | USART | USB | Wireless | Wisp628 | Xilinx

Discussion Groups

Discussion Groups | Piclist | Problem with PICC18

A discussion group for the PICMicro microcontroller. Also called the Microchip PIC, this list is dedicated to the use and abuse of this fine, simple, microcontroller. Close to topic posts are welcome, ie. general electronics.

Problem with PICC18 - Gustavo Vilela Vargas - Jul 21 11:05:00 2003


Hi all,

I'm using PICC18 to create code for a PIC18F452, now my code grow up
to 4058h in size, and the linker do not fit the correct psetc CODE.

At the Hi-tech site I found this:
"The command-line driver inserts a page
break at address 04000h in the CODE
linker class specification passed to the
linker. This ensures that C functions
(psects) do not cross this address allowing
GOTO instructions within a function to be
used without modification."

This means that my program are limited by 16k even with the 32k of the
PIC18F452?

How can I fix that?
At the site I see too that I can prevent this "break" by using de
option -NOERRATA with the command line compiler, but it is only
applicable for code below 4000h in size.

Someone know what can I do?

Thanks!

Regards,
Gustavo Vargas





(You need to be a member of piclist -- send a blank email to piclist-subscribe@yahoogroups.com )

Re: Problem with PICC18 - jyaron18452 - Jul 21 22:01:00 2003

--- In , Gustavo Vilela Vargas <gvargas@c...>
wrote:
> Hi all,
>
> I'm using PICC18 to create code for a PIC18F452, now my code grow up
> to 4058h in size, and the linker do not fit the correct psetc CODE.
>
> At the Hi-tech site I found this:
> "The command-line driver inserts a page
> break at address 04000h in the CODE
> linker class specification passed to the
> linker. This ensures that C functions
> (psects) do not cross this address allowing
> GOTO instructions within a function to be
> used without modification."
>
> This means that my program are limited by 16k even with the 32k of
the
> PIC18F452?
>
> How can I fix that?
> At the site I see too that I can prevent this "break" by using de
> option -NOERRATA with the command line compiler, but it is only
> applicable for code below 4000h in size.
>
> Someone know what can I do?
>
> Thanks!
>
> Regards,
> Gustavo Vargas
> gvargas@c...

-NOERRATA is used to disable the silicon issue of spanning across
the 0x4000 boundary by inserting nop's around the jump inst's

split your code up into multiple linkable source files





(You need to be a member of piclist -- send a blank email to piclist-subscribe@yahoogroups.com )