STM32F429II : corrélation nom des pins et positions sur la carte ?
Répondre à la discussion
Affichage des résultats 1 à 5 sur 5

STM32F429II : corrélation nom des pins et positions sur la carte ?



  1. #1
    fab1985

    Question STM32F429II : corrélation nom des pins et positions sur la carte ?


    ------

    Bonjour,
    J'ai un problème ou je me sens un peu bête: je ne comprends pas comment lire le Datasheet de la carte: les noms des pins sur le document intitulé: DS-DM00071990 (à partir de la page 51) et leur emplacement physique sur la carte (pas de nom inscrit sur les pins de la carte)....
    Du coup, je sais même pas si je teste les bonnes entrées / sorties....
    Exemple:
    Sur les connecteurs UXT, pins 5-6 (celles du milieu), le schéma de la carte (document STM32F429II-board-schematic) prétend qu'ils s'appellent I2C1_SDA et I2C1_SCL. Sur le document DS-DM00071990, ils s'appelleraient PB5 respectivement PB6.
    Mais nul part dans les librairies, je trouve la déclaration de ces pins, quel que soit leur petit nom.

    D'où la question: ai-je bien compris comment faire correspondre les noms des pins et leur emplacement? Si oui, dans quel librairie pourrais-je trouver leur définition? Sinon, comment reconnaître le nom d'un pin sur la carte? (Oui, question débile....) Encore une question débile: Dans les exemples, j'ai vu des instructions du style
    RCC_AHB1PeriphClockCmd(RCC_AHB 1Periph_GPIOA, ENABLE);
    GPIO_InitStructure.GPIO_Pin = GPIO_Pin_0; //OU SE TROUVE CE PIN SUR LA CARTE !!!!
    GPIO_InitStructure.GPIO_Mode = GPIO_Mode_IN;
    GPIO_InitStructure.GPIO_OType = GPIO_OType_PP;
    GPIO_InitStructure.GPIO_Speed = GPIO_Speed_100MHz;
    GPIO_InitStructure.GPIO_PuPd = GPIO_PuPd_NOPULL;

    Mieux: où sont les pins GPIO_Pin_0 à GPIO_Pin_15 alors que sur la carte, les pins disponible sont par 10 (connecteur UXT) par 20 (connecteur TRACE) ou encore par 20 (connecteur JTAG)?!!!!!

    Le but est de brancher un endcourse du genre: circuit ouvert -> capteur libre / circuit fermé: capteur pressé.
    Méthode prévue: envoyer un signal en continu sur la pin de sortie. Si à l'entrée, on détecte le même signal alors capteur enclenché (méthode correcte?)

    Encore merci aux nombreux savants de ce site

    Pièce jointe supprimée

    -----
    Dernière modification par JPL ; 16/10/2014 à 13h03.

  2. #2
    JPL
    Responsable des forums

    Re : STM32F429II : corélation nom des pins et positions sur la carte

    Les images doivent être postées dans un format graphique (gif, png, jpg). Merci.
    Rien ne sert de penser, il faut réfléchir avant - Pierre Dac

  3. #3
    fab1985

    Re : STM32F429II : corélation nom des pins et positions sur la carte

    Le document STM32F429II-board-schematic n'est malheureusement pas lisible en format d'image et le document DS-DM00071990 ne peut pas se mettre en pièce jointe
    Pour les trouver:
    http://www.iar.com/kit_updates/
    Puis:
    "User guides and
    schematics" sous le fabricant ST (carte STM32F429II-SK)



    Merci d'avance, vive les génies!

  4. #4
    spown

    Re : STM32F429II : corrélation nom des pins et positions sur la carte ?

    Dans le datasheet tout est clair, juste il faut prendre son pour trouver la réponse.

    Je m'explique, tout d'abord tu dois savoir le 'package' de ta puce ! La réponse pour ton cas est : LQFP176 ( 176 pins au total ), la pin 5 (I2C1_SCL) de ton UXT est reliée à la pin 167 puis la pin 6 ( I2C1_SDA ) de ton UXT est reliée à la pin 165, si tu regardes maintenant le 2eme tableau qui commence à la page 51, la 4 eme colonne à la page 66 tu trouveras le type et la structure de tes 2 pins qui sont : I/O : Input/output pin; puis FT : 5 V tolerant I/O.

    PB5 ca veut dire le port B pin 5 ( on commence par la pin 0, et on fini à la pin 15 ), C'est 5 lignes :
    Code:
    GPIO_InitStructure.GPIO_Pin = GPIO_Pin_0; //OU SE TROUVE CE PIN SUR LA CARTE !!!!
    GPIO_InitStructure.GPIO_Mode = GPIO_Mode_IN;
    GPIO_InitStructure.GPIO_OType = GPIO_OType_PP;
    GPIO_InitStructure.GPIO_Speed = GPIO_Speed_100MHz;
    GPIO_InitStructure.GPIO_PuPd = GPIO_PuPd_NOPULL;
    C'est une structure qui contient les 5 paramètres pour pour chaque port, tout est déjà traduit par des noms que tu devrais trouver ici stm32f4xx_gpio.h puis stm32f4xx.h ( ainsi d'autre fichiers qu'il faut inclure , et les copier dans le repertoire du projet comme startup_stm32f429xx.s ( fichier système ) , system_stm32f4xx.h et stm32f4xx_it.c), sinon ça sera quasi impossible de se rappeler d'un code fait avec l'adressage des registres.

    Les GPIO_Pin_0 à GPIO_Pin_15 sont juste des définitions :

    Code:
    #define GPIO_Pin_0                 ((uint16_t)0x0001)  /* Pin 0 selected */
    #define GPIO_Pin_1                 ((uint16_t)0x0002)  /* Pin 1 selected */
    #define GPIO_Pin_2                 ((uint16_t)0x0004)  /* Pin 2 selected */
    #define GPIO_Pin_3                 ((uint16_t)0x0008)  /* Pin 3 selected */
    #define GPIO_Pin_4                 ((uint16_t)0x0010)  /* Pin 4 selected */
    #define GPIO_Pin_5                 ((uint16_t)0x0020)  /* Pin 5 selected */
    #define GPIO_Pin_6                 ((uint16_t)0x0040)  /* Pin 6 selected */
    #define GPIO_Pin_7                 ((uint16_t)0x0080)  /* Pin 7 selected */
    #define GPIO_Pin_8                 ((uint16_t)0x0100)  /* Pin 8 selected */
    #define GPIO_Pin_9                 ((uint16_t)0x0200)  /* Pin 9 selected */
    #define GPIO_Pin_10                ((uint16_t)0x0400)  /* Pin 10 selected */
    #define GPIO_Pin_11                ((uint16_t)0x0800)  /* Pin 11 selected */
    #define GPIO_Pin_12                ((uint16_t)0x1000)  /* Pin 12 selected */
    #define GPIO_Pin_13                ((uint16_t)0x2000)  /* Pin 13 selected */
    #define GPIO_Pin_14                ((uint16_t)0x4000)  /* Pin 14 selected */
    #define GPIO_Pin_15                ((uint16_t)0x8000)  /* Pin 15 selected */

    On va prendre ton cas, pour déclarer la pin 5 du port B ( PB5), il faut ajouter cette ligne
    Code:
     GPIO_Init(GPIOB, &GPIO_InitStructure);
    après GPIO_InitStructure.GPIO_PuPd =...

    Je te conseille de prendre le temps ( bcp de temps ) pour voir les exemples, puis lire le datasheet pour comprendre ce qui se passe. Il faut surtout pas brûler les étapes, ainsi il faut commencer du bas d’échelle.

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

    Re : STM32F429II : corrélation nom des pins et positions sur la carte ?

    Eheh, merci encore spown! C'est vrai que je me vois mal commencé en haut de l'échelle ! En l'occurence, la definition de ces pins est le premier échelon.

    Excellente continuation

Discussions similaires

  1. Copie signal d'entrée DC sur pin de sortie avec STM32F429II
    Par fab1985 dans le forum Électronique
    Réponses: 18
    Dernier message: 05/11/2014, 09h38
  2. Pins de ma carte micro SD scratchés /coupés
    Par philgib dans le forum Électronique
    Réponses: 0
    Dernier message: 11/06/2014, 06h57
  3. Positions d'un barycentre
    Par inviteb160c5cf dans le forum Mathématiques du collège et du lycée
    Réponses: 2
    Dernier message: 07/05/2009, 19h31
  4. pins sip
    Par sdow dans le forum Électronique
    Réponses: 2
    Dernier message: 22/10/2008, 21h54
  5. Rajout 4 pins sur alim 20 pins
    Par invite6b85e2f1 dans le forum Électronique
    Réponses: 5
    Dernier message: 12/02/2008, 18h24
Dans la rubrique Tech de Futura, découvrez nos comparatifs produits sur l'informatique et les technologies : imprimantes laser couleur, casques audio, chaises gamer...