LusoRobótica - Robótica em Português

Sistemas específicos => Arduino / AVR => Tópico iniciado por: Kristey em 25 de Dezembro de 2014, 19:21

Título: Programador USBASP - Niveis de tensão
Enviado por: Kristey em 25 de Dezembro de 2014, 19:21
Boa tarde
Para programar uns arduinos pro (com o bootloader de 3.3V), não consigo usar a minha FTDI de 5V.
Dá uns erros de sinc (supostamente não deveria dar também?)

Por isso lembrei-me do programador USBASP que tenho aqui.
Contudo não sei como é que este funciona a nível das tensões a aplicar ao atmega.
Vai funcionar? E não estarei a estragar o mesmo?
Título: Re: Programador USBASP - Niveis de tenção
Enviado por: LuísR.A. em 25 de Dezembro de 2014, 19:23
Estragar não estragas. O arduino funciona a 5V directos não é (ou as tuas portas USB dão 12v)? Se tiver regulador de tensão de 3.3V então ai não há problema.
Tens é de ter cuidado se tens mais algo ligado lá e não suporta 5V.

Manual:
http://www.hobbyking.com/hobbyking/store/uploads/790901382X365809X5.pdf (http://www.hobbyking.com/hobbyking/store/uploads/790901382X365809X5.pdf)

Título: Re: Programador USBASP - Niveis de tensão
Enviado por: Kristey em 25 de Dezembro de 2014, 19:34
Sim o arduino funciona a 5V normalmente.
Eu acho estranho é o porque de ele não programar com a FTDI a 5V. Supostamente desde que fosse mais alto que 3.3V é 1, e 0V é 0.

Pelo menos era essa a ideia que eu tinha.
Título: Re: Programador USBASP - Niveis de tensão
Enviado por: LuísR.A. em 25 de Dezembro de 2014, 19:41
Ele liga sequer? Pode não ser mesmo uma FTDI.
Tem regulador? O Arduino tem de comunicar com a FTDI e se tiver regulador de 3.3V a FTDI pode não reconhecer os seu sinais
Título: Re: Programador USBASP - Niveis de tensão
Enviado por: senso em 25 de Dezembro de 2014, 21:10
"FTDI" fake inutilizado por drivers recentes?
Era a minha primeira aposta.
Título: Re: Programador USBASP - Niveis de tensão
Enviado por: Kristey em 26 de Dezembro de 2014, 01:47
Senso ela funciona quando estou a programar o arduino pro a 16Mhz (5V), programa bem tudo impecável.
Se meto o bootloader de 8Mhz (supostamente funciona a 3.3V), vou para programar e nada :/

Basicamente eu so queria tentar arranjar maneira de programar os meus PRO's tendo eles o bootloader de 8Mhz, mas sem ter de comprar material novo. E pensei que o meu programador USBASP fosse fazer o serviço. Mas depois lembrei-me que como o bootloader é diferente e a FTDI nao gostou, não sei se o programador "vai gostar".
Título: Re: Programador USBASP - Niveis de tensão
Enviado por: senso em 26 de Dezembro de 2014, 02:00
Os 8Mhz tanto funciona a 3.3 como a 5v, como a 2.x v 1.8v penso que 8Mhz é demasiado rápido para estar dentro do SOA do atmega.
Dois problemas que me vêm á cabeça, o fuse do brown-out estar programado para 4.3v e como alimentas a 3.3v o chip nunca acorda(verificar isso numa calculadora de fuses), ou então, devido á fragmentação estupida e 50 standards dentro do mundo Arduino, um bootloader funcionar a 115200 bps, e o outro a 57600bps, e estares a usar a velocidade errada no avrdude.
De notar que quando metes arduino como programador no avrdude(opção -p) nem sempre ele usa a configuração correcta exactamente devido ás diferenças que existem na velocidade das portas serial.

Outra coisa a ter em mente é como é que é feito o reset do atmega, se usa um condensador pendurado entre o DTR e o /RESET, se tem de ser feito de forma manual usando um botão, quando usas arduino como programador no avrdude, ele pulsa o DTR e outro pino (RTS se não estou em erro), mas lá está, é algo muito fragmentado e relativo á versão de IDE, de avrdude que está a ser usado, que config files estão pendurados no avrdude, enfim uma confusão desnecessária.

Portanto, a rever:
Fuses
Baud-rate
Reset, automático ou manual