memoria pic insufficiente

Nov 02, 2004 9 Replies

salve a tutti, ho un problema che spero mi aiuterete a risolvere. devo implementare su un pic 16f876 una routine per il controllo adattativo di un processo...in buona sostanza è un algoritmo ricorsivo. all'interno di detta routine devo necessariamente gestire delle variabili float. all'atto della compliazione il compilatore mi dà un errore del tipo



CANNOT FIND 0xYY (yy varia a seconda del numero di float) in rbss_0 in BANK0 o qualcosa di simile



ho provato con le direttive pragma di ht-pic ma non sono riuscita a risolvere



mi aiutate? grazie gabry


Per curiosita', stai sviluppando un self-tune per un regolatore di temperatura ? :)

Ciao.Alberto.

-- =============================================================== Alberto Rubinelli - A2 SISTEMI Opera 7.53->news.individual.net Via Costantino Perazzi 22 - 28100 NOVARA - ITALY Tel 0321 640149 Fax 0321 391769 BBS 0321 392320 Mail: snipped-for-privacy@retrocomputing.net ICQ : 49872318 Visita il mio museo di computers:

formatting link

--------------------------------------------------------------- Per favore, non scrivetemi in html, testo ascii a 7 bit Non rispondo a chi mi scrive con indirizzo di reply alterato ===============================================================

proprio così gabry

"Alberto Rubinelli" ha scritto nel messaggio news:opsgutlef1053poy@pca104alberto...

Forse più che memoria insufficiente si tratta di stack full... cioè il pic ha un numero massimo di chiamate ricorsive che può fare dato che ha uno stack statico e qundi limitato... forse un pic della serie 18x può aiutarti dato che ha un numero di livelli di stack più elevato Daltronde i pic non sono fatti per compiti di questo tipo...

Ciao!

Perché non cercare di rendere l'algoritmo iterativo? Tutti gli algoritmi ricorsivi possono essere resi iterativi per un teorema dell'informatica.

Ci avrei giurato :) Io ne ho fatto uno ormai 10 anni fa o piu', con il 6301 della Hitachi. Pensavo che ormai il mercato dei termoregolatori fosse in mano solo ai cinesi :)

Ciao.Alberto.

-- =============================================================== Alberto Rubinelli - A2 SISTEMI Opera 7.53->news.individual.net Via Costantino Perazzi 22 - 28100 NOVARA - ITALY Tel 0321 640149 Fax 0321 391769 BBS 0321 392320 Mail: snipped-for-privacy@retrocomputing.net ICQ : 49872318 Visita il mio museo di computers:

formatting link

--------------------------------------------------------------- Per favore, non scrivetemi in html, testo ascii a 7 bit Non rispondo a chi mi scrive con indirizzo di reply alterato ===============================================================

"gabry" ha scritto nel messaggio news:NsRhd.210$ snipped-for-privacy@tornado.fastwebnet.it...

ciao scusa se le mie risposte saranno banali, ma non so a quale punto di conoscienza del compilatore sei... il compilatore non ha sufficiente memoria nel bank0 per le variabili, mi sembra pero' che l'876 abbia disponibili anche altri tre banchi di ram, sposta in bankx alcune variabili e vedi che cosa succede. Non so se le direttive pragma che hai usato sono per l'uso dei banchi di memoria, comunque io uso:

bank1 unsigned char ucpippo[xx];

Inoltre, ma questa e' una cosa che sicuramente avrai usato, il livello di ottimizzazione deve essere settato : Project Build Option Project PicC Compiler spuntare Enable Assembler Optimization (di default su Mplab 6.xx) Global Optimization level 9

io c'ho provato, se non ci sono riuscito o ho detto delle banalita', accetterai il buon cuore ciao Angelo

Ne ho appena sviluppato uno anche io :))

Cavolo, allora non e' un mercato morto, come dicevano tutti :))

Ciao.Alberto.

-- =============================================================== Alberto Rubinelli - A2 SISTEMI Opera 7.53->news.individual.net Via Costantino Perazzi 22 - 28100 NOVARA - ITALY Tel 0321 640149 Fax 0321 391769 BBS 0321 392320 Mail: snipped-for-privacy@retrocomputing.net ICQ : 49872318 Visita il mio museo di computers:

formatting link

--------------------------------------------------------------- Per favore, non scrivetemi in html, testo ascii a 7 bit Non rispondo a chi mi scrive con indirizzo di reply alterato ===============================================================

"Alberto Rubinelli" ha scritto nel messaggio news:opsgutlef1053poy@pca104alberto...

Scusa l'ignoranza... che è?

Join the Discussion

Have something to add? Share your thoughts — no account required.

Didn't find your answer?

Ask the community — no account required