quinta-feira, junho 22, 2017

Franzininho

O Franzininho é uma placa baseada no ATtiny85 que pode ser programada diretamente da IDE do Arduino.


Do ponto de vista de tecnologia, não temos nada de muito novo: um ATtiny85 com um bootloader que usa o V-USB. O bacana é que o Fábio Souza projetou uma placa face simples e disponibilizou o projeto para quem quiser corroer a sua própria placa e montar. A placa é feita para ser conectada diretamente a uma porta USB.

A placa que eu montei é parte de um "lote comunitário" organizado pelo Fábio. Na montagem eu estranhei um pouco a grossura da placa, mas aí me dei conta que é para encaixar firme na porta USB. Quem corroer uma placa de espessura normal vai ter que colar um pedaço de papelão na ponta para não garantir um bom contato na USB.



Os componentes são comuns, exceto talvez pelo ATtiny85. Dadas as minhas brincadeiras com microcontroladores AVR e V-USB eu tinha tudo em casa. É necessário gravar o bootloader no ATtiny, o que pode ser feito usando um Arduino e as instruções que estão no site Embarcados.

O bootloader, runtime Arduino e driver para Windows podem ser obtidos de outros projetos livres que usam ATtiny85 e V-USB: Arduino Gemma e Digispark. Estes dois modelos são suportados pelas versões mais recentes da IDE do Arduino. Uma diferença entre os dois é que o segundo projeto reconfigura o pino 5 de reset para entrada e saída. Com isto você ganha um pino de E/S a mais, mas precisa desligar e ligar a placa para entrar no bootloader e não conseguirá reprogramar o bootloader com programadores de "baixa tensão" (restaurar a função de reset é tarefa para o meu ATtiny Detonator).



No meu caso, usei um programador USBTinyISP para gravar o bootloader do Arduino Gemma (que vem nas versões mais modernas da IDE do Arduino). Eu liguei direto o USBTinyISP ao conector do Franzininho:

USBTinyISP - Franzininho
     1     - P1
     2     - Vcc
     3     - P2
     4     - P0
     5     - P5
     6     - GND


Os comandos para gravar o firmware e programar os fuses (assumindo que o avr-dude é acessível pelo PATH e que o arquivo hex está no diretório atual) são:

avrdude -c usbtiny -p attiny85 -U flash:w:gemma_v1.hex
avrdude -c usbtiny -p attiny85 -u -U efuse:w:0xFE:m -U hfuse:w:0xD5:m -U lfuse:w:0xF1:m

Feito isto, é hora de espetar o Franzininho em uma porta USB. Na primeira vez, o Windows vai solicitar o driver, que está junto com a IDE do Arduino. Depois é só abrir o exemplo Blink, selecionar Arduino Gemma e ver o LED piscar.

Nenhum comentário: