Visão geral das possibilidades do Qt Creator 4.12 e QBS 1.16 para programar microcontroladores

Olá, colegas programadores, hardware e todos que simpatizam com eles. Gostaria de continuar analisando os recursos do Qt Creator IDE em conjunto com o sistema de compilação QBS referente à programação de microcontroladores.

Anteriormente, escrevi sobre melhorias nas versões anteriores do QtC 4.10 e QBS 1.14 , QtC 4.11 e QBS 1.15 .

Para quem esse tópico é interessante, bem-vindo ao gato.

Outro dia, silenciosa e imperceptivelmente, foi lançada a versão Qt Creator 4.12 , que adicionou algumas melhorias ao trabalhar com microcontroladores (em pessoas comuns - dispositivos "baremetais"). Esta versão do Qt Creator integra o sistema de compilação QBS 1.16 , que também possui novas melhorias.

Melhorias no Qt Creator



  1. Adicionada integração com o Keil MDK

    A principal nova melhoria é a integração com o depurador do Keil MDK v5 . Keil fornece umainterface proprietária UVSC para integrar o depurador com aplicativos clientes de terceiros. Como uma camada, eles fornecem uma biblioteca dinâmica (que vem com o próprio Keil) e uma descrição da API.

    O trabalho com este depurador está disponível apenas quando o plug-in BareMetal está ativado, que é ativado no menu "Ajuda -> Sobre plug-ins -> Suporte a dispositivos -> BareMetal".

    Atualmente, os seguintes depuradores são suportados:
    DepuradorArquiteturaDescrição
    SimuladorBRAÇOPermite simular a operação do MCU na ausência de um depurador de hardware.
    ST-LinkBRAÇOPermite depurar MCUs de destino da STMicroelectronics.


    Atualmente, os seguintes microcontroladores são suportados:
    MCUArquiteturaNota
    STM32 por STMicroelectronicsBRAÇOPelo menos, funciona exatamente com o STM32F1x e STM32F4x.

    Agora, o depurador Keil é detectado automaticamente na guia "Ferramentas -> Opções -> Kits -> Depuradores -> Detectado automaticamente".

    Por exemplo, para mim, é assim:



    Portanto, as etapas básicas para configurar o kit para compilação e depuração pelo kit de ferramentas Keil são as seguintes:

    1. Criação de um novo dispositivo bare-metal.

      Comece a criar um novo dispositivo em "Ferramentas -> Opções -> Dispositivos -> Adicionar -> Dispositivo bare metal" e defina qualquer nome para este dispositivo (seja stm32f4) e deixe o campo do provedor de servidor de depuração "Nenhum":


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



    Agora você pode compilar e depurar projetos usando o QBS (como você sabe, no momento tudo isso é "adaptado" especificamente ao QBS).

    Por exemplo, você pode abrir o exemplo QBS finalizado para STM32F4DISCOVERY e piscar o LED.



    O que é suportado:

    • Iniciar / parar o depurador.
    • Etapas de depuração Step-in / out / over / instrução.
    • Exibir e editar variáveis ​​locais.
    • Exibir e editar variáveis ​​na janela Observar.
    • Rastreamento de pilha.
    • Exibir e editar registros padrão (não periféricos).
    • Definir pontos de interrupção.

    O que mais NÃO é suportado:

    • Ver / editar memória.
    • Exibir e editar registros periféricos.

    Quais são os erros:

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

    Mais informações sobre o estado atual podem ser encontradas aqui .

    Nota: Naturalmente, escrevi sobre esses erros encontrados no UVSC em suporte ao Keil, mas eles ignoram tudo isso, porque Estou usando a versão "avaliação" do Keil. Dizem que, desculpe, compre e depois conversaremos. Mas isso é um absurdo! Por que eu devo comprar software obviamente não funcional!

    Claro, não julgue rigorosamente, este é apenas o primeiro passo ... Como se costuma dizer: começaram a surgir problemas.

  2. Adicionados novos depuradores para o GDB

    Adicionado suporte para os seguintes novos depuradores:
    DepuradorUm tipo
    Segger j-linkGdb
    EBLinkGdb


    Não vou descrever suas configurações em detalhes aqui, porque tudo é simples lá.

Melhorias no QBS


Quanto à programação de microcontroladores, direi que foi adicionado suporte e detecção automática de novas arquiteturas da Renesas para o IAR EW.

A propriedade qbs.architecture possui os seguintes novos valores:

Nome da arquiteturaValor da propriedade
Renesas V850v850
Renesas 78K78k
Renesas RL78rl78
Renesas rxrx
Renesas RH850rh850

Qual é o próximo


Em versões futuras, a QBS planeja adicionar arquiteturas C251, C166 para o Keil e para o Qt Creator novos depuradores e suporte para novos microcontroladores para o Keil.

Nesta nota, encerro minha história, obrigado a todos que prestarem atenção a esta revisão.

All Articles