[Programmation] Linker fiet position de la stack cortex m3
Répondre à la discussion
Affichage des résultats 1 à 2 sur 2

Linker fiet position de la stack cortex m3



  1. #1
    r4ph

    Linker fiet position de la stack cortex m3


    ------

    Bonjour à tous,

    Je m'intéresse depuis un moment à la programmation sur arm cortex. Pour ce faire j'utilise un stm32f103, un st-link v2 comme debugger et embitz comme ide avec les outils gcc. C'est un environnent nouveau pour moi, jusque là j'utilisais Mplab sans chercher bien loin...

    J'aimerais déplacer la stack en début de ram de manière à déclencher une exception hard fault en cas d'overflow.

    La solution que j'ai trouvée en recherchant sur le net est de placer la section .stack avant la section .data et .bss.
    En regardant les delimiteurs d'adresses de début et de fin de ces section, elles sont bien placée comme je le voudrais, le remplissage de la stack se fait bien en début de ram, mais pour une raison que j'ignore, l'adresse de variables placées dans la fonction main se retrouvent quand même en début de ram, dans la section à priori allouée à la stack. Ce n'est pas le cas des variables globales. En regardant dans le fichier .map, je retrouve facilement les variables globales, mais pas de traces des variables locales au main.

    J'avoue avoir bien de la difficulté à comprendre tout le contenu du fichier linker.ld. Aussi si l'un de vous à déjà creusé là dedans et qu'il a des conseils ou à rencontré des tutoriels s'y référant, je suis preneur...

    -----

  2. #2
    r4ph

    Re : Linker fiet position de la stack cortex m3

    Haha, finalement j'ai compris, il est tout à fait logique que ces variables se retrouvent dans la stack, puisque c'est la manière dont ces processeurs fonctionnent... Ce coup ci je le saurais!

    Il est sûr que dans ce cas je teste le fonctionnement de l'overflow en bouclant des instructions push jusqu'à saturation, ce qui n'a rien à voir avec une utilisation normale.

    Cela dit je reste ouvert à des conseils ou tutoriels sur les linker scripts gnu. Encore merci!

Discussions similaires

  1. Stack TCP/IP sur STM32F1
    Par invite5b2689ab dans le forum Électronique
    Réponses: 0
    Dernier message: 30/07/2012, 09h40
  2. Stack TCP/IP Microchip
    Par bln35 dans le forum Électronique
    Réponses: 0
    Dernier message: 16/01/2012, 15h10
  3. stack TCP/IP
    Par invite199796a4 dans le forum Électronique
    Réponses: 3
    Dernier message: 25/04/2011, 22h40
  4. stack USB pour ISP1161
    Par lebaron71 dans le forum Électronique
    Réponses: 2
    Dernier message: 26/01/2010, 17h33
  5. Stack Zigbee : compatibilité?
    Par invitebb8f7933 dans le forum Électronique
    Réponses: 0
    Dernier message: 17/04/2008, 08h26
Découvrez nos comparatifs produits sur l'informatique et les technologies.