Je crée un projet vierge pour un microcontrôleur STM32F103 utilisant STM32CubeMX. En utilisant les pilotes HAL (par défaut), j'ai obtenu un exemple clignotant qui fonctionne assez rapidement, mais j'aimerais essayer des pilotes LL (bas niveau) au lieu de HAL.
Lorsque je vais dans Projet> Paramètres> Paramètres avancés dans CubeMX, je vois les périphériques répertoriés et il y a un menu déroulant à côté de chacun qui n'a qu'une seule option, HAL. Selon les documents, c'est là que je pourrais sélectionner LL ou HAL pour chaque périphérique.
Comment activer les pilotes LL dans STM32CubeMX?
Détails: J'ai fait une installation propre de STM32CubeMX (4.23.0) sur Ubuntu (16.04) et créé un nouveau projet pour le microcontrôleur STM32F103C8 (c'est sur une carte "Blue Pill"). J'utilise SW4STM32 IDE, tout a plus ou moins fonctionné hors de la boîte, sauf que je devais sélectionner STLink V2 au lieu de V2.1 dans un fichier de configuration.
Actuellement (STM32CubeMX v4.23.0), les pilotes LL ne sont générés que pour les séries L1, L4, F2, F4, F7. Voir le chapitre 6.2 Génération de code STM32Cube à l'aide des pilotes Low Layer Pour les séries STM32L1, STM32L4, STM32L4 +, STM32F2, STM32F4 et STM32F7, STM32CubeMX permet de générer un code d'initialisation périphérique basé soit sur le pilote HAL périphérique, soit sur le pilote LAL périphérique bas.
à partir du gestionnaire de projet sous les paramètres avancés du sélecteur de pilotes, vous pouvez changer HAL en LL pour tous les périphériques