Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revisionPrevious revision
Next revision
Previous revision
pt:examples:setup:codeblocksmanual [2015/12/07 17:44] articapt:examples:setup:codeblocksmanual [2020/07/20 12:00] (current) – external edit 127.0.0.1
Line 1: Line 1:
 +====== Setup manual IDE Code::Blocks ======
  
 +O seguinte guia descreve o setup do ambiente de desenvolvimento AVR, não utilizando o pacote de instalação précompilado do HomeLab.
 +
 +===== Instalação de software =====
 +
 +É necessário instalar o seguinte conjunto de software:
 +
 +**1. CodeBlocks **
 +
 +CodeBlocks IDE (Integrated Development Environment), para escrever e carregar software para o microcontrolador. 
 +
 +**2. Cadeia de desenvolvimento ATMEL AVR**
 +
 +Cadeia de desenvolvimento AVR (ATEML AVR Toolchain) consiste num compilador GNU-GCC para microcontroladores AVR. É um freeware que pode ser descarregado a partir do website da Atmel.
 +
 +**3. Biblioteca HomeLab**
 +
 +Biblioteca HomeLab consiste em várias funções para tornar a programação do AVR e do HomeLab kit mais simples. A última versão desta biblioteca pode ser descarregada a partir da página web do HomeLab.
 +
 +**4. DFU-Programmer**
 +
 +DFU-Programmer serve para programar controladores da série HomeLab III utilizando o bootloader.
 +
 +----
 +
 +=== Instalação CodeBlocks ===
 +
 +O seguinte guia descreve o setup de ambiente de desenvolvimento do HomeLab III (Controller v1 - ATxmega128A1U) e o seu uso no sistema operativo Windows.
 +
 +Primeiro instalar o software CodeBlocks.
 +Não é necessário instalar plugins.
 +{{  :et:examples:setup:codeblocks:1_cb_install.png?400  |}}
 +
 +De seguida seleccionar a correcta localização do CodeBlocks. Todos os exemplos assumem a localização por defeito //C:\HomelabCB//
 +{{  :et:examples:setup:codeblocks:2_cb_dir.png?400  |}}
 +Com isto o CodeBlocks fica instalado no computador.
 +
 +=== Adicionanto extras do HomeLabs ===
 +Depois do CodeBlocks se encontrar instalado, adicionar: AVR Toolchain, biblioteca HomeLab, DFU-Programmer
 +
 +Antes de mais deve seleccionar a directoria onde foi instalado o CodeBlocks, todos os extras deverão ser instalados na mesma directoria.
 +{{  :et:examples:setup:codeblocks:3_homelab_dir.png?400  |}}
 +
 +===== Configuração CodeBlocks =====
 +
 +A primeira vez que iniciar o programa aparecerá um menu para selecionar a localização do compilador. Poderá escolher a opção //"No Compiler"//, dado que a escolha do compilador será configurada manualmente mais à frente, e está dependente do template do projecto.
 +{{  :et:examples:setup:codeblocks:4_cb_firstrun.png?400  |}}
 +
 +De seguida, o compilador deverá ser definido. Introduzir no menu //Settings->Compiler...//. Na janela aberta deverão ser introduzidas as seguintes linhas:
 +Observar que deverá ser seleccionado **GNU GCC Compiler for AVR** e indicar onde instalar o software. Se a localização de instalação do software não for C:\HomelabCB deverão ser efectuadas as respectivas alterações.
 +{{  :et:examples:setup:codeblocks:5_cb_compiler1.png?400  |}}
 +{{  :et:examples:setup:codeblocks:6_cb_compiler2.png?400  |}}
 +{{  :et:examples:setup:codeblocks:7_cb_compiler3.png?400  |}}
 +{{  :et:examples:setup:codeblocks:8_cb_compiler4.png?400  |}}
 +
 +Depois configure o programador de modo a conseguir descarregar o código directamente do ambiente de desenvolvimento CodeBlocks. Para encontrar o menu //Tools->Configure tools...// e selecione //Add//. Nas janelas abertas escreva as seguintes linhas dependendo da geração do HomeLabs:
 +
 +** HomeLab III **
 +  * Homelab III
 +  * C:\HomelabCB\Programmer\Program.bat
 +  * "C:\HomelabCB\Programmer" "${TARGET_OUTPUT_BASENAME}.hex"
 +  * ${TARGET_OUTPUT_DIR}
 +{{  :et:examples:setup:codeblocks:9_cb_tool.png?400  |}}
 +
 +** HomeLab II (Atmega2561) **
 +  * Homelab 2561
 +  * C:\HomelabCB\Programmer\HL Flash\hlflash.exe
 +  * ${TARGET_OUTPUT_BASENAME}.hex
 +  * ${TARGET_OUTPUT_DIR}
 +{{  :et:examples:setup:codeblocks:9_cb_tool2.png?400  |}}
 +
 +===== Configuração Linux/Ubuntu =====
 +
 +Instalar extras CodeBlocks:
 +  sudo apt-get install codeblocks-contrib
 +
 +Para executar dfu-programmer com privilégios de utilizador normal, é necessário criar ficheiro de regras dentro da directoria udev. Criar ficheiro ruled.d com o seguinte texto:
 +<code>
 +SUBSYSTEM=="usb",ACTION=="add",ATTRS{idVendor}=="03eb",ATTRS{idProduct}=="*",GROUP="plugdev"
 +</code>
 +Também é necessário instalar a biblioteca.
 +Tipicamente as bibliotecas AVR estão localizadas na directoria /usr/lib/avr
 +É necessário privilégios de adeministrador para adicionar uma directoria para a nova biblioteca.
 +
 +Se os repositórios da cadeia de desenvolvimento AVR (AVR Toolchain) não se encontrarem actualizados, poderá receber uma mensagem de erro da função ADC. Para corrigir esse erro é necessário substituir manualmente na directoria avr o ficheiro iox128a1u.h (incluido na biblioteca).
 +
 +Para simplificar a programação convém criar o seguinte script:
 +  sudo nano /usr/bin/homelab-programmer
 +  
 +com o seguinte conteudo:
 +<code>
 +#!/bin/bash
 +dfu-programmer atxmega128a1u erase
 +dfu-programmer atxmega128a1u flash $1
 +dfu-programmer atxmega128a1u start
 +</code>
 +
 +dando-lhe privilégios de execução:
 +  sudo chmod 775 /usr/bin/homelab-programmer
 +
 +Codeblocks //Tools->Configure tools ...//
 +Configurar o programador
 +{{ :et:examples:setup:codeblocks:codeblokcs_programmer_linux.png?400 |}}
 +
 +Adicionar suporte da biblioteca
 +//Settings -> Compiler ...//
 +{{ :et:examples:setup:codeblocks:compiler_path.png?400 |}}
 +
 +{{ :et:examples:setup:codeblocks:linker_path.png?400 |}}
 +
 +
 +===== Criar projecto CodeBlocks =====
 +Ir ao menu //File->New->Project//. Deverá estar seleccionado o projecto de acordo com a geração do HomeLab, configurar como pretendido.
 +
 +Primeiro, escolher um nome e localização do projecto **Evitar o uso de acentos.**
 +{{ :et:examples:setup:codeblocks:10_project1.png?400  |}}
 +De seguida selecionar a directoria de compilação do projecto. É recomendado que não seja alterada.
 +{{ :et:examples:setup:codeblocks:11_project2.png?400  |}}
 +Depois selecione o microcontrolador e frequência de utilização.
 +{{ :et:examples:setup:codeblocks:12_cb_project3.png?400  |}}
 +Em último ligar, deverá configurar a directoria de instalação do //AVR Toolchain//.
 +{{ :et:examples:setup:codeblocks:13_cb_project4.png?400  |}}
 +
 +===== Utilizando CodeBlocks =====
 +Uma vez criado o projecto, o novo projecto aparece na àrvore esquerda com código exemplo. Para compilar premir o butão de engrenagem na barra de atalhos. Se a compilação ocorrer deverá aparecer informação na janela de fundo //Build Log//, contendo uma contagem da memória de programa ou mensagens de erro em caso de falha.
 +
 +{{ :et:examples:setup:codeblocks:14_cb_compile.png?400  |}}
 +Quando carregando o programa para o microcontrolador, no caso do HomeLab III, primeiro deverá ser introduzido para o bootloader prmindo o butão S0 no módulo do controlador e ao mesmo tempo premir o butão de reset para reiniciar. Em versões anteriores do HomeLabs o modo de bootloader não se encontra disponivel. Se todos os drivers se encontrarem instalados (os drivers estão na directoria CodeBlocks / Programmer), então podem ser descarregado o ficheiro hexadeceimal compilado. Para começar o programar, ir ao menu //Tools//
 +
 +{{ :et:examples:setup:codeblocks:15_cb_programming.png?400  |}}
CC Attribution-Share Alike 4.0 International
www.chimeric.de Valid CSS Driven by DokuWiki do yourself a favour and use a real browser - get firefox!! Recent changes RSS feed Valid XHTML 1.0