$$HEADER$$

Instalando eLua nas CPUs AVR32 CPUs da Atmel

AVR32 é uma família de CPUs de 32 bits de alta performance da Atmel. Foram construídas visando a concorrência direta no mercado com a implementação da ARM, e oferece uma performance muito boa (91 MIPS com 66MHz) e fonte de energia eficiente (1.3mW/MHz). A Atmel alega que o seu núcleo AVR32 supera o ARMv5 (tanto em modo ARM como em Thumb) em termos de desempenho e tamanho do código. É uma arquitetura proprietária (só implementada pela Atmel), mas tem um pacote de software de apoio muito bom, e um conjunto de ferramentas de código aberto baseado em GCC, o que a faz ser uma candidata ideal para se usar eLua com uma CPU não-ARM. Atmel vende também várias placas de desenvolvimento com base em suas CPUs AVR23. A utilizada para eLua é a placa ATEVK1100, construída em torno do MCU AT32UC3A0512 AVR32 (512k Flash interno/64k RAM interno). É uma placa muito poderosa, com (entre outras coisas) 32 MBytes de memória SDRAM externa, o que é mais do que suficiente para rodar qualquer programa eLua que eu possa imaginar:).

Pré-requisitos

Antes de você usar eLua com a CPU AT32UC3A0512, certifique-se que:

Instalando FLIP no Linux Ubuntu

Siga os passos abaixo para instalar o FLIP no Linux:

  1. baixe a versão do FLIP para Linux da página da Atmel. Salve-o (ou mova-o depois) para a pasta /usr/local/ (para isso é necessário privilégios de superusuário). No momento da elaboração deste tutorial, a última versão do FLIP é a 3.2.1, portanto vamos utilizar aqui esta versão.
  2. descompacte o arquivo FLIP:
    $ cd /usr/local
    $ sudo tar xvzf flip_linux_3-2-1.tgz
    Isto criará o diretório /usr/local/flip.3.2.1.
  3. é necessário instalar o OpenJDK caso ele não esteja instalado:
    $ sudo apt-get install openjdk-6-jre
  4. edite /usr/local/flip.3.2.1/bin/batchisp3.sh e inclua as duas linhas em negrito no inicio do arquivo:
    #!/bin/bash -f
    
    export JAVA_HOME=/usr/lib/jvm/java-6-openjdk/jre/
    export FLIP_HOME=/usr/local/flip.3.2.1/bin/
    
    if [ "$FLIP_HOME" = "" ]; then
  5. edite o arquivo binário /usr/local/flip.3.2.1/libatlibusbdfu.so. Isto é necessário, porque o programa FLIP vem compilado para o RedHat por default, e o Ubuntu possui algumas arquivos de sua instalação localizados em diretórios diferentes . Veja este tópico para mais detalhes. Tudo que você tem a fazer, é alterar todas as referências do string /sys/bus/usb contidas no arquivo libatlibusbdfu.so para /dev/bus/usb.
  6. inclua o diretório FLIP no seu PATH:
    $ export PATH=/usr/local/flip.3.2.1/bin:$PATH
  7. FLIP interfere com um programa que vem pré-instalado no sistema Ubuntu, chamado brltty. Este programa é destinado a ajudar os deficientes visuais, por isso, se você não for um deles, basta removê-lo (como parece também interferir com uma série de outros dispositivos USB):
    $ sudo apt-get remove brltty

Gravando eLua na placa EVK1100

Após a instalação do FLIP e de tê-lo incluído no seu PATH, gravar o arquivo imagem de eLua deve ser bem fácil:

Terminou, o arquivo imagem de eLua está finalmente instalado na sua placa ATEVK1100.

$$FOOTER$$