[PIC]-Où trouver la taille de la pile mémoire dans la documentation?
Répondre à la discussion
Affichage des résultats 1 à 13 sur 13

[PIC]-Où trouver la taille de la pile mémoire dans la documentation?



  1. #1
    invite3c35244f

    [PIC]-Où trouver la taille de la pile mémoire dans la documentation?


    ------

    Bonjour,

    j'ai un souci de programmation en ce moment, et je souhaiterai vérifier la taille de la pile mémoire, mais quelle paramètre faut il regarder dans la documentation?

    Pour informations, il s'agit du PIC18F4685..
    Merci d'avance

    -----

  2. #2
    invite3c35244f

    Re : [PIC]-Où trouver la taille de la pile mémoire dans la documentation?

    Personne n'aurait une petite idée sur la question...
    J'ai beau scruter la documentation...impossible...
    Merci d'avance

  3. #3
    Seb.26

    Re : [PIC]-Où trouver la taille de la pile mémoire dans la documentation?

    31 je crois ... Mais la datasheet doit savoir ça bien mieux que nous ...
    << L'histoire nous apprend que l'on apprend rien de l'histoire. >>

  4. #4
    invite3c35244f

    Re : [PIC]-Où trouver la taille de la pile mémoire dans la documentation?

    Je te remercie...
    En effet page 31 chapitre "Memory Organisation" , on peut voir Stack Level 1 ... Stack Level 31, mais c'est 31 quoi?
    Ma question est surement un peu bete mais je ne trouve pas de solution a mon probleme alors je cherche toutes les possibilitées..
    Merci encore

  5. A voir en vidéo sur Futura
  6. #5
    Seb.26

    Re : [PIC]-Où trouver la taille de la pile mémoire dans la documentation?

    bah ... 31 "cases" je pense ...
    << L'histoire nous apprend que l'on apprend rien de l'histoire. >>

  7. #6
    RISC

    Re : [PIC]-Où trouver la taille de la pile mémoire dans la documentation?

    Salut,

    Les PIC18 ont une pile HW qui contient donc des adresses. Donc 31 niveaux d'emboitement max ;=)

    Tu peux trouver la (vieille) documentation de toute la famille PIC18 ici :
    http://ww1.microchip.com/downloads/e...Doc/39500a.pdf

    LE chapitre 7 montre la STACK et ses utilisations. 31 niveaux de pile max.
    Par programme tu peux à tout moment savoir ou en est la pile (STKPTR) et ce qui est dur la pile en lisant les registres TOSU/TOSH/TOSL (Top Of Stack Upper/High/Low).

    NB : si tu utilises le mode d'instructions PIC18 ETENDU, des instructions sont ajoutées qui optimisent l'opération du compilateur car il devient possible de créer une pile avec un frame pointer pour le passage des paramètres.

    a+

  8. #7
    invite3c35244f

    Re : [PIC]-Où trouver la taille de la pile mémoire dans la documentation?

    Et savez vous comment je pourrais augmenter la taille de la pile mémoire?
    Je vous remercie d'avance

  9. #8
    RISC

    Re : [PIC]-Où trouver la taille de la pile mémoire dans la documentation?

    Salut,

    Comme je l'ai dit précédemment c'est une pile HARDWARE donc on ne peut pas augmenter sa taille.

    Pour quelle raison veux-tu augmenter sa taille :
    * beaucoup de fonctions imbriquées ?
    * problème de passage de paramètres ?

    a+

  10. #9
    invite3c35244f

    Re : [PIC]-Où trouver la taille de la pile mémoire dans la documentation?

    Bonjour,

    Pour quelle raison veux-tu augmenter sa taille :
    j'utilise une librairie de gestion pour un afficheur graphique LCD 128x64, et l'envoi des données sur l'afficheur est faussé.
    Et d'après le concepteur de la librairie, il s'agirait de la taille de la pile mémoire..
    Par contre je me pose une question, voila avant j'utilisais un 18F4620, mais pour des raisons de mémoire programme insuffisante, j'ai opté pour le 18F4685..et depuis ça marche moins bien...
    mais en regardant ses caractéristiques de mémoire, on peut voir :
    Data Memory (Bytes) 3328
    alors que sur le 18F4620:
    Data Memory (Bytes) 3968
    Le problème pourrait il venir aussi de la??

    Sinon, comment pourrais résoudre ce problème.
    Merci d'avance

  11. #10
    invite3c35244f

    Re : [PIC]-Où trouver la taille de la pile mémoire dans la documentation?

    Et je'ai une autre question concernant les PIC, la taille de la pile est donc limité à 31, mais est elle modifiable??
    Car pour mon problème , lorsque je travaillais avec un PIC18F4620, mon programme (programme simple et cour) tournait correctement (affichage correct sur mon 128x64) et depuis le passage sur le 18F4685, j'ai un problème d'affichage alors qu'il s'agit du meme programme...
    Merci encore

  12. #11
    invite0e5af214

    Re : [PIC]-Où trouver la taille de la pile mémoire dans la documentation?

    Et je'ai une autre question concernant les PIC, la taille de la pile est donc limité à 31, mais est elle modifiable??
    Mais on t'a dit que NON !! Ce n'est pas une limitation logicielle, mais hardware, dans la fabrication du composant.
    Mais ceci est la pile d'appel des sous programmes, là ou sont stockées les adresses de retour quand tu appels des fonctions.

    La pile de passage des paramètres (qui semble etre la cause de ton probleme) est gérée avec les pointeurs FSR0 et FSR1 du PIC.

  13. #12
    invite3c35244f

    Re : [PIC]-Où trouver la taille de la pile mémoire dans la documentation?

    Je te remercie...
    Y a t'il moyen de régler se problème au point de vue soft?
    Faut il agir sur les variables?
    Avez vous une petite astuce?
    et sinon pour mon autre question:

    Par contre je me pose une question, voila avant j'utilisais un 18F4620, mais pour des raisons de mémoire programme insuffisante, j'ai opté pour le 18F4685..et depuis ça marche moins bien...
    mais en regardant ses caractéristiques de mémoire, on peut voir :
    Data Memory (Bytes) 3328
    alors que sur le 18F4620:
    Data Memory (Bytes) 3968
    Le problème pourrait il venir aussi de la??
    Cela peut il venir de la? est ce lié?
    MErci encore

  14. #13
    invite6a878e16

    Re : [PIC]-Où trouver la taille de la pile mémoire dans la documentation?

    Salut

    Le 18F4685 possède plus de mémoire programme (le programme peut être plus long), mais a moins de RAM (moins de place pour stocker variables)

    Si il n'y a pas assez de RAM, ça peut créer des problèmes pour la pile qui n'aura plus assez de place pour sauvegarder le contexte.

    C18 donne l'occupation mémoire. Fais View > Memory Usage Gauge

    ps: la data memory, ça peut être de la RAM ou de l'EEPROM. C'est pour ça que je précise toujours

Discussions similaires

  1. pic SPI et mémoire MMC
    Par inviteef26fb36 dans le forum Électronique
    Réponses: 47
    Dernier message: 31/05/2011, 11h02
  2. PIC-mémoire flash (FAT16)
    Par invite86ffa844 dans le forum Électronique
    Réponses: 39
    Dernier message: 13/10/2008, 14h46
  3. memoire flash du PIC 18f4520
    Par invite59b67556 dans le forum Électronique
    Réponses: 2
    Dernier message: 24/06/2008, 11h13
  4. pic 16F877 et la mémoire
    Par invite0d9691eb dans le forum Électronique
    Réponses: 1
    Dernier message: 08/05/2008, 12h15
  5. Alimenter un PIC par une pile?
    Par invitebc2340ab dans le forum Électronique
    Réponses: 6
    Dernier message: 13/11/2007, 16h34
Dans la rubrique Tech de Futura, découvrez nos comparatifs produits sur l'informatique et les technologies : imprimantes laser couleur, casques audio, chaises gamer...