collapse

* Posts Recentes

LASER M140 por jm_araujo
[24 de Maio de 2022, 17:09]


LLVM in 100 seconds por blabla
[23 de Maio de 2022, 22:54]


Tutorial on How to Make a Text Editor por blabla
[21 de Maio de 2022, 08:33]


3 micro palestras recentes sobre Embedded Rust. por blabla
[20 de Maio de 2022, 18:45]


StringUtils - Easy to use Strings in Rust por blabla
[19 de Maio de 2022, 22:37]


Craftsmanship em pianos e em tudo o resto... por blabla
[15 de Maio de 2022, 17:20]


Um artigo interessante - Building a startup with Rust por blabla
[13 de Maio de 2022, 10:55]


Um ritual de passagem - Fazer um interpretador de LISP por blabla
[13 de Maio de 2022, 09:51]


Cabo espiral por josecarlos
[08 de Maio de 2022, 19:23]


Can Life Really Be Explained By Physics? por blabla
[07 de Maio de 2022, 13:41]

Autor Tópico: Delírios com Arduino  (Lida 955 vezes)

0 Membros e 1 Visitante estão a ver este tópico.

Offline jm_araujo

  • Mini Robot
  • *
  • Mensagens: 2.846
  • NERD!
Delírios com Arduino
« em: 23 de Junho de 2021, 16:02 »
Perdi umas horas com um caso com arduinos que merece ser relatada.

Copiar um projeto Arduino com código no github para um colega que não percebe da coisa - Tudo OK.

Decidi fazer a coisa pequena e bonita, porque me dá gosto. Implica passar de um arduino Uno (GIGANTE) no original para um pro-mini que tinha "em stock". Os que tenho são 3.3V 8Mhz, mas correm bem a 5V se alimentar depois do regulador, e os 8MHz o compilador resolve.
Fios ligados, tudo bonitinho, testes correm bem, vamos lá compilar o código do Github para meter no pro-mini.
Não cabe! Quê?!?! Deixa experimentar num Uno: tudo OK!. O Uno tem 32K vagos, o pro-mini "só" 30k!
Toca a investigar, é do bootloader. O Uno tem optiboot que ocupa 0,5kb, o pro-mini tem um qq que ocupa 2k.
Ok, toca a meter optiboot no pro-mini. O Arduino tem .hex  de todos os bootloaders, deve ser fácil... oops, não tem optiboot para o pro-mini, nem parecido para 8MHz. Não faz mal, tem o código, makefiles e batch, é só correr... ooops, não encontra o "make"?!?! Ok, a última versão do Arduino que tinha o "make" era o 1.0.6, de 2015... saca-se o necessário, e compila-se... ooops, o bootloader ficou com mais de 512bytes?!? pois, não basta o make, tem de ser a toolchain completa que mudaram as otimizações.
Ok, bootloader na mão, como meto isto no pro-micro? Tenho um USB ASP antigo, siga para bingo. NOPE. Instala drivers. NOPE. Se lixe , uso o UNO como ISP ("Arduino as ISP"). Bootloader no pro-micro. Festa!!!
Vamos meter o código: ainda não cabe??? Pois, tenho de mudar o boards.txt. Já cabe!!! Carrega lá o código. NOPE. GRRRRRR
Não consigo falar com o pro-micro para o programar. Pois, que fez o makefile do optiboot esqueceu-se que a 8MHz não se consegue falar a 115200, tem de ser 57600. Novo .hex, nova programação de bootloader, corrigir boards.txt e meter o projeto...

FUNCIONA!
Arduino torna tudo tão fácil.... >:( >:( >:( >:(

(perdi umas 6 horas com isto, e poupei os detalhes de ligar e desligar fios 30 vezes, e pesquisas e tentativas-erro para dar com o que se estava a passar)


« Última modificação: 23 de Junho de 2021, 16:08 por jm_araujo »

Offline almamater

  • Mini Robot
  • *
  • Mensagens: 1.840
    • GrcByte - Projectos
Re: Delírios com Arduino
« Responder #1 em: 28 de Junho de 2021, 23:06 »
 ;D ;D Muito bom! e que grande trabalhão.. mas ficou a funcionar!

Offline dropes

  • Mini Robot
  • *
  • Mensagens: 2.092
Re: Delírios com Arduino
« Responder #2 em: 01 de Agosto de 2021, 13:49 »
Mudar de plataformas nunca funciona há 1ª
Aposto que foram umas 6 horas bem passadas  ;D