Présentation des possibilités de Qt Creator 4.12 et QBS 1.16 pour la programmation de microcontrôleurs

Bonjour, chers programmeurs, matériel et tous ceux qui sympathisent avec eux. Je voudrais continuer à passer en revue les capacités de l'IDE Qt Creator en conjonction avec le système de construction QBS concernant la programmation des microcontrôleurs.

Plus tôt, j'ai écrit sur les améliorations des versions précédentes de QtC 4.10 et QBS 1.14 , QtC 4.11 et QBS 1.15 .

Pour qui ce sujet est intéressant, bienvenue au chat.

L'autre jour, silencieusement et imperceptiblement, la version Qt Creator 4.12 a été publiée , qui a ajouté quelques améliorations pour travailler avec des microcontrôleurs (chez les gens ordinaires - les appareils «baremetal»). Cette version de Qt Creator intègre le système de construction QBS 1.16 , qui présente également de nouvelles améliorations.

Améliorations de Qt Creator



  1. L'intégration avec Keil MDK est ajoutée.

    La principale nouvelle amélioration est l'intégration avec le débogueur de Keil MDK v5 . Keil fournit uneinterface propriétaire UVSC pour intégrer le débogueur avec des applications clientes tierces. En tant que couche, ils fournissent une bibliothèque dynamique (fournie avec Keil lui-même) et une description de l'API pour celle-ci.

    Le travail avec ce débogueur n'est disponible que lorsque le plugin BareMetal est activé, qui est activé via le menu "Aide -> À propos des plugins -> Support des périphériques -> BareMetal".

    Les débogueurs suivants sont actuellement pris en charge:
    DébogueurArchitectureLa description
    SimulateurBRASVous permet de simuler le fonctionnement du MCU en l'absence d'un débogueur matériel.
    ST-LinkBRASVous permet de déboguer les microcontrôleurs cibles de STMicroelectronics.


    Les microcontrôleurs suivants sont actuellement pris en charge:
    MCUArchitectureRemarque
    STM32 par STMicroelectronicsBRASAu moins, cela fonctionne exactement avec les STM32F1x et STM32F4x.

    Le débogueur Keil est maintenant automatiquement détecté dans l'onglet "Outils -> Options -> Kits -> Debugegrs -> Auto-détecté".

    Par exemple, cela ressemble à cela pour moi:



    Ainsi, les étapes de base pour configurer le kit pour la compilation et le débogage par la boîte à outils Keil sont les suivantes:

    1. Création d'un nouvel appareil nu-métal.

      Commencez à créer un nouveau périphérique dans «Outils -> Options -> Périphériques -> Ajouter -> Périphérique nu» et définissez un nom pour ce périphérique (que ce soit stm32f4), et laissez le champ du fournisseur de serveur de débogage «Aucun»:


    2. .

      «Manage» :



      «Add» «UVision ST-Link»:



      , 'tools.ini', Keil:



      : Keil-, , .

      , , , «Target device -> Manage»:



      ( STM32F407 STM32F4DISCOVERY):



      : Keil «DFP» PackInstaller.

      , , «Target driver -> Manage»:



      «ST-Link Debugger»:



      :


    3. .

      «Tools -> Options -> Kits -> Add» (C C++), . , Qt «None»:



    Vous pouvez maintenant compiler et déboguer des projets à l'aide de QBS (comme vous le savez, pour le moment, tout cela est «adapté» spécifiquement pour QBS).

    Par exemple, vous pouvez ouvrir l' exemple QBS terminé pour STM32F4DISCOVERY et faire clignoter la LED.



    Ce qui est pris en charge:

    • Démarrez / arrêtez le débogueur.
    • Étapes de débogage Step-in / out / over / instruction.
    • Affichez et modifiez les variables locales.
    • Affichez et modifiez les variables dans la fenêtre Espion.
    • Suivi de la pile.
    • Affichez et modifiez les registres standard (non périphériques).
    • Définition de points d'arrêt.

    Quoi d'autre n'est PAS pris en charge:

    • Afficher / modifier la mémoire.
    • Affichez et modifiez les registres périphériques.

    Quelles sont les erreurs:

    • : , 10 , «» Qt Creator. UVSC. ( , ) Qt Creator.
    • 'main' (, .). UVSC.
    • ( ). UVSC.
    • 'step-into' 'step-over' 'main' : . 'main' Qt Creator 'step-instruction', . UVSC.
    • . UVSC.

    Vous trouverez plus d'informations sur l'état actuel ici .

    Remarque: Naturellement, j'ai écrit sur ces erreurs trouvées dans UVSC à l'appui de Keil, mais ils ignorent tout cela, car J'utilise la version "évaluation" de Keil. Ils disent que, désolé, achetez et ensuite nous parlerons. Mais c'est absurde! Pourquoi devrais-je acheter un logiciel qui ne fonctionne manifestement pas!

    Bien sûr, ne jugez pas strictement, ce n'est que la première étape ... Comme on dit: des ennuis fringants ont commencé.

  2. Ajout de nouveaux débogueurs pour GDB

    Ajout de la prise en charge des nouveaux débogueurs suivants:
    DébogueurUn type
    Segger j-linkGdb
    EBLinkGdb


    Je ne décrirai pas ici leurs paramètres en détail, car tout y est simple.

Améliorations dans QBS


En ce qui concerne la programmation des microcontrôleurs, je dirai que le support et la détection automatique des nouvelles architectures de Renesas pour IAR EW ont été ajoutés.

La propriété qbs.architecture a les nouvelles valeurs suivantes:

Nom de l'architectureValeur de la propriété
Renesas V850v850
Renesas 78K78k
Renesas RL78rl78
Renesas rxrx
Renesas RH850rh850

Et après


Dans les futures versions, QBS prévoit d'ajouter les architectures C251, C166 pour Keil et pour les nouveaux débogueurs Qt Creator et la prise en charge de nouveaux microcontrôleurs pour Keil.

Sur cette note, je termine mon histoire, merci à tous ceux qui feront attention à cette critique.

All Articles