Disassembler Arduino

Software para disassembler do arquivo *.elf do Arduino.

Neste post estarei demonstrando como utilizar uma pequena ferramenta que estou desenvolvendo, para auxiliar nossos estudos, otimizações e/ou debug de possíveis problemas durante o desenvolvimento do seu software para a plataforma Arduino.

Creio que muitos que utilizam a Ide para o Arduino, já sentiram falta de ver o código que é gerado em assembly. Não havendo até o momento uma interface que facilite a visualização destas informações.
Para os que não sabem, é possível gerar este código através de algumas linhas de comando em prompt, onde são passados alguns parâmetros para os arquivos 'avr-objdump.exe' (Plataforma AVR), ou 'pic32-objdump.exe' (Plataforma PIC32). Sendo que estes arquivos já estão contidos nos diretórios do compilador para a Ide do Arduino.
Vale lembrar, que não estamos fazendo 'engenharia reversa'. Estamos na verdade utilizando as ferramentas que já estão disponíveis para obter algumas informações com maior facilidade. Onde não é preciso ficar digitando nome de arquivos e diretórios "imensos" à cada vez que se deseja utilizar destas ferramentas.
É possível também utilizar-se das variáveis de ambiente, acrescentando a localização destas ferramentas no 'PATH" do windows, mas este não é o foco do post no momento.
Pensando na facilidade de uso, desenvolvi um software que é apenas uma interface amigável para ver algumas informações de forma rápida. Sendo possível salvar o arquivo e utilizá-lo em outras ferramentas de edição.

Segue um pequeno tutorial para uso do software Disassembler_Arduino_Tool.

1) Faça o download do arquivo zipado do software.  [ DOWNLOAD ]

2) Execute o arquivo 'Disassembler_Arduino_Tool.exe' .



3) Escolha a plataforma para qual foi compilado o seu projeto, sendo ele para o AVR ou PIC32.



4) Depois escolha o tipo de informação que gostaria de obter do seu código compilado.

Fica uma pequena observação: efetuei os testes em todos os itens, e observei que alguns podem não funcionar para a plataforma AVR, como alguns outros para a plataforma PIC32. Isso pode acontecer devido à versão dos arquivos 'avr-objdump.exe' e 'pic32-objdump.exe'.
Caso alguém encontre algum bug relacionado à isto, entre em contato conosco, e o quanto antes obtermos informações à respeito, estaremos entrando em contato ou criando um novo post com as devidas atualizações.



5) Abra a janela de abertura de arquivos:  File -> Open *.elf .





6) Navegue até o diretório onde se encontra o arquivo *.elf. Selecione o mesmo e confirme.

Caso não encontrarem o arquivo *.elf , é possível através da Ide obter a localização do arquivo, que geralmente se encontra em uma pasta temporária de trabalho no diretório de usuário no windows.



7) Caso esteja tudo correto, deverá aparecer a janela com as informações requeridas sobre o arquivo.

Lembrando que deve ter sido escolhido corretamente a plataforma para qual foi efetuada a compilação do projeto.



Com isto encerro o pequeno tutorial sobre o software. Espero que seja de grande ajuda, uma vez que o foco é facilitar a vida de qualquer desenvolvedor.
Aguardo comentários e sugestões para a melhoria desta pequena ferramenta.

Até a próxima.

[ DOWNLOAD ]


4 comentários:

  1. Olá, dessa forma consigo acessar onde fica gravado as informações vid e pid? Estou desenvolvendo um projeto baseado no Arduino e gostaria de alterar o nome que aparece ao conectar no computador.

    ResponderExcluir
  2. boa noite é possível no Arduíno uno queimar apenas 2 portas de saída digital ?não tenho Código fonte e o passo de duas portas não funciona tem como testar I/o sem apagar código fonte.agradeço antecipadamente a informação

    ResponderExcluir
  3. Você é muito corajosa para me xingar em grupo de WhatsApp, todavia me ver pessoalmente na faculdade e não tem coragem de falar uma palavra comigo. Você não vai me calar, eu sei muito que você é desleal com os outros.

    A sua namorada nem é advogada, a sua namorada é estagiária de direito. Sim, eu já descobri quem é a sua namorada.

    Pode falar para a sua namorada, que aqui na minha rua tem uma boca de fumo, que aqui na minha rua funciona um ferro velho clandestino, que fica fornecendo material para os traficantes fazerem barricada.

    Durante as férias, os bandidos fizeram uma festa, deixaram a música ligada no último volume a madrugada inteira, os traficantes só desligaram a música depois que o dia amanheceu.

    Pode falar para sua namorada que é estagiária de direito, que aqui na minha rua quem manda é o crime organizado.

    Você ainda participou do roubo dos produtos do CAFAR.

    Você roubou os produtos do CAFAR e continua fazendo IC no LAPRONEB como se nada tivesse acontecido.

    Você ainda faz parte do CLAA do AFIRMASUS, será que você vai roubar os produtos do CLAA do AFIRMASUS, igual você roubou os produtos do CAFAR?

    Depois que você roubar os produtos do CLAA do AFIRMASUS, talvez você seja expulsa igual você foi expulsa do CAFAR por ter roubado os produtos junto com as suas amigas.

    Você é a prova que vale a pena agir de forma desonesta, já que fica impune.

    Você ainda foi no 10th Brazilian Conference on Natural Products (BCNP) em Minas Gerais, eu nunca participei de um congresso e eu nunca pus os pés em Minas Gerais.

    Eu contei a Maria Isabel quem você é de verdade e o que você fez comigo, eu mandei que ela te expulsasse do LAPRONEB, a Maria Isabel falou que você iria me processar e que eu estava fazendo ACUSAÇÕES LEVIANAS.

    PQP, eu peço para Maria Isabel fazer algo para mim e ela vem me ameaçando de processo criminal, não é porque a Maria Isabel é professora da UFRJ que ela pode ficar ameaçando os outros.

    Eu estou esperando você me processar, vamos ver se você tem a capacidade de fazer isso. Chama à polícia, eu estou esperando a polícia chegar. Na cadeia tem bandido, na cadeia tem traficante, o que não tem na cadeia é você, a Natalie Tavares Delgado. Eu espero que eu morra na cadeia, no cemitério tem espaço para mim, no cemitério, eu vou ser aceito, o único lugar que não tem espaço para mim, é nos laboratório de química da UFRJ. No cemitério não existe preconceito, discriminação e nem exclusão, o único lugar que existe essas coisas é dentro da UFRJ. No cemitério, eu vou ser tratado feito gente e não feito bicho, igual eu sou tratado pelos alunos do curso de farmácia da UFRJ. A vida é boa para quem faz iniciação científica, para quem não faz só resta à morte, eu não vou perder a minha bolsa de iniciação científica.


    ResponderExcluir