Reduzir o tamanho do gerenciador de inicialização do Arduino?

9

Existe alguma maneira de reduzir o tamanho do gerenciador de inicialização do Arduino pré- carregado , para economizar alguns bytes para o programa?

Powtac
fonte
você quis dizer o carregador de inicialização ou as bibliotecas que acompanham o IDE do Arduino?
Se você quer dizer que deseja usar o mesmo firmware, então não. Se você deseja usar outro carregador de inicialização, ou nenhum carregador de inicialização, então há uma série de perguntas sobre isso.
polar
11
Você solicita o Arduino, mas o link que você forneceu é o chip USB to Serial na placa, não o processador principal. Então, você pode esclarecer do que está tentando reduzir o tamanho?
precisa saber é o seguinte
4
Para as pessoas que fecham isso como fora de tópico, se você deseja alterar o faq para remover a referência ao firmware , sugiro que você inicie uma discussão sobre Meta da Engenharia Elétrica .
Mark Booth
2
Obrigado @DaveTweed - mas poderia ter ajudado o powtac se você mencionasse isso antes, em vez de votar para fechar sem comentar. Se uma pergunta estiver abaixo dos padrões de qualidade, o questionador deve ser incentivado a melhorá-la, em vez de apenas fechar. É por isso que os [ask], [answer], [about]e [faq]opções de marcação comentário ligação são tão úteis. Eles permitem que você aponte as pessoas de maneira muito rápida e fácil, na direção certa, ou seja, Como perguntar , Como responder , tour e perguntas frequentes .
Mark Booth

Respostas:

9

Existe um gerenciador de inicialização / firmware de código aberto e de código aberto desenvolvido com código aberto OptiBoot , que pode ser interessante. Do site deles:

O Optiboot é um quarto do tamanho do carregador de inicialização padrão, liberando 1,5k de espaço extra.

Agora, muitas placas Arduino / clone são fornecidas com o OptiBoot em vez do firmware clássico do Arduino, embora não necessariamente com a versão mais recente e melhor do OptiBoot. As placas existentes também podem ser atualizadas com OptiBoot, se desejado, os procedimentos são documentados no site vinculado.

Também vale a pena dar uma olhada nos vários aprimoramentos do gerenciador de inicialização no site da AdaFruit . Não tendo experiência pessoal com isso, no entanto, não posso dizer muito sobre o AdaBoot.

Anindo Ghosh
fonte
Eu tenho usado o gerenciador de inicialização AdaFruit. Muito feliz com isso, e o fato de estar em C me permite modificá-lo mais facilmente para atender às minhas necessidades.
angelatlarge
6

É possível ignorar o firmware do Arduino (carregador de inicialização) piscando seus programas com outro programador (por exemplo, o programador USBtinyISP )

Até onde eu sei, você ainda pode usar o Arduino IDE para escrever seu programa. Mas você precisa instalar um "plugin" para poder atualizar seu código diretamente para o quadro que cria programas menores.

Mas:

Você não poderá piscar usando USB. Você precisa atualizar novamente o gerenciador de inicialização do Arduino usando o USBtinyISP. (para mim funcionou muito bem e não tive nenhum problema)

espero que ajude

Anindo Ghosh
fonte
O "Você não será capaz de flash usando USB" comentário é um pouco enganador: USBtinyISP funciona através de USB, então tecnicamente ele está piscando através de USB
angelatlarge