Using CodeWarrior 6.2 on a Coldfire V1 core.
I am very new to CW ...
I am having a problem using CodeWarrior to set up memory segment that I require in the .LCF file.
Using PE (Processor Expert), I did manage to set aside an area of RAM and call it "myram". However, I cannot find the proper way to place my buffer into this area. CodeWarrior always makes the data <userram> and places it in “ .sbss “ section, thus it is initiated at start up / reset. I spent many hours reading but could not find the right procedure to get CodeWarrior to generate this section(below) in the .LCF file. ( I even tried modifying startup.c, but no luck)
This is my work around, which I would like to avoid.
Here is the what I have to do after each startup of CodeWarrior ,
- I first compile the program , CW has an error, ...unresloved reference
- I then edit the “.lcf “ file and paste in “ the 'Myram' section below”. I place it before .custom
- Then I compile again, all address are resolved,
- This memory area is placed after the <useram> area and never gets initialized, ( Obviously it gets over-written if use new memory in the code. This is acceptable, Having an Origin using the PE would have been great but as mentioned above I could not find the proper syntax) I initialize this area in the code. This is for testing code. ( This information will be from another device on Rev 2 of the my PCB)
STEP 1
In one of the 'C' modules ….
- Here is the staemnt that I use place my Default_Parameters..
#pragma define_section data_type ".myram" far_absolute RW
__declspec (data_type) unsigned char DEF_PARAM_buf[55];
#pragma DATA_SEG DEFAULT
Step 2
I then open up the LCF and place the following into it
>>>This is what I would like CodeWarrior to create for m <<<<
.myram :
{
___MYRAM_START = .;
__START_MYRAM = .;
*(.myram)
. = ALIGN (0x4);
*(COMMON)
__END_MYRAM = .;
___MYRAM_END = .;
. = ALIGN(0x4);
} >> userram
I have attached a jpg of the LCF placement position and the resulting MAP output.
Their must be a way to do this using CW. I only have to edit this at the start of each day/ or a CW Restart.
Any help will be appreciated.
Cheers
LCFplacement.jpg
MAPresult.jpg
Message Edited by t.dowe on 2009-11-02 09:22 AM