Sem dúvida boas ferramentas de desenvolvimento são uma das bases para se criar códigos e produtos de qualidade, se você acompanha o mercado de microcontroladores nos últimos anos deve ter visto a vasta gama de opções disponíveis para cada família e fabricante de chips. Embora as ferramentas de software proprietárias sejam uma das mais confiáveis, podemos encontrar algumas opções que agregam qualidade e baixo custo ou até mesmo custo zero. Um bom exemplo de IDE free de qualidade é a do site CoIDE CooCox .

CoIDE CooCox

O CoIDE é baseado no ambiente Eclipse e conta com constantes atualizações, aproximadamente no período de um a dois meses uma atualização é disponibilizada, inclusive a última versão até a data de edição deste artigo é a 1.7.5.

CoIDE
CooCox CoIDE

 Entre as características do CoIDE que chamam a atenção estão:

O site do CooCox é bem organizado e para baixar os aplicativos basta realizar um breve cadastro.

Além do CoIDE o pacote CooCox traz ainda outras ferramentas muito interessantes:

CoFlash

O CoFlash é um software stand alone para programação Flash de chips de vários fabricantes seguindo a mesma filosofia, simples e funcional.

 É possível trabalhar com vários adaptadores de gravação e permite que o usuário adicione mais dispositivos de forma customizada, suporta arquivos .bin e .elf.

CoSmart

CoSmart é uma ferramenta inteligente de configuração de pinos e geração de código que automatiza a criação de grande parte do código de forma visual.

CoSmart

CoAssistant

O CoAssistant é uma assistente de registradores de chip ARM Cortex, funciona on-line através do navegador web, por esse motivo não é disponível para download.

CoOS

A família CooCox é tão completa que ainda possui o seu próprio RTOS (Sistema Operacional em Tempo Real), que possui características muito interessantes pois pode trabalhar dentro do CoIDE facilitando a implementação nos chips suportados pela IDE.

No site encontramos outras novidades, como a CoX que é uma interface de periféricos e uma ótima biblioteca de drivers e códigos fonte, além disso é possível encontrar placas de desenvolvimento e o Debugador oficial do CooCox.

Com certeza vale apena uma visita no site.

Como tudo não são somente boas notícias CoIDE somente está disponível para Windows, o que é uma pena pra quem utiliza o Ubuntu, além disso por tornar a interface muito simples o usuário avançado pode sentir falta de uma maior liberdade na criação de seus firmwares, mas nada que não possa ser resolvido.

Exemplo Prático com a STM32F4Discovery.

Para Iniciar a escovação de bits precisamos das seguinte ferramentas.

  1. Baixar e instalar o CoIDE do Coocox.
  2. Instalar o compilador GCC ARM Embedded.                                                                                                          
  3. Instalar o driver USB  ST-Link/V2 da placa STM32F4Discovery.
STM32F4-DISCOVERY_1

Repare que todos os programas da família são gerenciados pelo CoCenter, o que facilita a atualização e o gerenciamento dos mesmos.  

CoCenter

O próximo passo é configurar a entrada do compilador na CoIDE.

 Para isso vá em Project >Select Toolchain Path e encontre a pasta bin onde o GCC foi instalado como:

C:\Program Files (x86)\GNU Tools ARM Embedded\4.7 2013q2\bin

Agora podemos criar um novo projeto utilizando todos os recursos da CoIDE, logo no inicio o repositório é aberto, neste ponto temos algo bem interessante pois quando adicionamos um periférico todas as dependências são adicionadas automaticamente ao projeto, por exemplo basta marcar a opção GPIO que automaticamente o CMSIS e o Controle de Clock (RCC) serão adicionados. Em seguida  é só abrir o main.c na aba Project.

Não esqueça de selecionar o hardware de debugger em View>Configuration>Debugger que nesse caso será o ST-link.

Debugger_Conf

Depois de escrever o código fonte é hora de compilar a aplicação através da função Build em Project>Build. A CoIDE disponibiliza vários códigos de exemplo para os mais diversos modelos de microcontroladores, o acesso a biblioteca de exemplos é feita pela própria IDE pela aba Components.

Se as bibliotecas carregadas e o código forem compilados com sucesso o compilador irá retornar  informações como no exemplo abaixo.

Mensagem Build

O tamanho do código gerado dado em bytes pode de ser obtido pela leitura dos seguintes valores:

Memória Flash = text + data.

Memória RAM = data + bss.

Sem dúvida a família de softwares CooCox compreendem itens que não podem faltar no PC de qualquer desenvolvedor de sistemas embarcados. Com constantes atualizações e uma crescente comunidade espalhada ao redor do mundo, podemos esperar cada vez mais dessa grande ferramenta.