Skip to content
| Marketplace
Sign in
Visual Studio Code>Other>CMSIS configurator MCC-LIKENew to Visual Studio Code? Get it now.
CMSIS configurator MCC-LIKE

CMSIS configurator MCC-LIKE

Rodrigo Britto

|
4 installs
| (0) | Free
PIC32CM peripheral, pin, clock and CMSIS configuration inside VS Code.
Installation
Launch VS Code Quick Open (Ctrl+P), paste the following command, and press enter.
Copied to clipboard
More Info

CMSIS configurator MCC-LIKE — VS Code

Interface integrada em uma aba do VS Code, com uma cópia independente do gerador Python 0.11.0. A aplicação desktop original permanece intacta.

Instalar e abrir

  1. Use Extensões → ⋯ → Instalar do VSIX… e selecione o arquivo em dist/.
  2. Abra uma pasta de projeto confiável no VS Code.
  3. Execute MCC-LIKE: Abrir configurador / Open configurator na paleta de comandos.
  4. Use Abrir projeto para um arquivo .h3.json existente ou Novo projeto.

Também há um comando no menu de contexto de arquivos .h3.json no Explorer. O configurador abre dentro do editor. Não abre a interface Tkinter.

Recursos

  • Catálogo PIC32CM com 73 part numbers em 9 famílias, incluindo o backend PV20 beta.
  • Filtros por família/disponibilidade e indicação dos packs e ferramentas ausentes.
  • Pastas sugeridas e instalação inicial automática com Java privado para Windows x64 e Linux x64/ARM64, além de importação local de packs beta.
  • Seleção AC6/GCC ao criar o projeto e no painel RTE / CMSIS, com download automático do GCC ausente.
  • Criar, abrir, salvar e gerar projetos compatíveis com o desktop.
  • Grafo de componentes com seleção, adição/remoção e posições arrastáveis salvas.
  • Propriedades hierárquicas, filtros, símbolos internos, valores calculados e opções.
  • Visualização do encapsulamento, matriz de sinais, GPIO, aliases, pull e pinmux.
  • Clocks, interrupções, DMA, watchdog e sistema pelas propriedades do dispositivo.
  • Compatibilidade MCC opcional, delay_ms/delay_us, USART stdio/printf e callbacks/ISRs conforme as mesmas regras e limitações do gerador original.
  • Lista RTE, perfis de gravadores Microchip e clock SWD.
  • Visualização de código e abertura dos arquivos gerados no editor.
  • Português/English, logo Microchip central e seleção de idioma à direita.
  • Diagnóstico no painel Output e recuperação da última sessão após reabrir o VS Code.

As limitações dos packs e do gerador original continuam válidas: por exemplo, PV20 beta não inclui editor Touch ou sintetizador CLB e alguns modos exigem inicialização em user_peripherals/. Textos fornecidos pelos packs mantêm o idioma do fornecedor. O desenho do encapsulamento apresenta a ordem dos pinos do pack, sem pretender reproduzir a geometria mecânica de cada encapsulamento.

Compilador AC6 ou GCC (0.1.4)

Em Novo projeto → Compilador, escolha AC6 (Arm Compiler 6) ou GCC (Arm GNU Toolchain). Para trocar em um projeto existente, use RTE / CMSIS → Compilador e depois Salvar / Gerar. Projetos antigos sem essa seleção continuam em AC6.

A escolha é salva no .h3.json e define compiler na csolution, a ferramenta em vcpkg-configuration.json, o startup/linker do DFP e o retarget de printf. Os diret?rios tmp/AC6, tmp/GCC, out/AC6 e out/GCC separam o cache e os bin?rios dos compiladores para permitir a troca sem limpeza manual. GCC usa Arm GNU Toolchain 14.3.1, newlib-nano, _write para a USART selecionada e heap limitado à reserva do linker. AC6 mantém o retarget da biblioteca Arm. main.c, callbacks e alterações manuais de startup são protegidos na regeneração.

Ao criar/abrir um projeto GCC, trocar para GCC ou gerar, a extensão solicita acquirePackages à API oficial do Arm Tools Environment Manager. A versão necessária é reutilizada se já estiver no cache; caso contrário, é baixada e instalada automaticamente para Windows/Linux no cache do gerenciador. O VS Code instala essa extensão como dependência do MCC-LIKE. Por padrão o cache fica em %USERPROFILE%\.vcpkg no Windows ou ~/.vcpkg no Linux; o destino personalizado environment-manager.vcpkgRoot também é respeitado. Não requer MPLAB X.

A aquisição usa exatamente a mesma versão referenciada no projeto, evitando uma segunda instalação na pasta privada de Java. Abra a csolution gerada na extensão CMSIS: o ambiente ativa o compilador do cache para o build. Não altera o PATH do sistema. Falhas de download são exibidas e podem ser repetidas selecionando GCC novamente. cmsisMcc.autoInstallDependencies=false desativa a aquisição automática.

Referências: API do Arm Tools Environment Manager, formato CMSIS, syscalls newlib.

Dependências e ferramentas

Python 3.10+; Tkinter não é necessário para a interface da extensão. Configure cmsisMcc.pythonPath se a detecção automática não encontrar seu Python. Os packs vêm de CMSIS_PACK_ROOT ou do local padrão. A versão 0.1.3 inicia a preparação de Java, CSP e runtime assim que o configurador abre em uma pasta confiável. Os packs públicos ausentes são instalados ao criar ou abrir o projeto escolhido. Não é necessário instalar MPLAB X. Python 3.10+ continua sendo um pré-requisito.

O botão Instalação / Packs e as configurações cmsisMcc.* permitem definir Python, packs, CSP, MCC Core e Java. Os caminhos são configurações da extensão, separadas dos arquivos do configurador desktop.

Pastas sugeridas e preparação automática (0.1.3)

As pastas são sugeridas na tela inicial e os campos de Instalação / Packs vêm preenchidos com o caminho configurado, detectado ou sugerido. É possível editar os caminhos; diretórios e ferramentas já configurados são preservados.

Conteúdo Windows Linux
Ferramentas privadas %LOCALAPPDATA%\CMSIS-Configurator\tools $XDG_DATA_HOME/cmsis-configurator/tools, ou ~/.local/share/cmsis-configurator/tools
Packs CMSIS %LOCALAPPDATA%\Arm\Packs ~/.cache/arm/packs
Java, relativo à pasta de ferramentas java\bin\java.exe java/bin/java
CSP, relativo à pasta de ferramentas csp\v3.26.0 csp/v3.26.0
Runtime, relativo à pasta de ferramentas runtime\2.7.0-2.3.23 runtime/2.7.0-2.3.23

CMSIS_PACK_ROOT tem prioridade sobre a pasta de packs padrão. Um XDG_DATA_HOME relativo é ignorado, conforme a especificação XDG. A configuração cmsisMcc.toolsRoot permite escolher outra pasta para as ferramentas. Uma instalação existente da versão 0.1.2 no globalStorage/tools é reutilizada automaticamente.

Novo projeto mostra todos os dispositivos previstos, mesmo quando seus packs não estão instalados. A versão 0.1.0 ocultava dispositivos sem packs/CSP locais, o que podia fazer a extensão publicada apresentar somente PL10.

Família PIC32CM Part numbers DFP de referência
JH 24 PIC32CM-JH_DFP 1.7.296
LE 8 PIC32CM-LE_DFP 1.4.336
LS 11 PIC32CM-LS_DFP 1.4.351
MC 4 PIC32CM-MC_DFP 1.5.244
PL 11 PIC32CM-PL_DFP 1.5.437
GV 6 PIC32CM-GV_DFP 1.3.47
PV20 (beta) 3 PIC32CM-PV_DFP 1.0.26
GC00 3 PIC32CM-GC00_DFP 1.0.27
SG00 3 PIC32CM-SG00_DFP 1.1.56

O catálogo contém identidades e encapsulamentos verificados nos PDSCs/ATDFs. Os packs, CSP, runtime, Java e Python não estão incluídos no VSIX. Para gerar no outro computador:

  1. Abra o configurador e acompanhe a instalação inicial automática. As pastas aparecem na tela inicial. Se houver falha de rede, use Instalar ferramentas / tentar novamente, também disponível em Instalação / Packs. O catálogo permanece acessível mesmo quando a preparação inicial falha.
  2. Selecione o part number em Novo projeto e clique em Instalar e criar (ou Criar projeto, quando já estiver pronto). A extensão baixa os itens ausentes e continua a criação automaticamente. Ao abrir um projeto existente, a mesma preparação acontece antes de carregá-lo. Instalar dependências prepara apenas as ferramentas.
  3. Acompanhe a notificação de progresso ou Diagnóstico. A primeira instalação pode levar alguns minutos. Em caso de falha de rede, corrija a conexão/proxy e tente novamente: downloads completos e verificados são reutilizados.
  4. Para PV20 beta, use Importar packs… e selecione os arquivos .pack/.atpack fornecidos pela Microchip: Microchip::PIC32CM-PV_DFP@1.0.26 e Microchip::CMSIS-Driver_PIC32CM-PV@1.0.0. Eles não estão disponíveis publicamente para download automático. PV20 não requer CSP/Java.

Para JH/LE/LS/MC/PL/GV/GC00/SG00, a preparação instala somente o que faltar:

  • DFP da família e, para PL, Microchip::CMSIS-Driver_PIC32CM-PL@1.3.4, no diretório CMSIS selecionado, a partir do repositório oficial Microchip.
  • Harmony CSP 3.26.0.
  • Runtime mínimo do gerador: Jython Standalone 2.7.0 e FreeMarker 2.3.23, obtidos do Maven Central. A aplicação MCC Core completa não é necessária.
  • Eclipse Temurin Java 8, em Windows x64 ou Linux x64/ARM64 com glibc. O arquivo ZIP/TAR.GZ correspondente é escolhido automaticamente. O runtime é privado: não altera PATH, JAVA_HOME, registro do Windows ou o Java de outros programas e não exige administrador/sudo.

As instalações são verificadas por SHA-256, extraídas em diretórios temporários e ativadas somente após a validação. A extração Linux mantém as permissões de execução e transforma links internos validados em cópias locais. Arquivos de licença dos fornecedores são mantidos.

cmsisMcc.autoInstallDependencies vem habilitado por padrão. Desabilite-o para preparação exclusivamente manual (recarregue a janela após alterar a configuração). Instalações existentes continuam sendo detectadas; os caminhos em Instalação / Packs permitem selecionar outras ferramentas. Em plataformas diferentes das listadas acima, configure um Java compatível manualmente. Os downloads usam HTTPS, a configuração de proxy reconhecida pelo Python e as variáveis HTTPS_PROXY/HTTP_PROXY.

A descoberta considera o diretório selecionado em cmsisMcc.packRoot ou CMSIS_PACK_ROOT, o diretório padrão Arm/Packs, .mchp_packs, packs do MPLAB X e o cache local do configurador. O painel Diagnóstico informa os diretórios consultados, as famílias e quantos dispositivos estão prontos. O filtro Prontos para criar permite mostrar apenas os utilizáveis nessa instalação.

Após gerar, abra/selecione a csolution correta na extensão Arm CMSIS Solution. Os botões Build, Load, Load & Run, Load & Debug, Attach Debugger e RTE chamam os comandos da extensão CMSIS; não executam cbuild ou gravadores por conta própria. Essas ações usam a solução ativa da extensão CMSIS, que deve ser a mesma do configurador.

Preservação dos dados

Fechar a aba mantém a sessão no processo da extensão. Alterações concluídas têm um checkpoint separado no armazenamento da extensão; reabrir o VS Code oferece restauração. Campos ainda não aplicados devem ser aplicados antes de fechar a janela. Salvar ou gerar grava o projeto na pasta escolhida pelo usuário. Mudanças externas no .h3.json bloqueiam gravação até reabrir; a geração mantém a proteção do manifest e dos arquivos de usuário do gerador original.

Desenvolvimento

Abra esta pasta e pressione F5 para iniciar um Extension Development Host. A extensão usa JavaScript e APIs nativas do Node, sem dependências npm de runtime.

python scripts/translations.py
python -m unittest discover -s tests -p "test_*.py" -v
node --test tests/bridge.test.js
python scripts/package.py

O empacotador local gera o formato VSIX para instalação privada, sem publicar no Marketplace.

Pacote para o Marketplace

O Publisher ID desta distribuição é RodrigoBritto. Selecione esse mesmo publicador no portal e escolha o tipo Visual Studio Code para o upload. O pacote para envio é dist/RodrigoBritto.cmsis-configurator-mcc-like-0.1.4.vsix, gerado com o empacotador oficial @vscode/vsce.

O arquivo anterior cmsis-configurator-mcc-like-0.1.0.vsix usa o identificador rfbri e permanece disponível para a instalação local anterior. Os dois IDs de publicador representam extensões diferentes no VS Code.

Para novos pacotes públicos, use Node.js/npm e o empacotador oficial:

npx @vscode/vsce package --no-dependencies --allow-missing-repository --out dist/RodrigoBritto.cmsis-configurator-mcc-like-0.1.4.vsix

A licença de distribuição ainda deve ser definida pelo autor. O pacote de correção foi gerado com --skip-license, sem atribuir uma licença em seu nome.

Para disponibilizar a correção, use Update na extensão já publicada pelo publisher RodrigoBritto e envie o VSIX 0.1.4. O identificador permanece RodrigoBritto.cmsis-configurator-mcc-like. A geração local do pacote não o publica automaticamente no Marketplace.

  • Contact us
  • Jobs
  • Privacy
  • Manage cookies
  • Terms of use
  • Trademarks
  • Your Privacy Choices
  • Consumer Health Privacy
© 2026 Microsoft