Pumpkin, Inc.

Pumpkin User Forums

COMRAM Problems with PICC-18

For issues specific to Microchip's PICmicro® MCUs, including compilers (e.g. HI-TECH PICC & PICC-18, Microchip MPLAB®-C18) and IDEs (e.g. Microchip MPLAB®).

COMRAM Problems with PICC-18

Postby aek » Fri Sep 27, 2002 6:26 am

If you are running out of room in the access bank (COMRAM) of the PIC18, and you're doing a library build or you've set OSLOC_ALL to be persistent, the problem is most likely PICC-18.

We just discovered (through a customer) that PICC v8.12PL1 was mistakenly placing all persistent variables in access RAM. When the number of Salvo tasks and events exceeded a certain number, the linker could no longer place them in the COMRAM psect, and all sorts of error messages were reported.

The solution is to upgrade to v8.20PL1 -- it works fine in this respect.

Regards,

------------------

-------
aek
aek
 
Posts: 1888
Joined: Sat Aug 26, 2000 11:00 pm

Re: COMRAM Problems with PICC-18

Postby c3p0 » Sun Nov 10, 2002 4:46 am

Hi!

I am using v8.20PL1 of PICC-18 and I am getting this error: "psect intsave_regs cannnot be in classes COMRAM and BIGRAM". I guess that means there is an error in my code, but I havn't figured out just what it could be yet. Any help would be much appreciated .

I am compiling with the slp800aa lib for a pic18f252

c3p0
 
Posts: 1
Joined: Sun Nov 10, 2002 12:00 am
Location: Gothenburg

Re: COMRAM Problems with PICC-18

Postby aek » Mon Nov 11, 2002 12:08 pm

I don't think that's a Salvo error -- I haven't seen that before ... but, one thing to consider is that in the aa libraries, we use interrupt level 0 (only). Perhaps you're using a different interrupt level and that's causing a conflict?

Regards,

------------------

-------
aek
aek
 
Posts: 1888
Joined: Sat Aug 26, 2000 11:00 pm

Re: COMRAM Problems with PICC-18

Postby aek » Tue Nov 04, 2003 1:25 am

Hello.

Salvo's tu6 tutorial program uses messages, and will build without error using the latest compilers and MPLAB -- I'd suggest comparing it to your app.

If you can't get it to work, .zip up the whole project and email it to support -- we'll figure it out.

------------------

-------
aek
aek
 
Posts: 1888
Joined: Sat Aug 26, 2000 11:00 pm

Re: COMRAM Problems with PICC-18

Postby UrK » Tue Nov 04, 2003 1:50 am

I didn't mention versions in my previous post (and already got a reply, u r quick, guys )
I use older Salvo (2.2.0) and latest compiler (8.30) with Mplab 6.30.

I didn't mean Salvo messages, That's what I get when I compile my project:

Executing: "C:Ht-PIC18BINPICC18.EXE" -C -E"main.cce" "main.c" -O"main.obj" -I"C:mpSalvoinclude" -I"c:cprojNewThundersrc" -Q -MPLAB -18F252
Executing: "C:Ht-PIC18BINPICC18.EXE" -C -E"mainapp.cce" "mainapp.c" -O"mainapp.obj" -I"C:mpSalvoinclude" -I"c:cprojNewThundersrc" -Q -MPLAB -18F252
Executing: "C:HT-PIC18BINPICC18.EXE" -E"NewThunder.lde" "C:cprojNewThundersrcmain.obj" "C:cprojNewThundersrcmainapp.obj" "C:mpSalvolibrarysfp800aa.lib" -Q -MPLAB -18F252 -O"NewThunder.cof"
Error[000] C:mpSalvolibrarysfp800aa.lib(delay.obj) 7 : psect intsave_regs cannot be in classes COMRAM and BIGRAM
Error[000] C:mpSalvolibrarysfp800aa.lib(idle.obj) 7 : psect intsave_regs cannot be in classes COMRAM and BIGRAM
Error[000] C:mpSalvolibrarysfp800aa.lib(init.obj) 7 : psect intsave_regs cannot be in classes COMRAM and BIGRAM
Error[000] C:mpSalvolibrarysfp800aa.lib(initecb.obj) 7 : psect intsave_regs cannot be in classes COMRAM and BIGRAM
Error[000] C:mpSalvolibrarysfp800aa.lib(inittask.obj) 9 : psect intsave_regs cannot be in classes COMRAM and BIGRAM
Error[000] C:mpSalvolibrarysfp800aa.lib(inittcb.obj) 7 : psect intsave_regs cannot be in classes COMRAM and BIGRAM
Error[000] C:mpSalvolibrarysfp800aa.lib(mem.obj) 7 : psect intsave_regs cannot be in classes COMRAM and BIGRAM
Error[000] C:mpSalvolibrarysfp800aa.lib(qins.obj) 7 : psect intsave_regs cannot be in classes COMRAM and BIGRAM
Error[000] C:mpSalvolibrarysfp800aa.lib(sched.obj) 9 : psect intsave_regs cannot be in classes COMRAM and BIGRAM
Error[000] C:mpSalvolibrarysfp800aa.lib(timer.obj) 7 : psect intsave_regs cannot be in classes COMRAM and BIGRAM
Error[000] C:mpSalvolibrarysfp800aa.lib(util.obj) 7 : psect intsave_regs cannot be in classes COMRAM and BIGRAM
BUILD FAILED: Tue Nov 04 23:48:57 2003

UrK
 
Posts: 3
Joined: Tue Nov 04, 2003 12:00 am
Location: Israel

Re: COMRAM Problems with PICC-18

Postby aek » Tue Nov 04, 2003 2:13 am

quote:
I use older Salvo (2.2.0) and latest compiler (8.30) with Mplab 6.30.
This is not a valid combination -- the Salvo v2.x libraries for PICC-18 were generated with the Salvo objects classified as near, which means that you rapidly exhaust your COMRAM memory when using them. Plus, PICC-18 is technically incompatible with Salvo v2.2.

Upgrade to Salvo Lite v3.2 and your problems should disappear ... those libraries are generated with the Salvo global objects in unbanked memory, which frees up COMRAM for other things ...

------------------

-------
aek
aek
 
Posts: 1888
Joined: Sat Aug 26, 2000 11:00 pm

Re: COMRAM Problems with PICC-18

Postby UrK » Tue Nov 04, 2003 2:25 am

Thanks for the answer.

One last question then:
(It would be nice to see you online:
MSN: urk1254@hotmail.com
ICQ: 10395594)

Can I use sources of 2.2.0 and recompile them for PIC18?

UrK
 
Posts: 3
Joined: Tue Nov 04, 2003 12:00 am
Location: Israel

Re: COMRAM Problems with PICC-18

Postby aek » Tue Nov 04, 2003 2:37 am

Re:
quote:
Can I use sources of 2.2.0 and recompile them for PIC18?
I don't know if they will compile successfully ... you may want to review the Service Bulletins for things that have been upgraded since v2.2. There is at least one major runtime issue that was present in v2.2 and was resolved in v3.x. Also, v3.x makes it much easier to generate libraries ...

In any event, v2.2 went out of support some time ago -- we only support v3.x now.

Regards,

------------------

-------
aek
aek
 
Posts: 1888
Joined: Sat Aug 26, 2000 11:00 pm

Re: COMRAM Problems with PICC-18

Postby UrK » Tue Nov 04, 2003 12:53 pm

I have the same problem now: messages

psect intsave_regs cannot be in classes COMRAM and BIGRAM

The only interrupt I use is 0 level interrupt.
I am trying to compile small test program on HT-PICC18 for 18F252 processor.
Any help would be appreciated.
10x

UrK
 
Posts: 3
Joined: Tue Nov 04, 2003 12:00 am
Location: Israel


Return to PICmicro MCUs

Who is online

Users browsing this forum: No registered users and 2 guests

cron