Este artigo tem como objetivo principal economizar tempo ao criar um kit de ferramentas, mas ao mesmo tempo tentarei contar tudo de maneira bastante volumosa.
Descrição do Conselho de AvaliaçãoA placa é baseada no processador dual-core "NVIDIA Tegra Cortex-A9".
Pode funcionar no Windows CE 7.0
* e Linux.
RAM: 512MB
As especificações completas estão disponíveis
aqui .
* Eu devo avisar você - eu não recomendo o WinCE7.0 como sistema operacional para esta placa, se o C ++ for crucial para o desenvolvimento, porque não foi fácil para mim construir o kit de ferramentas pessoalmente. Uma exceção é se seu aplicativo é um aplicativo de console, então não deve haver problemas. CoDeSys e C # - não causam problemas.
Conteúdo- Baixe tudo o que você precisa
- Instalação do SDK
- Verificação do SDK
- Instale o Eclipse
- Conecte o GTK ao Eclipse
- Configurando um Projeto Eclipse
- Resultado
Baixe tudo o que você precisa:
O primeiro é o SDK do conselho, que pode ser
baixado do site oficial da
Toradex .
Segundo , precisamos de um host com o
Ubuntu 16.04 LTS .
O terceiro é
o próprio Eclipse para C / C ++ .
Instale o SDK:
Importante: instale-o melhor no caminho padrão, para evitar todos os tipos de erros.
mon@mon:~$ cd /Downloads/SDK mon@mon:~$ chmod +x angstrom-glibc-x86_64-armv7at2hf-vfp-v2017.12-toolchain.sh mon@mon:~$ ./angstrom-glibc-x86_64-armv7at2hf-vfp-v2017.12-toolchain.sh Angstrom SDK installer version nodistro.0 ========================================= Enter target directory for SDK (default: /usr/local/oecore-x86_64): You are about to install the SDK to "/usr/local/oecore-x86_64". Proceed[Y/n]? y
Após a instalação do SDK, poderemos executar o script para integrar automaticamente as variáveis:
. /usr/local/oecore-x86_64/environment-setup-armv7at2hf-vfp-angstrom-linux-gnueabi
Nota: sempre que abrir um novo terminal, você deve executar o script novamente.
Etapa opcionalVerificação do SDK
1. Altere o shell do Ubuntu de dash para bash:
sudo update-alternatives --install /bin/sh sh /bin/bash 100
2. Crie o arquivo FirstTest.c, com o seguinte conteúdo:
3. Compile:
${CC} -Wall FirstTest.c -o FirstTest
4. De qualquer forma, redefina o PLC e execute:
Captura de tela
Tudo parece estar em ordem.
Instale o Eclipse
1. Java é necessário para o Eclipse funcionar, instale-o:
sudo apt-get update sudo apt-get install default-jre
2. Vamos para o diretório em que temos o Eclipse e descompacte-o:
cd ~ mkdir -p ~/eclipse/neon-3 tar xf ~/Downloads/eclipse-cpp-neon-3-linux-gtk-x86_64.tar.gz -C ~/eclipse/neon-3/
3. Vamos para o diretório Eclipse:
cd ~/eclipse/neon-3/eclipse
4. Exporte as variáveis e execute o Eclipse:
. /usr/local/oecore-x86_64/environment-setup-armv7at2hf-vfp-angstrom-linux-gnueabi ./eclipse
Isso completa a instalação.
Conecte e configure o GTK no Eclipse
1. Instale os pacotes necessários:
sudo apt-get install libgtk-3-dev gdb eclipse-cdt build-essential cmake git pkg-config
2.
Vá para
Ajuda-> Eclipse Marketplace3. Encontre e instale o pkg-config
Depois disso, reinicie o Eclipse.
4. Vá para Propriedade -> Compilação C / C ++ -> Configurações -> "pkg-config"
5. Encontre o GTK e marque-o.
Além disso, eu recomendo que, para trabalhar mais rápido e melhor com a interface - instale o Glade.
sudo apt-get install glade-gnome
Configurando o projeto Eclipse:
Antes de iniciar o Eclipse, não se esqueça de integrar as variáveis:
. /usr/local/oecore-x86_64/environment-setup-armv7at2hf-vfp-angstrom-linux-gnueabi
1. Crie um novo projeto C ++:
2. Vá para as propriedades do projeto:
3. Vá para
C / C ++ Build -> Configurações4. Agora precisamos passar variáveis do Eclipse, por exemplo:
Para o
Cross GCC Compiler, é o seguinte:
${CC}
Para
Cross GCC Compiler -> Miscellaneous é:
${CFLAGS} -c
Para o
Cross G ++ Compiler, é o seguinte:
${CC}
Para
Cross G ++ Compiler -> Diversos é:
${CFLAGS} -c
Para o
Cross G ++ Linker, é o seguinte:
${CXX}
Para
Cross G ++ Linker -> Diversos é:
${LDFLAGS}
Para
Cross GCC Assembler, são eles:
${AS}
É isso, agora você pode criar um projeto, compilar e testá-lo em um PLC.
Resultado
Obrigado por sua atenção, boa sorte no desenvolvimento.