Descripción general de las posibilidades de Qt Creator 4.12 y QBS 1.16 para programar microcontroladores

Hola, compañeros programadores, hardware y todos los que simpatizan con ellos. Me gustaría continuar revisando las capacidades del Qt Creator IDE junto con el sistema de compilación QBS con respecto a la programación de microcontroladores.

Anteriormente, escribí sobre mejoras en versiones anteriores de QtC 4.10 y QBS 1.14 , QtC 4.11 y QBS 1.15 .

Para quien este tema es interesante, bienvenido a cat.

Justo el otro día, silenciosa e imperceptiblemente, se lanzó la versión Qt Creator 4.12 , que agregó algunas mejoras para trabajar con microcontroladores (en personas comunes: dispositivos "baremetal"). Esta versión de Qt Creator integra el sistema de compilación QBS 1.16 , que también tiene nuevas mejoras.

Mejoras en Qt Creator



  1. Se agrega la integración con Keil MDK.

    La principal mejora nueva es la integración con el depurador de Keil MDK v5 . Keil proporciona unainterfaz patentada UVSC para integrar el depurador con aplicaciones de clientes de terceros. Como capa, proporcionan una biblioteca dinámica (que viene con Keil) y una descripción de la API.

    El trabajo con este depurador solo está disponible cuando el complemento BareMetal está activado, que se activa a través del menú "Ayuda -> Acerca de los complementos -> Soporte de dispositivos -> BareMetal".

    Actualmente se admiten los siguientes depuradores:
    DepuradorArquitecturaDescripción
    SimuladorBRAZOLe permite simular el funcionamiento de la MCU en ausencia de un depurador de hardware.
    ST-LinkBRAZOLe permite depurar MCU de destino de STMicroelectronics.


    Los siguientes microcontroladores son compatibles actualmente:
    MCUArquitecturaNota
    STM32 por STMicroelectronicsBRAZOAl menos funciona exactamente con STM32F1x y STM32F4x.

    Ahora el depurador Keil se detecta automáticamente en la pestaña "Herramientas -> Opciones -> Kits -> Debugegrs -> Autodetectado".

    Por ejemplo, para mí se ve así: por lo



    tanto, los pasos básicos para configurar el kit para la compilación y depuración mediante el kit de herramientas Keil son los siguientes:

    1. Creación de un nuevo dispositivo de metal desnudo.

      Comience a crear un nuevo dispositivo en "Herramientas -> Opciones -> Dispositivos -> Agregar -> Dispositivo de metal desnudo" y configure cualquier nombre para este dispositivo (deje que sea stm32f4), y deje el campo del proveedor del servidor de depuración "Ninguno":


    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»:



    Ahora puede compilar y depurar proyectos utilizando QBS (como ya sabe, en este momento todo esto está "adaptado" específicamente para QBS).

    Por ejemplo, puede abrir el ejemplo QBS terminado para STM32F4DISCOVERY y parpadear el LED.



    Lo que se admite:

    • Iniciar / detener el depurador.
    • Pasos de depuración Paso a paso / fuera / sobre / instrucción.
    • Mostrar y editar variables locales.
    • Visualización y edición de variables en la ventana Watch.
    • Seguimiento de pila.
    • Mostrar y editar registros estándar (no periféricos).
    • Establecer puntos de interrupción.

    Qué más NO es compatible:

    • Ver / editar memoria.
    • Mostrar y editar registros periféricos.

    ¿Cuáles son los errores?

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

    Puede encontrar más información sobre el estado actual aquí .

    Nota: Naturalmente, escribí sobre estos errores encontrados en UVSC en apoyo de Keil, pero ignoran todo esto, porque Estoy usando la versión de "evaluación" de Keil. Dicen que, lo siento, compra y luego hablamos. ¡Pero esto no tiene sentido! ¿Por qué debería comprar obviamente software que no funciona?

    Por supuesto, no juzgues estrictamente, este es solo el primer paso ... Como dicen: comenzaron los problemas apresurados.

  2. Se agregaron nuevos depuradores para GDB Se

    agregó soporte para los siguientes nuevos depuradores:
    DepuradorUn tipo
    Segger j-linkGdb
    EBLinkGdb


    No describiré sus configuraciones en detalle aquí, porque Todo es simple allí.

Mejoras en QBS


En cuanto a la programación de microcontroladores, diré que se ha agregado soporte y autodetección de nuevas arquitecturas de Renesas para IAR EW.

La propiedad qbs.architecture tiene los siguientes valores nuevos:

Nombre de la arquitecturaValor de la propiedad
Renesas V850v850
Renesas 78K78k
Renesas RL78rl78
Renesas rxrx
Renesas RH850rh850

Que sigue


En futuras versiones, QBS planea agregar arquitecturas C251, C166 para Keil, y para Qt Creator nuevos depuradores y soporte para nuevos microcontroladores para Keil.

En esta nota, termino mi historia, gracias a todos los que prestarán atención a esta revisión.

All Articles