Partie matérielle

Spécifications

Les IO

Vous avez à concevoir un système embarqué, basé sur un STM32H743VIT6, et disposant des périphériques suivants :

  • 1 port SWD bien entendu, qu'on reliera à l'aide d'un connecteur FTSH-105-01-L-DV. Pour le brochage, on s'aidera de la documentation officielle d'ARM sur les connecteurs à 9 broches, ou de l'adaptateur pour sondes SEGGER "J-Link 9-pin Cortex-M Adapter".

  • 1 port USB FS Device, utilisable entre autre pour la reprogrammation par le bootloader intégré (DFU) ou pour servir de port série sur USB.

  • 1 entrée analogique destinée à mesurer la tension de la batterie et à mettre le système en veille si on atteint la tension de décharge.

  • 1 IMU 9DOF MPU9250.

  • 1 buzzer PKLCS1212E4001-R1 pour pouvoir jouer des mélodies.

  • 1 LED RGB HSMF-C114, dont chaque couleur doit être pilotée en PWM hardware. Par défaut au boot, la LED rouge doit s'allumer faiblement pour indiquer que la carte est sous tension. Mais elle doit pouvoir aussi être éteinte et pilotée en PWM comme les deux autres.

  • 1 LED IR de haute puissance TSTS7100 qu'on soudera sur la carte grâce à deux pads de 3mmx1mm.

  • 1 module ESP32 DEV KITC, pour la connectivité WiFi / BT, qu'on reliera en UART au STM32 et si possible aussi en SPI.

  • 1 connecteur JAE_ST1W008S4ER1500 pour carte µSD relié en SDIO 4 bits.

  • 1 chip Ethernet LAN8742A-CZ, relié au STM32 en RMII, qu'on branchera à un connecteur possédant déjà le tranformateur adéquat, le RB1-125BAG1A.

  • 1 quartz de 16Mhz de référence CX2016DB16000D0FLJCC pour l'horloge du STM32.

L'alimentation

La carte disposera de deux sources d'alimentation :

  • Une batterie LiPo de 4.2V telle que celle-ci (tension nominale 3.7V, tension maximale 4.2V. Tension déchargée : 2.7V).
  • Le port USB. Lorsqu'on branche le port USB, un circuit doit pouvoir en profiter pour recharger la batterie : MCP73831T-2ACI/OT. Une LED doit pouvoir signaler la fin de charge de la batterie.

Le régulateur de tension qu'on utilisera sera le MIC5504-3.3YM5-TR (régulateur linéaire).
On reliera la batterie à la carte par un connecteur S2B-PH-SM4-TB dont la broche 1 sera le VCC et la broche 2 le GND.
Il y a plusieurs façons de procéder pour faire fonctionner une carte tout en rechargeant une batterie, l'application note AN1149 de Microchip vous sera d'une aide précieuse.

Le PCB

Le PCB se fera en deux couches, classe 5 avec un empilage "standard" (celui du template).

Documentation

Les documents (datasheet, reference manual, errata, notes d'applications) ne seront à prendre que chez le constructeur de façon à avoir une documentation à jour.

Choix des fonctions

Les STM32, comme tous les microcontrôleurs, ont des broches multiplexées : on peut affecter à la plupart des broches une fonction parmi plusieurs possibles. Réciproquement, chaque fonction est disponible sur plusieurs broches. Une des étapes préliminaire est donc d'affecter à chaque fonction une broche.

Pour cela, deux ressources :

  1. Nous vous avons préparé un fichier pour aider au choix des broches du STM32, présentant les différentes fonctions de chaque broche, qui vous permettra de choisir les affectations plus facilement : on peut voir d'un seul coup d'oeil quelle fonction affecter à quelle broche et choisir des broches proches les unes des autres. Chaque fonction doit être remplie comme indiquée en cours.
  2. Pour vérifier que vous n'avez pas fait de bêtises (et que le tableau est bien juste), téléchargez et installez le logiciel STM32CubeMX, qui tourne sous toutes les plateformes. Vérifiez que l'assignement des broches que vous avez choisi est correct.
  3. Dans le deuxième onglet de ce même logiciel, paramétrez les horloges / PLL de façon à fonctionner à la fréquence maximale. Cela vous donnera les coefficients à entrer dans le mcuconf.h de ChibiOS.

Lors du placement / routage, vous serez probablement amenés à changer l'affectation des broches pour simplifier le placement et/ou le routage. Le tableau OpenOffice devra donc être mis à jour, ainsi que le projet STM32CubeMX.

Fichier attachéTaille
Fichier table_de_routage_stm32h743vit6.ods28.52 Ko