[Butia-devel-list] Placa Butiá basada en Arduino Leonardo (usando el micro ATmega 32u4)
Federico Andrade - InCo
fandrade en fing.edu.uy
Sab Abr 6 15:41:41 UYT 2013
Nop, he grabado el mismo bootloader para otros micros atmega corren de una.
Esta es la salida dp de haber grabado el bootloader:
fede en leni:~$ avrdude -p m32U4 -P /dev/ttyUSB0 -c avrisp -b 19200 -U
flash:w:arduino/arduino/hardware/arduino/bootloaders/caterina/Caterina-Leonardo.hex
avrdude: AVR device initialized and ready to accept instructions
Reading | ################################################## | 100% 0.02s
avrdude: Device signature = 0x1e9587
avrdude: NOTE: FLASH memory has been specified, an erase cycle will be performed
To disable this feature, specify the -D option.
avrdude: erasing chip
avrdude: reading input file
"arduino/arduino/hardware/arduino/bootloaders/caterina/Caterina-Leonardo.hex"
avrdude: input file
arduino/arduino/hardware/arduino/bootloaders/caterina/Caterina-Leonardo.hex
auto detected as Intel Hex
avrdude: writing flash (32722 bytes):
Writing | ################################################## | 100% 9.66s
avrdude: 32722 bytes of flash written
avrdude: verifying flash memory against
arduino/arduino/hardware/arduino/bootloaders/caterina/Caterina-Leonardo.hex:
avrdude: load data flash data from input file
arduino/arduino/hardware/arduino/bootloaders/caterina/Caterina-Leonardo.hex:
avrdude: input file
arduino/arduino/hardware/arduino/bootloaders/caterina/Caterina-Leonardo.hex
auto detected as Intel Hex
avrdude: input file
arduino/arduino/hardware/arduino/bootloaders/caterina/Caterina-Leonardo.hex
contains 32722 bytes
avrdude: reading on-chip flash data:
Reading | ################################################## | 100% 19.13s
avrdude: verifying ...
avrdude: 32722 bytes of flash verified
avrdude: safemode: Fuses OK
avrdude done. Thank you.
fede en leni:~$
Después hay que setearle los fuses, y la salida fue la siguiente:
fede en leni:~$ avrdude -p m32u4 -P /dev/ttyUSB0 -c avrisp -b 19200 -nv
avrdude: Version 5.11.1, compiled on Oct 30 2011 at 10:41:10
Copyright (c) 2000-2005 Brian Dean, http://www.bdmicro.com/
Copyright (c) 2007-2009 Joerg Wunsch
System wide configuration file is "/etc/avrdude.conf"
User configuration file is "/home/fede/.avrduderc"
User configuration file does not exist or is not a regular
file, skipping
Using Port : /dev/ttyUSB0
Using Programmer : avrisp
Overriding Baud Rate : 19200
AVR Part : ATmega32U4
Chip Erase delay : 9000 us
PAGEL : PD7
BS2 : PA0
RESET disposition : dedicated
RETRY pulse : SCK
serial program mode : yes
parallel program mode : yes
Timeout : 200
StabDelay : 100
CmdexeDelay : 25
SyncLoops : 32
ByteDelay : 0
PollIndex : 3
PollValue : 0x53
Memory Detail :
Block Poll Page
Polled
Memory Type Mode Delay Size Indx Paged Size Size #Pages
MinW MaxW ReadBack
----------- ---- ----- ----- ---- ------ ------ ---- ------
----- ----- ---------
eeprom 65 10 8 0 no 1024 8 0
9000 9000 0x00 0x00
flash 65 6 128 0 yes 32768 128 256
4500 4500 0x00 0x00
lfuse 0 0 0 0 no 1 0 0
9000 9000 0x00 0x00
hfuse 0 0 0 0 no 1 0 0
9000 9000 0x00 0x00
efuse 0 0 0 0 no 1 0 0
9000 9000 0x00 0x00
lock 0 0 0 0 no 1 0 0
9000 9000 0x00 0x00
calibration 0 0 0 0 no 1 0 0
0 0 0x00 0x00
signature 0 0 0 0 no 3 0 0
0 0 0x00 0x00
Programmer Type : STK500
Description : Atmel AVR ISP
Hardware Version: 2
Firmware Version: 1.18
Topcard : Unknown
Vtarget : 0.0 V
Varef : 0.0 V
Oscillator : Off
SCK period : 0.1 us
avrdude: AVR device initialized and ready to accept instructions
Reading | ################################################## | 100% 0.02s
avrdude: Device signature = 0x1e9587
avrdude: safemode: lfuse reads as E0
avrdude: safemode: hfuse reads as D8
avrdude: safemode: efuse reads as CB
avrdude: safemode: lfuse reads as E0
avrdude: safemode: hfuse reads as D8
avrdude: safemode: efuse reads as CB
avrdude: safemode: Fuses OK
avrdude done. Thank you.
fede en leni:~$
Esta es la salida dp de haber grabado el bootload. Descubrí por ahi que el
bootloader cuando está funcionando prende y apaga un led en una de las
patas del micro, entonces le puse el led y efectivamente le mismo está
corriendo.
Sin embargo sigue fallando la comuniación usb entre la placa y el micro.
Acá está la prueba
http://www.youtube.com/watch?v=t-e35YtVw-g&feature=youtu.be
Alan, eso que me pusiste por ahi...no lo puedo hacer, ni siendo root..
tenés la fuente?
sabés bien que es lo que genera?
2013/4/5 Andres Aguirre <aaguirre en fing.edu.uy>
> y el bootloader no esperara que toques un botón al iniciar para arrancar a
> ejecutar ?
> generalmente el código de los bootloader es:
>
> if(condición_ejecución)
> //código del bootloader
> else
> //salto a posición donde se encuentra el código del usuario
>
> slaudos
>
>
>
> 2013/4/4 Federico Andrade - InCo <fandrade en fing.edu.uy>
>
>> En el micro grabé el bootloader que viene con la placa Arduino Leonardo.
>> Exactamente el mismo, además fueron seteados los fuses tal cual la placa
>> Arduino Leonardo (que tiene el mismo micro). Al final del proceso de
>> grabación, el programita que graba, leé la memoria y hace un checksum de lo
>> que leyo comparado con lo que queria grabar y eso dio bien, o sea que estoy
>> bastante seguro que el checksum esta ok.
>>
>> Creo que el error viene por otro lado :S
>>
>>
>> 2013/4/4 Andres Aguirre <aaguirre en fing.edu.uy>
>>
>>>
>>> 2013/4/4 Federico Andrade - InCo <fandrade en fing.edu.uy>
>>>
>>>> device descriptor read/64, error -32
>>>
>>>
>>> primero que nada, que tiene dentro el micro? viene de fábrica o le
>>> grabaste algo??
>>> Cuando uno conecta algo al USB se da un proceso llamado enumeración
>>> entre el dispositivo y el host, es básicamente un protocolo que permite que
>>> el sistema operativo descubra que tipo de dispositivo es y asigne recursos
>>> para el
>>> http://support.atmel.no/knowledgebase/avr32studiohelp/AT32UC3A_Software_Framework/DRIVERS/USBB/EXAMPLES/ENUM_EXAMPLE_FREERTOS/DOC/html/usb_host_task.jpg.
>>> En este protocolo el device intercambia descriptores con el host, esto
>>> tiene que estar implementado por tu micro por vos o por una biblioteca del
>>> fabricante que implemente el stack usb. Hay muchas cosas interesantes acá
>>> que uno puede especificar que está bueno para charlar más adelante.
>>> Asegurate que tengas los bits adecuados en tu micro.
>>> saludos
>>> andres
>>>
>>>
>>
>
------------ próxima parte ------------
Se ha borrado un adjunto en formato HTML...
URL: https://www.fing.edu.uy/pipermail/butia-devel-l/attachments/20130406/234febc9/attachment.html
Más información sobre la lista de distribución Butia-devel-l