Firstly, thanks for an excellant job with FreeRTOS, i have been using the demo apps and its very impressive.
I can compile the demo’s fine, using a 18f452 as the device, i want to get it working on a 18f458 – and eventually a 18f4550, but i am having trouble with this task.
if i select the device as an 18f458, open up the linker script and change the FILES p18f452.lib line to FILES p18f458.lib, and recompile i get a
section ‘SFR_BANKED0’ can not fit the absolut section. Section ‘SFR_BANKED0’ start=0x00000f00 length=0x0000002f
error, i am thinking this is due to the extra features built into this chip affecting the sfr size
can you help me out with this? i have tried many changes in the .lkr file but no success
I have not used a 456 device, but the RAM layout for program usage I think is the same, so this is odd.
Try taking the 456 linker file and converting it for use with FreeRTOS. Basically you have to create one large block. You can use the existing file as a template, and see if you notice anything very different between the two.
Thanks for your response, i have tried many different variations to this for the 458, the latest one is below, which is practically identical to the microchip one apart from the bigblock part
CODEPAGE NAME=vectors START=0x0 END=0x29 PROTECTED
CODEPAGE NAME=page START=0x2A END=0x7FFF
CODEPAGE NAME=idlocs START=0x200000 END=0x200007 PROTECTED
CODEPAGE NAME=config START=0x300000 END=0x30000D PROTECTED
CODEPAGE NAME=devid START=0x3FFFFE END=0x3FFFFF PROTECTED
CODEPAGE NAME=eedata START=0xF00000 END=0xF000FF PROTECTED
ACCESSBANK NAME=accessram START=0x0 END=0x5F
DATABANK NAME=BIG_BLOCK START=0x80 END=0x5FF
DATABANK NAME=bankedsfr START=0xF00 END=0xF5F
ACCESSBANK NAME=accesssfr START=0xF60 END=0xFFF PROTECTED
SECTION NAME=CONFIG ROM=config
STACK SIZE=0x100 RAM=BIG_BLOCK
this one gives the error:
MPLINK 4.00, Linker
Copyright (c) 2005 Microchip Technology Inc.
Error – section ‘.udata_c018i.o’ can not fit the section. Section ‘.udata_c018i.o’ length=0x0000000a
Errors : 1
any help appreciated, many thanks